Karp-Lipton theorem
From Wikipedia, the free encyclopedia
The Karp-Lipton theorem in complexity theory states that if SAT has a polynomial size circuit, then
- = and therefore = .
[edit] Proof of Karp-Lipton theorem
It is a well-known result that is -hard. Thus, if we can show that , it follows that . By the definition of , we just need to find a polynomial time algorithm, so that
Let the algorithm , be defined as follows:
On input < The self-reducability property of SAT allows us to use the circuit to generate the satisfying assignment efficiently. The idea is to first ask the circuit if is satisfiable. If the circuit says 'yes', we then ask if with the first variable assigned to true is satisfiable. If it is, we can conclude that in the satisfying assignment and set it as such. If it is not, we can then conclude that in the satisfying assignment. Continuing this way for each variable of , we reduce the size of the variables by 1 at each step and ultimately generate the satisfying assignment.
To show that the algorithm in fact satisfies the double implication, there are two cases to consider:
- If is true, we can let be the concatenation of circuits for . Such a exists and is polynomial in the length of by the hypothesis that has a polynomial size circuit. Then for any , will correctly calculate a satisfying assignment for , which exists since is true. In other words, .
- If is false, . Let be such an . Then when we run on , , and any input , will reject in the second step by our choice of . In other words, , which is equivalent to .
Taken together, we have that
- and .
As shown above, so for any language, , .
Therefore,
Then,
and
Therefore .
Now that we have shown that , we can show that . That is, the entire polynomial hierarchy collapses to .
To show this, we can write the quantifiers of as follows:
where represents the quantifier at the position, and . Making use of the result proved above, we can swap and , yielding:
which we can reduce to:
because . Thus we have just reduced to . By a simple induction argument, it is easy to see that this can be repeatedly applied to reduce to , and that can also be reduced in this manner. Since the complexity class PH is defined as and we have shown that every class in this union can be reduced to , we have shown that