| OCR Text |
Show 11 programming and logic programming. The details of this model are described, along with evaluation strategies to support the execution of programs ba sed upon it. A lazy reduction mechanism, pattern- driven reduction, is developed for the underlying functional model and cleanly and naturally achieves reductionby- need. The notion of semantic unification is discussed. Semantic unification can be viewed as a restricted form of E - unification. Semantic unification serves as a basis for achieving the desired integration of functions and logic, and can be used to replace the conventional unification procedure in logic programming systems. The resulting model supports computations with infinite data structures. In addition, it provides the programmer the flexibility of choosing between a backtracking free computation framework and a conventional logic computation framework, i.e., a nondeterministic one involving backtracking. The use of this facility is illustrated via examples. The model can be extended to include the notion of equality when complete E-unification algorithms are used. The final section of the chapter includes a code listing for a Funlog interpreter implemented in DEC-20 Prolog. Chapter 7 concludes this dissertation with a summary of the main contributions of this thesis. Future research directions, both in E-unification and logic programming with equality, are discussed. |