| Modifier and Type | Field and Description | 
|---|---|
static java.lang.String | 
COMMA  | 
static java.lang.String | 
LEFT_PAR  | 
static java.lang.String | 
RIGHT_PAR  | 
| Constructor and Description | 
|---|
NonVariableTerm(OperationSymbol opSym,
               java.util.List<Term> children)  | 
| Modifier and Type | Method and Description | 
|---|---|
int | 
depth()
The depth of the term tree. 
 | 
boolean | 
equals(java.lang.Object obj)  | 
java.lang.Object | 
eval(Algebra alg,
    java.util.Map map)
The evaluation of this term in an algebra using map as
 the variable assignment. 
 | 
java.util.List<Term> | 
getChildren()
A list of terms which are the immediate children. 
 | 
java.util.Set<OperationSymbol> | 
getOperationSymbols()
The set of operation symbols or null for a variable. 
 | 
java.util.List<Variable> | 
getVariableList()
The list of variables in the order they appear in the term. 
 | 
int | 
hashCode()  | 
TermOperation | 
interpretation(SmallAlgebra alg)
The operation obtained from this term using the variables in the
 order they occur. 
 | 
Operation | 
interpretation(SmallAlgebra alg,
              java.util.List<Variable> varlist,
              boolean useAll)
The interpretation of this term in an algebra; that is, the
 operation on  
alg corresponding to this term. | 
int | 
intEval(Algebra alg,
       java.util.Map<Variable,java.lang.Integer> map)
The int evaluation of this term in an algebra using  
map as
 the variable assignment. | 
boolean | 
isaVariable()  | 
OperationSymbol | 
leadingOperationSymbol()
The leading operation symbol or null if this term is a variable. 
 | 
int | 
length()
The length of the term. 
 | 
static Term | 
makeConstantTerm(OperationSymbol sym)
A static method to make a constant term from an operation symbol. 
 | 
Term | 
substitute(java.util.Map<Variable,Term> map)
Replace some of the variables with terms. 
 | 
java.lang.String | 
toString()
A reasonably good printout of the term. 
 | 
java.lang.StringBuffer | 
writeStringBuffer(java.lang.StringBuffer sb)
This is really an efficiency helper for toString. 
 | 
public static final java.lang.String LEFT_PAR
public static final java.lang.String RIGHT_PAR
public static final java.lang.String COMMA
public NonVariableTerm(OperationSymbol opSym, java.util.List<Term> children)
public static Term makeConstantTerm(OperationSymbol sym)
sym - public boolean equals(java.lang.Object obj)
equals in class java.lang.Objectpublic int hashCode()
hashCode in class java.lang.Objectpublic boolean isaVariable()
isaVariable in interface Termpublic OperationSymbol leadingOperationSymbol()
leadingOperationSymbol in interface Termpublic java.util.List<Term> getChildren()
getChildren in interface Termpublic java.lang.Object eval(Algebra alg, java.util.Map map)
public int intEval(Algebra alg, java.util.Map<Variable,java.lang.Integer> map)
Termmap as
 the variable assignment.public Operation interpretation(SmallAlgebra alg, java.util.List<Variable> varlist, boolean useAll)
Termalg corresponding to this term.
 The varlist, a list of Variable's, specifies the
 order. If useAll is true, variables that are
 not explicit in this term are still used.
 (z*y)*z, and
 varlist is (x, y, z).
 If useAll is true, the resulting operation will
 have arity 3 and be independent of its first variable. Otherwise
 it will be a 2 place operation with y as the first
 variable and z as the second.interpretation in interface Termalg - the Algebravarlist - the list of variablesuseAll - if true, use all the variables in varlistpublic TermOperation interpretation(SmallAlgebra alg)
Term(z*y)*z.
 The result will be a 2 place operation with z as the first
 variable and y as the second.interpretation in interface Termalg - the Algebra#interpretation(Algebra,List,boolean)public java.util.List<Variable> getVariableList()
TermgetVariableList in interface Termpublic java.util.Set<OperationSymbol> getOperationSymbols()
TermgetOperationSymbols in interface Termpublic int length()
Termpublic int depth()
Termpublic Term substitute(java.util.Map<Variable,Term> map)
Termsubstitute in interface Termmap - a map for the substitutionpublic java.lang.String toString()
Termpublic java.lang.StringBuffer writeStringBuffer(java.lang.StringBuffer sb)
TermwriteStringBuffer in interface TermCopyright 2003 Ralph Freese. All Rights Reserved.