Mathematical Logic for Computer Science is a mathematics textbook with theorems and proofs, but the choice of topics has been guided by the needs of students of computer science. The method of semantic tableaux provides an elegant way to teach logic that is both theoretically sound and easy to understand. The uniform use of tableaux-based techniques facilitates learning advanced logical systems based on what the student has learned from elementary systems.
The logical systems presented are: propositional logic, first-order logic, resolution and its application to logic programming, Hoare logic for the verification of sequential programs, and linear temporal logic
for the verification of concurrent programs.
The third edition has been entirely rewritten and includes new chapters on central topics of modern computer science: SAT solvers and model checking.
Mordechai (Moti) Ben-Ari is with the Department of Science Teaching at the Weizmann Institute of Science. He is a Distinguished Educator of the ACM and has received the ACM/SIGCSE Award for Outstanding Contributions to Computer Science Education.
Preface.- Introduction.- Propositional Logic: Formulas, Models, Tableaux.- Propositional Logic: Deductive Systems.- Propositional Logic: Resolution.- Propositional Logic: Binary Decision Diagrams.- Propositional Logic: SAT Solvers.- First-Order Logic: Formulas, Models, Tableaux.- First-Order Logic: Deductive Systems.- First-Order Logic: Terms and Normal Forms.- First-Order Logic: Resolution.- First-Order Logic: Logic Programming.- First-Order Logic: Undecidability and Model Theory.- Temporal Logic: Formulas, Models, Tableaux.- Temporal Logic: A Deductive System.- Verification of Sequential Programs.- Verification of Concurrent Programs.- Set Theory.- Index of Symbols.- Index of Names.- Subject Index.