public static Stella_Object smartUpdateProposition(Stella_Object tree, Keyword updatemode) {
    { Cons propositions = Logic.updateProposition(tree, updatemode);

      if ((propositions != null) &&
          (propositions.rest == Stella.NIL)) {
        return (((Proposition)(propositions.value)));
      }
      else {
        return (propositions);
      }
    }
  }