Ugo Montanari coauthored the 1982 unification algorithm with Alberto Martelli. Their paper treats first-order terms as equations and derives an efficient implementation from simpler transformation rules, integrating the acyclicity test needed for finite terms.[ref]
An Efficient Unification Algorithm by Alberto Martelli and Ugo Montanari. abstract, §2 and Algorithm1
For example, decomposing gives and , whereas has no finite-term solution and must be rejected. The point is to compute a most general unifier without expanding or repeatedly traversing shared term structure unnecessarily. Such unification supports automated deduction and logic programming.
New to topics? Read the docs here!