Book Description
The satisfiability problem of propositional logic, SAT for short, is the first algorithmic problem that was shown to be NP-complete, and is the cornerstone of virtually all NP-completeness proofs. The SAT problem consists of deciding whether a given Boolean formula has a “solution”, in the sense of an assignment to the variables making the entire formula to evaluate to true. Over the last few years very powerful algorithms have been devised being able to solve SAT problems with hundreds of thousands of variables. For difficult (or randomly generated) formulas these algorithms can be compared to the proverbial search for the needle in a haystack. This book explains how such algorithms work, for example, by exploiting the structure of the SAT problem with an appropriate logical calculus, like resolution. But also algorithms based on “physical” principles are considered. I was delighted to see how nicely the authors were able to cover such a variety of topics with elegance. I cannot resist saying that the introduction to SAT on page 9 is absolutely the best I ever expect to see in any book! Donald E. Knuth, Stanford University This book gives lucid descriptions of algorithms for SAT that are better than you would think! A must-read for anyone in theory. William Gasarch, University of Maryland It was a wonderful surprise to see a deep mathematical analysis of important algorithms for SAT presented so clearly and concisely. This is an excellent introductory book for studying the foundations of constraint satisfaction. Osamu Watanabe, Tokyo Institute of Technology