This book is intended as an introduction to mathematical logic, with an emphasis on proof theory and procedures for constructing formal proofs of formulae algorithmically.
Since the main emphasis of the text is on the study of proof systems and algorithmic methods for constructing proofs, it contains some features rarely found in other texts on logic. Four of these features are:
1. The use of Gentzen Systems;
2. A Justification of the Resolution method via a translation from a Gentzen System;
3. A presentation of SLD-resolution and a presentation of the foundations of PROLOG;
4. Fast decisions procedures based on congruence closures.
Even though the main emphasis of the book is on the design of procedures for constructing formal proofs, the treatment of the semantics is perfectly rigorous. The following paradigm has been followed: Having defined the syntax of the language, it is shown that the set of well-formed formulae is a freely generated inductive set. This is an important point, which is often glossed over. Then, the concepts of satisfaction and validity are defined by recursion over the freely generated inductive set (using the 'unique homomorphic extension theorem', which can be rigorously justified). Finally, the proof theory is developed, and procedures for constructing proofs are given. Particular attention is given to the complexity of such procedures. |