This preview has intentionally blurred sections. Sign up to view the full version.
View Full DocumentThis preview has intentionally blurred sections. Sign up to view the full version.
View Full Document
Unformatted text preview: CookLevin Theorem In the 1970’s Stephen Cook and Leonid Levin independently discovered that there are problems in NP whose complexity are related to all other problems in NP – these problems are called NPcomplete problems. As we have seen, NPcomplete problems are related to other NP problems via polynomial reductions. The first and most famous NPcomplete problem discovered was a problem around the satisfiability of logic formulas. – p. 1/ ? SAT A Boolean formula is an expression involving Boolean variables ( x , y , etc. ) and operations ( ∧ , ∨ , ¬ , where ¬ x = x ), φ = ( x ∧ y ) ∨ ( x ∧ z ) . A Boolean formula is satisfiable if some assignment of true and false to the variables of the formula makes the formula evaluate to true . For example, the assignment x = false y = true z = false will make φ above evaluate to true. The satisfiability problem is to test whether a Boolean formula is satisfiable, that is SAT = {h φ i φ is a satisfiable Boolean formula } . – p. 2/ ? SAT Theorem: (CookLevin) SAT ∈ NPcomplete . Proof Sketch: For an NPcomplete problem we need to show that it is in NP and that all A ∈ NP reduce to it. (a) It is easy to see that a truth assignment to the variables of a formula can be checked in polynomial time. (b) We need to show that A ≤ p SAT for all A ∈ NP . This is done by simulating the computations of a NTM deciding A on some string w using Boolean formulas such that w ∈ A iff f ( w ) ∈ SAT where f converts the string w into the Boolean formula f ( w ) . a 2 Note: In some sense this reinforces our notion that firstorder logic is a powerful language to reason about complex problems. a For details, please see the CookLevin Theorem in the book....
View
Full Document
 Spring '11
 Staff
 φ, Konrad Zuse, Conjunctive normal form, NPcomplete, Boolean satisfiability problem

Click to edit the document details