JSHOP2
Class Axiom

java.lang.Object
  extended by JSHOP2.DomainElement
      extended by JSHOP2.Axiom

public abstract class Axiom
extends DomainElement

Each axiom at run time is represented as a class derived from this abstract class.

Version:
1.0.3
Author:
Okhtay Ilghami, http://www.cs.umd.edu/~okhtay

Field Summary
private  int branchSize
          Number of branches of this axiom.
 
Constructor Summary
Axiom(Predicate head, int branchSizeIn)
          To initialize the axiom.
 
Method Summary
 int getBranchSize()
          To get the number of branches in this axiom.
abstract  java.lang.String getLabel(int which)
          To get the label of a given branch of this axiom.
 
Methods inherited from class JSHOP2.DomainElement
getHead, getIterator, unify
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

branchSize

private int branchSize
Number of branches of this axiom. Each branch represents one different way to prove this axiom, in case all the previous branches have already been tried and failed.

Constructor Detail

Axiom

public Axiom(Predicate head,
             int branchSizeIn)
To initialize the axiom.

Parameters:
head - head of the axiom.
branchSizeIn - number of branches in the axiom.
Method Detail

getBranchSize

public int getBranchSize()
To get the number of branches in this axiom.

Returns:
number of branches in this axiom.

getLabel

public abstract java.lang.String getLabel(int which)
To get the label of a given branch of this axiom.

Parameters:
which - the branch the label of which is to be returned.
Returns:
the label for that branch.