neurolang.logic.unification module

neurolang.logic.unification.apply_substitution(function_application, substitution)
neurolang.logic.unification.apply_substitution_arguments(arguments, substitution)
neurolang.logic.unification.compose_substitutions(subs1, subs2)
neurolang.logic.unification.merge_substitutions(subs1, subs2)
neurolang.logic.unification.most_general_unifier(expression1, expression2)

Obtain the most general unifier (MGU) between two function applications. If the MGU exists it returns the substitution and the unified expression. If the MGU doesn’t exist it returns None.

neurolang.logic.unification.most_general_unifier_arguments(args1, args2)

Obtain the most general unifier (MGU) between argument tuples. If the MGU exists it returns the substitution and the unified arguments. If the MGU doesn’t exist it returns None.

neurolang.logic.unification.most_general_unifier_extract_arguments(expression1, expression2)