Predicate Logic as Programming Language

   page       BibTeX_logo.png   
Robert A. Kowalski
Information Processing 74 – Proceedings of the 1974 IFIP Congress, pages 569–574
North-Holland Publishing Company, Amsterdam, The Netherlands
1974

The interpretation of predicate logic as a programming language is based upon the interpretation of implications B if A1 and ... and An as procedure declarations, where B is the procedure name and A1, \ldots, An is the set of procedure calls Ai constituting the procedure body. An axiomatisation of a problem domain is a program for solving problems in that domain. Individual problems are posed as theorems to be proved. Proofs are computations generated by the theorem-prover which executes the program incorporated in the axioms. Our thesis is that predicate logic is a useful and practical, high-level, non-deterministic programming language with sound theoretical foundations.