| OCR Text |
Show 24 2.5 Summary In this chapter, important notions in E-unification were defined and dis-cussed. In first-order unification, terms are constructed from given function symbols and variables, and substitutions are mappings from variables to terms. From a given set of equations, terms are partitioned into congruence classes closed under instantiation {erA =E crB fo r any cr, if A =E B). The problem of firstorder unification in equational theories is to determine, given two terms, whether there exists a substitution, such that when the substitution is applied to both terms, the resulting two terms belong to the same congruence class. We are interested in complete sets of unifiers, i.e., the set of unifiers for E-unifiable terms A and B, such that any unifier of A and B is subsumed by some unifier in the set. The narrowing method for obtaining a complete unification algorithm was presented, and the relationship between narrowing and E-unification was dis-cussed. Both reduction and narrowing are mechanisms for replacement; reduc-tion uses one-way matching while narrowing employes two-way unification. A fundamental result in using narrowing as a process in E-unification was es-tablished by Hullot: if R is a canonical term rewriting system, then for a nor-malized unifier cr and a reduction sequence issuing form v,H(A,B), v1H{A,B) = B0 ->[ k 1 B1 -> ... ->[ k 1 B = H(R,R), u 0' 0 u n -1 ' n -1 n there exists a narrowing sequence issuing from H(A,B): H(A,B) = Co ...... >[uo,ko,fJol C1 ...... > ... ...... >[u ,k ,p 1 Cn = H{P n'Qn), n-1 n-1 n-1 such that P n and Q n are unifiable with the minimum unifier JJ, and cr uPn-lpn_2 ... rJ0 is an E-unifier fo r A and B, and cr ~E v1 [W]. |