Mathematical Logic for Computer Science - Ben-Ari, Mordechai (Springer London : Imprint: Springer, 2012)
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. There are 150 exercises with answers available to qualified instructors. Documented, open-source, Prolog source code for the algorithms is available at http://code.google.com/p/mlcs/ 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. His other textbooks published by Springer are: Ada for Software Engineers (Second Edition) and Principles of the Spin Model Checker.