Cook-Levin Theorem

Context: FIT2014_MOC Β· the first NP-complete language β€” pays condition (b) of NP-Completeness once, generically, so every later proof is one reduction instead of an argument about all of

The proof (Lecture 29) is explicitly NON-EXAMINABLE. Learn the statement, the two obligations, and the architecture below β€” it is the payoff for CNF encoding and TM configurations. Do not spend SWOTVAC time reproducing the clause algebra.

Quick Revision

  • 🎯 Objective: satisfiable Boolean expressions in CNF is NP-complete (S. Cook 1971, L. Levin 1972).
  • ⚑ Key Constraint: part (a) β€” SAT β€” is easy and examinable; part (b) is the hard generic construction and is not.

πŸ“ Core

  • The two obligations βž” (a) ; (b) .
  • (a) in full (the examinable half β€” the standard 4-part membership proof) βž” certificate = a truth assignment to the variables of ; verifier = check each clause has a true literal; iff = satisfiable some assignment passes; time = one pass over , polynomial in .
  • Why (b) is hard βž” it quantifies over an infinite set of languages, so no fixed gadget works. The only handle every shares is that it has a polynomial-time verifier β€” so the reduction must encode an arbitrary machine’s run, not the problem’s combinatorics.
  • The generic idea βž” given with polynomial-time verifier on tape ( the input, the certificate), build a CNF such that
  • The polynomial clock βž” with , set β€” an integer bound on the number of timesteps, which is what makes the variable set finite and polynomially large.

🧬 Proof architecture (non-examinable β€” read once for the shape)

Variables β€” one Boolean for every possibility of every part of at every timestep, with :

VariableMeaning at time Range
the machine is in state (states)
tape cell contains letter ,
the tape head is scanning cell
  • Why polynomially many βž” the counts are , and β€” all polynomial in because is.

Clauses β€” left unconstrained, the variables describe nonsense (machine in several states at once, head in two places, a cell holding two letters). Two families rule that out:

FamilyConditionClause form
Static β€” sanity, every exactly one stateat least: Β· at most: per pair
exactly one head positionat least: Β· at most: per pair
exactly one letter per cell at least: Β· at most: per pair
Static β€” boundarycorrect start,
accepted, β€” state is Accept
Dynamic β€” inertiacells away from the head do not change, one per letter
Dynamic β€” transitionfor with if Right, if Left Β· Β·
  • Reading the dynamic clauses βž” each is an implication pushed into CNF by and De Morgan β€” the W1 rewriting, applied mechanically.
  • Conclusion βž” is the conjunction of everything above; is computable in polynomial time (lengthy but routine), and .
  • The omitted detail (posed as an open exercise on the revision slide β€” no answer given in the handout) βž” the construction assumes acceptance happens exactly at ; extra clauses are needed for a TM that accepts earlier. (A natural fix is to make the Accept state absorbing so an early accept persists to time β€” not stated in the slides.)

⚠️ Common Mistakes

  • πŸ’‘ Attempting the proof under exam pressure βž” it is non-examinable. What is examinable is the statement, part (a), and the consequence that one reduction now suffices.
  • πŸ’‘ Forgetting the sanity clauses βž” without β€œexactly one” per component the variables describe an impossible machine, and becomes satisfiable for inputs rejects.
  • πŸ’‘ Confusing the two normal forms βž” this is Conjunctive Normal Form (logic), never Chomsky Normal Form (grammars).
  • πŸ’‘ Saying Cook-Levin proves βž” it proves SAT is a hardest problem in . Which side of the frontier that summit sits on is still open.

🧠 Active Recall