- 102 Downloads
In this chapter we will consider the full PROLOG language for logic programming in predicate logic. Much of the basic terminology is simply the predicate logic version of that introduced in I.10. We will, nonetheless, restate the basic definitions in a form suitable for resolution theorem proving in the predicate calculus. PROLOG employs a refinement of linear resolution but we have made the presentation independent of the (rather difficult) completeness theorem for linear resolution (Theorem II.14.4). We do, however, assume familiarity with the definitions for linear resolution in Definitions II.14.1–3. Thus our proofs will be based on the analysis of the propositional version of PROLOG discussed in I.10, together with Herbrand’s theorem (II.10.4) and the reduction of predicate logic to propositional logic that it entails. At times when a knowledge of II.14 would illuminate certain ideas or simplify proofs, we mark such alternate results or proofs with an *.
KeywordsPredicate Logic Ground Instance Prolog Program Register Machine Nonmonotonic Logic
Unable to display preview. Download preview PDF.