Description
Computational logic is a fast-growing field with applications in artificial intelligence, constraint solving, and the design and analysis of software and hardware systems. Written with advanced undergraduate and beginning graduate students in mind, this textbook introduces computational logic from the foundations of first-order logic to state-of-the-art decision procedures for arithmetic, data structures, and combination theories. This textbook also presents a logical approach to engineering correct software as an application of computational logic. The increasing ubiquity of computers makes implementing correct systems more important than ever. Verification exercises develop the reader’s facility in specifying and verifying software using logic. The treatment of verification finishes with an introduction to the static analysis of software, an important component of modern verification systems. For readers interested in learning more about computational logic, verification, and other areas of formal methods, this textbook concludes with a chapter outlining courses of further study.




