public static Keyword computationSpecialist(ControlFrame frame, Keyword lastmove) {
    { Proposition proposition = frame.proposition;
      Stella_Object value = Proposition.computeRelationValue(proposition, null, false);
      BooleanWrapper successP = null;

      if (value == null) {
        return (Logic.KWD_FAILURE);
      }
      if (NamedDescription.functionDescriptionP(Logic.getDescription(((Surrogate)(proposition.operator))))) {
        successP = (Logic.bindArgumentToValueP((proposition.arguments.theArray)[(proposition.arguments.length() - 1)], value, true) ? Stella.TRUE_WRAPPER : Stella.FALSE_WRAPPER);
      }
      else {
        successP = ((BooleanWrapper)(value));
      }
      return (Logic.selectTestResult(BooleanWrapper.coerceWrappedBooleanToBoolean(successP), true, frame));
    }
  }