ubc.cs.JLog.Builtins.Goals
Class jRetractGoal
java.lang.Object
ubc.cs.JLog.Foundation.jGoal
ubc.cs.JLog.Builtins.Goals.jRetractGoal
- All Implemented Interfaces:
- iName, iNameArity
public class jRetractGoal
- extends jGoal
Fields inherited from class ubc.cs.JLog.Foundation.jGoal |
next |
Method Summary |
int |
getArity()
Returns the arity of this instance. |
java.lang.String |
getName()
Returns the name of this instance. |
void |
internal_restore(iGoalStack goals)
Combines internal_remove with a full restart and resoration of
any previous variable state. |
boolean |
prove(iGoalStack goals,
iGoalStack proved)
Attempt to prove the goal represented by this jGoal . |
boolean |
retry(iGoalStack goals,
iGoalStack proved)
Attempt to prove the goal represented by this jGoal . |
java.lang.String |
toString()
|
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
retract
protected jRetract retract
term
public jTerm term
unified
public jUnifiedVector unified
jRetractGoal
public jRetractGoal(jRetract r,
jTerm t)
prove
public boolean prove(iGoalStack goals,
iGoalStack proved)
- Description copied from class:
jGoal
- Attempt to prove the goal represented by this
jGoal
.
Goal must not be on either stack to prove (pop off goals stack before prove call).
Goal must place itself on the appropriate stack before returning.
proved
stack if 'proved', goals
stack otherwise.
Since proved doesn't pop the stack we don't need a try/catch block.
Must be called at least once before calling retry
.
- Specified by:
prove
in class jGoal
- Parameters:
goals
- iGoalStack
containing goals yet to be proved.proved
- iGoalStack
containing evaluated goals (goals
that may already be proved, or awaiting their child goals
to be proved).
- Returns:
boolean
is true if this goal ended up on
proved
, false otherwise.
retry
public boolean retry(iGoalStack goals,
iGoalStack proved)
- Description copied from class:
jGoal
- Attempt to prove the goal represented by this
jGoal
.
Goal must not be on either stack to retry (pop off proved stack before retry call).
Goal must place itself on the goal stack, and normally need not pop either stack.
Since retry doesn't pop the stack we don't need a try/catch block.
- Specified by:
retry
in class jGoal
- Parameters:
goals
- iGoalStack
containing goals yet to be proved.proved
- iGoalStack
containing evaluated goals (goals
that may already be proved, or awaiting their child goals
to be proved).
- Returns:
boolean
is true if the prover should attempt
a prove on this goal, false otherwise.
internal_restore
public void internal_restore(iGoalStack goals)
- Description copied from class:
jGoal
- Combines
internal_remove
with a full restart and resoration of
any previous variable state. May be called by other goals, such as a
jCutGoal
. this is still located on proved stack.
- Overrides:
internal_restore
in class jGoal
- Parameters:
goals
- iGoalStack
containing goals yet to be proved.
getName
public java.lang.String getName()
- Description copied from interface:
iName
- Returns the name of this instance.
- Returns:
String
containing name of this instance.
getArity
public int getArity()
- Description copied from interface:
iNameArity
- Returns the arity of this instance.
- Returns:
int
whose value is the arity of this instance.
toString
public java.lang.String toString()
- Overrides:
toString
in class java.lang.Object