Package net.hydromatic.morel.util
Class RobinsonUnifier
java.lang.Object
net.hydromatic.morel.util.Unifier
net.hydromatic.morel.util.RobinsonUnifier
Robinson's unification algorithm.
-
Nested Class Summary
Nested classes/interfaces inherited from class net.hydromatic.morel.util.Unifier
Unifier.Action, Unifier.Failure, Unifier.Result, Unifier.Sequence, Unifier.Substitution, Unifier.SubstitutionResult, Unifier.Term, Unifier.TermTerm, Unifier.TermVisitor<R>, Unifier.Tracer, Unifier.Variable -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescription(package private) static Map<Unifier.Variable, Unifier.Term> Applies s1 to the elements of s2 and adds them into a single list.private Unifier.ResultsequenceUnify(Unifier.Sequence lhs, Unifier.Sequence rhs) unify(List<Unifier.TermTerm> termPairs, Map<Unifier.Variable, Unifier.Action> termActions, Unifier.Tracer tracer) unify(Unifier.Term lhs, Unifier.Term rhs)
-
Constructor Details
-
RobinsonUnifier
public RobinsonUnifier()
-
-
Method Details
-
compose
static Map<Unifier.Variable,Unifier.Term> compose(Map<Unifier.Variable, Unifier.Term> s1, Map<Unifier.Variable, Unifier.Term> s2) Applies s1 to the elements of s2 and adds them into a single list. -
sequenceUnify
-
unify
@Nonnull public Unifier.Result unify(List<Unifier.TermTerm> termPairs, Map<Unifier.Variable, Unifier.Action> termActions, Unifier.Tracer tracer) -
unify
-