public static void normalizeDescriptiveProposition(Proposition self, Vector iovariables, Keyword kind) {
    { Object old$Evaluationmode$000 = Logic.$EVALUATIONMODE$.get();

      try {
        Native.setSpecial(Logic.$EVALUATIONMODE$, Logic.KWD_DESCRIPTION);
        try {
          Proposition.equateTopLevelEquivalences(self, iovariables, kind);
        } catch (Clash e) {
          Stella.STANDARD_ERROR.nativeStream.println(Stella.exceptionMessage(e));
        }
        Proposition.tightenArgumentBindings(self, iovariables);
        Proposition.simplifyProposition(self);
        Logic.collapseValueOfChainsForIoVariables(iovariables);

      } finally {
        Logic.$EVALUATIONMODE$.set(old$Evaluationmode$000);
      }
    }
  }