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. The book also presents a logical approach to engineering correct software.
"...this book, which addresses the verification of sequential programs, exhibits all the features of a field that has finally fully matured. The material is substantial; it is organized very thoughtfully; the writing is concise but simple, easy to follow, and illustrated with ample examples... Overall, this book is very well written, thoughtfully constructed, and substantive yet accessible. It is bound to become a standard textbook in program verification." (Fatma Mill, ACM Computing Reviews, August 2008)