ubc.cs.JLog.Builtins
Class jIsReal

java.lang.Object
  extended by ubc.cs.JLog.Foundation.jType
      extended by ubc.cs.JLog.Terms.jTerm
          extended by ubc.cs.JLog.Terms.iPredicate
              extended by ubc.cs.JLog.Terms.jBuiltinPredicate
                  extended by ubc.cs.JLog.Terms.jUnaryBuiltinPredicate
                      extended by ubc.cs.JLog.Builtins.jUnaryArithmetic
                          extended by ubc.cs.JLog.Builtins.jIsReal
All Implemented Interfaces:
iArithmetic, iType, iUnifiable, iConsultable, iName, iNameArity, iTerm, iValue

public class jIsReal
extends jUnaryArithmetic


Field Summary
 
Fields inherited from class ubc.cs.JLog.Terms.jUnaryBuiltinPredicate
rhs
 
Fields inherited from class ubc.cs.JLog.Foundation.jType
type
 
Fields inherited from interface ubc.cs.JLog.Builtins.iArithmetic
MAX
 
Fields inherited from interface ubc.cs.JLog.Terms.iTerm
EQUAL, GREATER_THAN, LESS_THAN
 
Fields inherited from interface ubc.cs.JLog.Foundation.iType
TYPE_ARITHMETIC, TYPE_ATOM, TYPE_BUILTINPREDICATE, TYPE_COMMAND, TYPE_COMPARE, TYPE_COMPOUND, TYPE_CONS, TYPE_IF, TYPE_INTEGER, TYPE_LIST, TYPE_NULLLIST, TYPE_NUMERICCOMPARE, TYPE_OBJECT, TYPE_OPERATOR, TYPE_OR, TYPE_ORPREDICATE, TYPE_PREDICATE, TYPE_PREDICATETERMS, TYPE_REAL, TYPE_TYPE, TYPE_UNARYARITHMETIC, TYPE_UNARYOPERATOR, TYPE_UNDEFINED, TYPE_VARIABLE
 
Constructor Summary
jIsReal(jTerm r)
           
 
Method Summary
 void addGoals(jGoal g, iGoalStack goals)
          Arithmetics are intended as expressions for is, if used a predicate they fail.
 void addGoals(jGoal g, jVariable[] vars, iGoalStack goals)
          Arithmetics are intended as expressions for is, if used a predicate they fail.
protected  jUnaryBuiltinPredicate duplicate(jTerm r)
           
 java.lang.String getName()
          Returns the name of this instance.
 jTerm getValue()
          Return the value of this object after.
protected  int operatorInt(int r)
          Perform the integer operations specified by this instance on the given integer, and returns the integer result.
protected  float operatorReal(float r)
          Perform the float operations specified by this instance on the given float, and returns the float result.
 boolean prove(jUnaryArithmeticGoal ag)
          Some arithmetics may need to do double duty as istype predicates, so they can override this.
 
Methods inherited from class ubc.cs.JLog.Builtins.jUnaryArithmetic
getPriority, toString
 
Methods inherited from class ubc.cs.JLog.Terms.jUnaryBuiltinPredicate
compareArguments, consult, consultReset, copy, duplicate, enumerateVariables, equivalenceArguments, getArguments, getArity, getRHS, isConsultNeeded, prove, registerUnboundVariables, registerVariables, unifyArguments
 
Methods inherited from class ubc.cs.JLog.Terms.jBuiltinPredicate
equivalence, unify
 
Methods inherited from class ubc.cs.JLog.Terms.iPredicate
compare
 
Methods inherited from class ubc.cs.JLog.Terms.jTerm
compare, copy, getTerm, requiresCompleteVariableState, toString
 
Methods inherited from class ubc.cs.JLog.Foundation.jType
getType, objectToString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

jIsReal

public jIsReal(jTerm r)
Method Detail

getName

public java.lang.String getName()
Description copied from interface: iName
Returns the name of this instance.

Specified by:
getName in interface iName
Specified by:
getName in interface iTerm
Overrides:
getName in class jTerm
Returns:
String containing name of this instance.

getValue

public jTerm getValue()
Description copied from interface: iValue
Return the value of this object after.

Specified by:
getValue in interface iTerm
Specified by:
getValue in interface iValue
Overrides:
getValue in class jUnaryArithmetic
Returns:
jTerm which represents the evaluated value of this instance, or the value bound to this instance, in the case of a variable.

duplicate

protected jUnaryBuiltinPredicate duplicate(jTerm r)
Specified by:
duplicate in class jUnaryBuiltinPredicate

operatorInt

protected int operatorInt(int r)
Description copied from class: jUnaryArithmetic
Perform the integer operations specified by this instance on the given integer, and returns the integer result.

Specified by:
operatorInt in class jUnaryArithmetic
Parameters:
r - The operand.
Returns:
The result of op r where op is specified by this instance.

operatorReal

protected float operatorReal(float r)
Description copied from class: jUnaryArithmetic
Perform the float operations specified by this instance on the given float, and returns the float result.

Specified by:
operatorReal in class jUnaryArithmetic
Parameters:
r - The operand.
Returns:
The result of op r where op is specified by this instance.

prove

public boolean prove(jUnaryArithmeticGoal ag)
Description copied from class: jUnaryArithmetic
Some arithmetics may need to do double duty as istype predicates, so they can override this.

Overrides:
prove in class jUnaryArithmetic

addGoals

public void addGoals(jGoal g,
                     jVariable[] vars,
                     iGoalStack goals)
Description copied from class: jUnaryArithmetic
Arithmetics are intended as expressions for is, if used a predicate they fail.

Overrides:
addGoals in class jUnaryArithmetic
Parameters:
g - The super-goal jGoal for the sub-goal that this function will add.
vars - The vector of duplicate variables produced from the previous call to registerVariables. Needed for call to duplicate.
goals - The iGoalStack to add the goal to.

addGoals

public void addGoals(jGoal g,
                     iGoalStack goals)
Description copied from class: jUnaryArithmetic
Arithmetics are intended as expressions for is, if used a predicate they fail.

Overrides:
addGoals in class jUnaryArithmetic
Parameters:
g - The super-goal jGoal for the sub-goal that this function will add.
goals - The iGoalStack to add the goal to.