-1

I read The Complexity of Theorem-Proving Procedures by Stephen A. Cook (1971). Cook explains how to create a boolean formula $\Phi$ from $(M,w)$, where $M$ is a non-deterministic Turing machine that always halts in a polynomial number of steps and $w$ is a string in $\Sigma^*$ so that $\Phi$ is satisfiable if and only if $M$ accepts $w$.

  • Is every accepting path/route of $M$ with input $w$ a satisfying assignment of $\Phi$?
  • Is every rejecting path/route of $M$ with input $w$ a falsifying assignment of $\Phi$?
  • Is the number of satisfying assignments of $\Phi$ equal to the number of accepting routes/paths of $M$ with input $w$?
  • Is the number of falsifying assignments of $\Phi$ equal to the number of rejecting routes/paths of $M$ with input $w$?
Gilles 'SO- stop being evil'
  • 44,159
  • 8
  • 120
  • 184

1 Answers1

4

The reduction in the Cook-Levin theorem is parsimonious, i.e. it preserves the number of witnesses. You should note that $\Phi_{M.w}$ does not talk in terms of computation paths, it is simply a boolean formula. However, if you look at the details of the reduction, you will see that each accepting path for $w$ corresponds to a satisfying assignment for $\Phi$, and vice versa. Once you show that $\Phi_{M,w}$ treats its variables as a possible path for $M$ on $w$, and is satisfied iff that path is accepting, the first three questions are naturally answered in the positive.

The reduction does not preserve the number of "non-witnesses" (note that the total number of possible witnesses for the input and output is not necessarily equal, hence a parsimonious reduction might change the number of "bad" witnesses), so the last point is wrong. As an example, suppose $M$ accepts $w$ on every path (hence it has zero rejecting routes), but any assignment to the variables of $\Phi_{M,w}$ which does not represent a valid computation of $M$ on $w$ is not satisfying.

Note that it is an open problem whether every NP complete problem has parsimonious reductions (i.e. for every $\mathsf{L\in NP}$ there exists a parsimonious reduction from $L$ to the complete language). Most classical NP complete problems are known to have such reductions, but this is not known in general, see this related post.

Ariel
  • 13,614
  • 1
  • 22
  • 39