jtp.frame
Class HoldsReasoner
java.lang.Object
|
+--jtp.frame.HoldsReasoner
- All Implemented Interfaces:
- Reasoner, Translator
- public class HoldsReasoner
- extends Object
- implements Reasoner, Translator
HoldsReasoner.java
Created: Wed Dec 20 00:47:27 2000
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
HOLDS
public static final Symbol HOLDS
HoldsReasoner
public HoldsReasoner()
acceptable
public boolean acceptable(Object o)
- Description copied from interface:
Reasoner
- decides if the goal is suitable for being processed
by this reasoner. This method should be fast; if there are doubts as to whether a goal is
acceptable, and it looks like determining it might take some time, the method should
return true and let the process method figure it out.
Example. Many reasoners only process literals with certain predicates and arity.
These reasoners will use those criteria to determine acceptability, for example a reasoner
dealing with equality could accept goals that are:
- Literals,
- have = as their relation predicate,
- have exactly two arguments.
- Specified by:
acceptable
in interface Reasoner
- Returns:
- true if the goal is suitable for this reasoner, false otherwise.
process
public ReasoningStepIterator process(Object o)
- Description copied from interface:
Reasoner
- This method attempts to find proof for the goal. It returns an enumeration of reasoning steps that
correspond to alternative proofs for the goal. Consequently, the items of the enumeration
can actually belong to different models of the goal sentence, and have incompatible
variable assignments.
Example. A reasoner that performs unification of the goal with facts in a
knowledge base can return the following enumeration for the goal (parent joe ?x)
:
- A reasoning step proving
(parent joe fred)
with variable assignment
?x=fred,
- A reasoning step proving
(parent joe mary)
with variable assignment
?x=mary.
- Specified by:
process
in interface Reasoner
- Parameters:
o
- the goal: either a query or an assertion
- Returns:
- the iterator of reasoning steps - proofs for the query, or consequences of the assertion.
translate
public Literal translate(Literal goal)
translate
public Object translate(Object o)
- Specified by:
translate
in interface Translator
holdify
public static Literal holdify(Literal l)
getFirstOrderRelation
public static Object getFirstOrderRelation(Literal l)