| OCR Text |
Show * An elaboration of how and when to evaluate function expressions in Pro log c lauses, so t hat it is most likely to yield a computed answer for a goal w hen it exists. The main notion for achieving desrred reduction effects is semantic unification, which turns out to be a special case of E-unification for ground terms. * A provision of equality tn Prolog-like languages when semantrc unification is replaced by E-unification algorithm(s). This extension should be credited to the efforts of this thesis in showing that narrowing yields a complete E-unification algorithm for the class of closed linear term rewriting systems with the nonrepetition property. 7.3 Future Research 132 Our investigation on the problem of E-unification prompts severa l ques-tions. As mentioned in Chapter 3, for the term rew riting systems t hat have crit i-cal pairs, is a demand driven superposition procedure useful in constru cti ng E-unification algorithms? To what extent is this procedure complete? The ideas presented in [22, 56, 57, 58] on rewri t i ng modulo a set of equations are relevant here. The counterexample presented in Chapter 3,* i.e., R = {h(a,a) - > c(h(a ,a))} shows that narrowing fails to generate complete sets of unifiers in some cases. A distinct characteristic for this class of rewrite rules is that t hey make a term equivalent to one of its proper subterms. This characteristic has a unique manifestation during ordinary unification: there is a "crash," an equation like x = f( ... x ... ), and the term f( ... x ... ) is not narrowable. Recall that we have referred to these kind of equations as nonnarrowab/e eye! ie equations. Since nonnarrow-able cyclic equations are easy to detect during unification and, in add ition, it appears that they are barely present in the normal ca ses, the question of * Note that in Chapter 4 we presented a similar but simpler counterexample with the same na-ture : { a - > c (a) }. |