logic
Class Identity

java.lang.Object
  extended bylogic.SymbolicObject
      extended bylogic.Sentence
          extended bylogic.Identity
All Implemented Interfaces:
java.lang.Cloneable

public class Identity
extends Sentence


Constructor Summary
Identity(java.util.List v)
           
Identity(Term v1, Term v2)
           
 
Method Summary
 java.lang.Object clone()
           
 int compareTo(java.lang.Object o)
          Compare two SymbolicObjects.
 Sentence eliminateExists()
           
 Sentence eliminateForall(api.ProblemInstance p)
           
 boolean equals(java.lang.Object other)
           
 Sentence flatten()
           
 SymbolicObject getFirst()
           
 Term getFirstTerm()
           
 SList getList()
           
 java.lang.String getName()
           
 SymbolicObject getRest()
           
 TermList getTermList()
           
 int hashCode()
           
 TermList obtainVariables()
          returns a * of Terms that are Variables.
 Sentence reconcileTypes(api.Domain d, api.ProblemInstance p)
           
 Sentence renameVariables()
           
 boolean simpleEvaluate()
           
 SymbolicObject substitute(Substitution s)
           
 SymbolicObject substituteVariable(Variable oldVar, Term newVar)
           
 SymbolicObject symbolicSignature()
           
 java.lang.String toString()
           
 java.lang.String toString(java.lang.String sep)
           
 Substitution unify(SymbolicObject t, Substitution s)
          Given two terms, return their most general unifier, or null if they don't unify.
 
Methods inherited from class logic.Sentence
containsDisjunction, containsTerm, getSList, infoString, initializeOccurrences, isAdmissibleOutcome, isAtomic, isCompound, isEquals, isNegation, isNegationOf, isNotEquals, isSymbol, negate, relativize, symbolicMatch, toSentence
 
Methods inherited from class logic.SymbolicObject
copyData, debugString, geq, getOccurrences, getProbability, getType, getTypeName, gt, isTyped, leq, lt, setOccurrences, setProbability, setType
 
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

Identity

public Identity(Term v1,
                Term v2)

Identity

public Identity(java.util.List v)
Method Detail

clone

public java.lang.Object clone()
Overrides:
clone in class Sentence

eliminateExists

public Sentence eliminateExists()
Specified by:
eliminateExists in class Sentence

eliminateForall

public Sentence eliminateForall(api.ProblemInstance p)
Specified by:
eliminateForall in class Sentence

flatten

public Sentence flatten()
Specified by:
flatten in class Sentence

reconcileTypes

public Sentence reconcileTypes(api.Domain d,
                               api.ProblemInstance p)
Specified by:
reconcileTypes in class Sentence

simpleEvaluate

public boolean simpleEvaluate()

renameVariables

public Sentence renameVariables()
Specified by:
renameVariables in class Sentence

getName

public java.lang.String getName()
Specified by:
getName in class SymbolicObject

getFirst

public SymbolicObject getFirst()
Specified by:
getFirst in class SymbolicObject

getFirstTerm

public Term getFirstTerm()
Specified by:
getFirstTerm in class SymbolicObject

getRest

public SymbolicObject getRest()
Specified by:
getRest in class SymbolicObject

getList

public SList getList()
Specified by:
getList in class Sentence

getTermList

public TermList getTermList()

hashCode

public int hashCode()

toString

public java.lang.String toString()
Specified by:
toString in class SymbolicObject

toString

public java.lang.String toString(java.lang.String sep)

symbolicSignature

public SymbolicObject symbolicSignature()
Specified by:
symbolicSignature in class SymbolicObject

compareTo

public int compareTo(java.lang.Object o)
Description copied from class: SymbolicObject
Compare two SymbolicObjects. The result is zero if the objects are equal according to the equals() operator. Otherwise, the result is a negative integer if this object's name lexicographically precedes the other's name. The result is a positive integer if this object's name lexicographically follows the other's name.

Specified by:
compareTo in class SymbolicObject

equals

public boolean equals(java.lang.Object other)
Specified by:
equals in class SymbolicObject

obtainVariables

public TermList obtainVariables()
Description copied from class: SymbolicObject
returns a * of Terms that are Variables. If this Term isn't a Variable, an empty * is returned.

Specified by:
obtainVariables in class SymbolicObject

substituteVariable

public SymbolicObject substituteVariable(Variable oldVar,
                                         Term newVar)
Specified by:
substituteVariable in class SymbolicObject

substitute

public SymbolicObject substitute(Substitution s)
Specified by:
substitute in class SymbolicObject

unify

public Substitution unify(SymbolicObject t,
                          Substitution s)
Description copied from class: SymbolicObject
Given two terms, return their most general unifier, or null if they don't unify. may be mutated.

Specified by:
unify in class SymbolicObject