Abstract

A unifier of two terms s and t is a substitution \(\sigma \) such that \(s\sigma =t\sigma \). For first-order terms there exists a most general unifier \(\sigma \) in the sense that any other unifier \(\tau \) can be composed from \(\sigma \) with some substitution \(\lambda \) such that \(\tau =\sigma \circ \lambda \). For many practical applications it turned out to be useful to generalize this notion to E-unification, where E is an equational theory , \(=_{E}\) is equality under E and \(\sigma \) is an E-unifier if \(s\sigma =_{E}t\sigma \). Depending on the equational theory E, the set of most general unifiers is always a singleton (as above) or it may have more than one unifier, either finitely or infinitely many unifiers and for some theories it may not even exist, in which case we call the theory of type nullary. The set of most general unifiers is denoted as \(\mu \mathscr {U}\Sigma _{E}(\varGamma )\) for a unification problem \(\varGamma \), which is a system of equations and an equational theory E. Unfortunately the set \(\mu \mathscr {U}\Sigma _{E}(\varGamma )\) may be very large in general—even if it is finite—and for all practical purposes not really useful. For this and other reasons there is hence (i) a strong interest to compute a much smaller generating set of minimal unifiers and then (ii) to find efficient engineering solutions to handle these sets. Essential unifiers, as introduced by Hoche and Szabo, generalize the notion of a most general unifier and they have a dramatically pleasant effect: the set of essential unifiers is often much smaller than the set of most general unifiers . Essential unification may even reduce an infinitary theory to an essentially finitary theory. For example the one variable string unification problem is essentially finitary whereas it is infinitary in the usual sense. The most drastic reduction known so far is obtained for idempotent semigroups, or bands as they are called in computer science, which are of type nullary: there exist two unifiable terms s and t, but the set of most general unifiers does not exist. This is in stark contrast to essential unification: the set of essential unifiers for bands always exists and is finite. The key idea for essential unification is to base the notion of generality not on the standard subsumption order for terms with the associated subsumption order for substitutions , but on the encompassment order for terms and substitutions. Hence we propose the encompassment order as a more natural order relation for minimal and complete sets of E-unifiers and call these sets essential unifiers, denoted as \(e\mathscr {U}\Sigma _{E}(\varGamma )\). This paper introduces essential unification, provides a definitional framework based on order relations and surveys what is presently known. We conclude with a list of some of the more important open problems, including the main open problem, namely how to build essential unification into an automated reasoning system.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call