| OCR Text |
Show 21 2.3 Unification Algorithms Based on Narrowing Early efforts in developing E-unification algorithms have focused on developing E- unification algorithms for the most commonly used equational t heori es, e.g., commutat ivity, associativity, idempotence, distributivity and some combinations of these; see [11 0] for a survey. The reasons for this could have been severa l. First ly, th ese theories and their combinations frequently occurred in theorem proving and in other ap plications, such as in the generation term rewriting systems [67, 89]. Secondly, because of t he simplicity of these theories, there was a greater likelihood of developing efficient algorithms for t hem. Perhaps more importantly, E-unif ication was re cog nized to be a problem where any attempts to develop complete and relatively effi ci ent algorithms fo r some classes of equational theories were very difficult. A major breakthrough in this direction was made by Fay who developed an algorithm for equational theories that admit a canonical term rewrit ing system [30]. The algorithm uses an elegant method, called the narrowing method. Narrowing is a powerful mechanism fo r E-unif icati on. Its power is ob-tained by extending the one-way matching used in reductions to two-w ay unification. Definition 2-8: A term P narrows t o a term 0 at address u belonging to O(P), denoted by p ...... >[u,k,p) O, iff there exists a reduction rule ak - > fjk e R and p is the most general unifier of P/ u and ak away from V(P) u V(ak), and Q = p(P[u <- pfjk]) = p(P[u <- fjk]). We may abbreviate - >[u,k,p] by - >[u,kl or ....... > u· We denote the reflexive, transitive closure of ....... > by ....... > *. 0 Notice that in the definition all introduced variables are distinct f rom the existing variables, thus the variables that are in use are protect ed. This is called "standard apart" in the literature of theorem proving. The narrowing process combined w ith ordinary unificat ion yields a com- |