at.jku.risc.stout.nau.data.atom
public abstract class NominalTerm extends Printable implements DeepCopy<NominalTerm>, HasSort<Sort>, Traversable<NominalTerm>
Traversable.TraverseCallBack<T>
Constructor and Description |
---|
NominalTerm() |
Modifier and Type | Method and Description |
---|---|
abstract void |
collectAtoms(Set<Atom> atoms) |
boolean |
equivalent(NominalTerm otherTerm,
FreshnessCtx nabla)
Alpha-equivalence test of two nominal terms respecting nabla.
|
abstract HasSort<? extends Sort> |
getHead() |
abstract boolean |
isFresh(Atom atom,
FreshnessCtx nabla) |
abstract NominalTerm |
permute(Permutation perm) |
abstract NominalTerm |
substitute(Variable fromVar,
NominalTerm toTerm) |
abstract NominalTerm |
swap(Atom a1,
Atom a2) |
boolean |
traverse(Traversable.TraverseCallBack<NominalTerm> callBack)
Traverses the term tree and executes the callback function at every
subterm.
|
printString, printString, toString
public boolean equivalent(NominalTerm otherTerm, FreshnessCtx nabla)
public abstract boolean isFresh(Atom atom, FreshnessCtx nabla)
public abstract NominalTerm permute(Permutation perm)
public abstract NominalTerm substitute(Variable fromVar, NominalTerm toTerm) throws MalformedSortException
MalformedSortException
public abstract NominalTerm swap(Atom a1, Atom a2) throws MalformedSortException
MalformedSortException
public boolean traverse(Traversable.TraverseCallBack<NominalTerm> callBack)
traverse
in interface Traversable<NominalTerm>
Traversable
,
Traversable.TraverseCallBack