In complexity theory, the Karp–Lipton theorem states that if the Boolean satisfiability problem (SAT) can be solved by Boolean circuits with a polynomial number of logic gates, then
\Pi2=\Sigma2
PH=\Sigma2.
That is, if we assume that NP, the class of nondeterministic polynomial time problems, can be contained in the non-uniform polynomial time complexity class P/poly, then this assumption implies the collapse of the polynomial hierarchy at its second level. Such a collapse is believed unlikely, so the theorem is generally viewed by complexity theorists as evidence for the nonexistence of polynomial size circuits for SAT or for other NP-complete problems. A proof that such circuits do not exist would imply that P ≠ NP. As P/poly contains all problems solvable in randomized polynomial time (Adleman's theorem), the theorem is also evidence that the use of randomization does not lead to polynomial time algorithms for NP-complete problems.
The Karp–Lipton theorem is named after Richard M. Karp and Richard J. Lipton, who first proved it in 1980. (Their original proof collapsed PH to
\Sigma3
\Sigma2
Variants of the theorem state that, under the same assumption, MA = AM, and PH collapses to complexity class. There are stronger conclusions possible if PSPACE, or some other complexity classes are assumed to have polynomial-sized circuits; see P/poly. If NP is assumed to be a subset of BPP (which is a subset of P/poly), then the polynomial hierarchy collapses to BPP.[1] If coNP is assumed to be subset of NP/poly, then the polynomial hierarchy collapses to its third level.
Suppose that polynomial sized circuits for SAT not only exist, but also that they could be constructed by a polynomial time algorithm. Then this supposition implies that SAT itself could be solved by a polynomial time algorithm that constructs the circuit and then applies it. That is, efficiently constructible circuits for SAT would lead to a stronger collapse, P = NP.
The assumption of the Karp–Lipton theorem, that these circuits exist, is weaker. But it is still possible for an algorithm in the complexity class
\Sigma2
\Sigma2
\existsx\forally \psi(x,y)
\psi
\Sigma2
To understand the Karp–Lipton proof in more detail, we consider the problem of testing whether a circuit c is a correct circuit for solving SAT instances of a given size, and show that this circuit testing problem belongs to
\Pi1
The circuit c is a correct circuit for SAT if it satisfies two properties:
The first of these two properties is already in the form of problems in class
\Pi1
Self-reducibility describes the phenomenon that, if we can quickly test whether a SAT instance is solvable, we can almost as quickly find an explicit solution to the instance. To find a solution to an instance s, choose one of the Boolean variables x that is input to s, and make two smaller instances s0 and s1 where si denotes the formula formed by replacing x with the constant i. Once these two smaller instances have been constructed, apply the test for solvability to each of them. If one of these two tests returns that the smaller instance is satisfiable, continue solving that instance until a complete solution has been derived.
To use self-reducibility to check the second property of a correct circuit for SAT, we rewrite it as follows:
Thus, we can test in
\Pi1
See Random self-reducibility for more information.
The Karp–Lipton theorem can be restated as a result about Boolean formulas with polynomially-bounded quantifiers. Problems in
\Pi2
\phi=\forallx\existsy \psi(x,y)
\psi
\Sigma2
s(x)=\existsy \psi(x,y)
\phi
\existsc\forall(x,z) V(c,z)\wedgec(s(x))
\Sigma2=\Pi2.
PH=\Sigma2.
Assume
NP\subseteqP/poly
Cn
Dn
Suppose L is a
\Pi2
L=\{z:\forallx.\existsy.\phi(x,y,z)\}
Since
\existsy.\phi(x,y,z)
Dn
n=|z|
Furthermore, the circuit can be guessed with existential quantification:
Obviously implies . If (1) is false, then
\neg\existsy.\phi(x,y,z)
\phi(x,D(x,z),z)
The proof has shown that a
\Pi2
L
\Sigma2
What's more, if the
\Pi2
\Pi2
\Pi2\subseteq
P | |
S | |
2 |
\subseteq\Sigma2
A modification[3] of the above proof yields
NP\subseteqP/poly\impliesAM=MA
(see Arthur–Merlin protocol).
Suppose that L is in AM, i.e.:
z\inL\implies\Pr\nolimitsx[\existsy.\phi(x,y,z)]\geq\tfrac{2}{3}
z\notinL\implies\Pr\nolimitsx[\existsy.\phi(x,y,z)]\leq\tfrac{1}{3}
and as previously rewrite
\existsy.\phi(x,y,z)
Dn
z\inL\implies\Pr\nolimitsx[\phi(x,Dn(x,z),z)]\geq\tfrac{2}{3}
z\notinL\implies\Pr\nolimitsx[\phi(x,Dn(x,z),z)]\leq\tfrac{1}{3}
Since
Dn
z\inL\implies\existsD.\Pr\nolimitsx[\phi(x,D(x,z),z)]\geq\tfrac{2}{3}
z\notinL\implies\forallD.\Pr\nolimitsx[\phi(x,D(x,z),z)]\leq\tfrac{1}{3}
which proves
L
Kannan's theorem[4] states that for any fixed k there exists a language
L
\Sigma2
\Sigma2\not\subseteqP/poly
Proof outline:
There exists a language
L\in\Sigma4-SIZE(nk)
SAT\notinP/poly
SAT\notinSIZE(nk)
SAT\inP/poly
\Sigma4=\Sigma2
L\in\Sigma2-SIZE(nk)
A stronger version of Karp–Lipton theorem strengthens Kannan's theorem to: for any k, there exists a language
L\in
P | |
S | |
2 |
-SIZE(nk)
It is also known that PP is not contained in
SIZE(nk)
PP\not\subseteqP/poly
PP\not\subseteqSIZE(nk)
P\#P |
\subseteqP/poly
P\#P |
\supseteqPP\supseteqMA
P\#P |
\supseteqPH\supseteq\Sigma2\supseteqMA
P\#P |
=MA
the containments are equalities and we get
PP=\Sigma2\not\subseteqSIZE(nk)
P | |
S | |
2 |
\subseteqZPPNP