JTP API Documentation

jtp.func
Class EvaluableFunctionReasoner

java.lang.Object
  |
  +--jtp.disp.AbstractRelationBasedReasoner
        |
        +--jtp.disp.AbstractRelationBasedBCReasoner
              |
              +--jtp.func.EvaluableFunctionReasoner
All Implemented Interfaces:
Reasoner, RelationBasedBCReasoner, RelationBasedReasoner, Serializable
Direct Known Subclasses:
TimePointFunctionReasoner

public abstract class EvaluableFunctionReasoner
extends AbstractRelationBasedBCReasoner

See Also:
Serialized Form

Field Summary
 
Fields inherited from class jtp.disp.AbstractRelationBasedBCReasoner
arity, polarity, relation
 
Fields inherited from interface jtp.disp.RelationBasedReasoner
ANY_ARITY, BOTH, NEGATIVE, POSITIVE
 
Constructor Summary
EvaluableFunctionReasoner(Symbol opSymbol, int arity)
           
 
Method Summary
abstract  boolean evaluate(Object[] args, Object result, List varStack, boolean isNegated)
           
 ReasoningStepIterator process(Object o)
          This method attempts to find proof for the goal.
 
Methods inherited from class jtp.disp.AbstractRelationBasedBCReasoner
acceptable, getArity, getPolarity, getRelation, literalAcceptable
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface jtp.disp.RelationBasedReasoner
getArity, getPolarity, getRelation
 

Constructor Detail

EvaluableFunctionReasoner

public EvaluableFunctionReasoner(Symbol opSymbol,
                                 int arity)
Method Detail

evaluate

public abstract boolean evaluate(Object[] args,
                                 Object result,
                                 List varStack,
                                 boolean isNegated)
                          throws ReasoningException
ReasoningException

process

public ReasoningStepIterator process(Object o)
                              throws ReasoningException
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):

  1. A reasoning step proving (parent joe fred) with variable assignment ?x=fred,
  2. A reasoning step proving (parent joe mary) with variable assignment ?x=mary.

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.
ReasoningException

JTP API Documentation