Some theorems answer a question. The Cook–Levin theorem did something rarer: it revealed that thousands of unrelated-looking hard problems are secretly the same problem in disguise.
In 1971, Stephen Cook — and independently, in the Soviet Union, Leonid Levin — proved that one specific problem, SAT (is there a way to set true/false values that makes a boolean formula true?), is NP-complete. That word means SAT is at least as hard as every problem whose answers can be checked quickly. If you could solve SAT fast, you could solve all of them fast.
How do you prove a single puzzle is as hard as a whole universe of puzzles you've never seen? The trick is breathtaking: you show that any computation that checks an answer can be rewritten, mechanically, as one giant boolean formula. Run the computer, and the formula is satisfiable. That is the idea we'll watch in action.
Comments
Loading comments...