In
complexity theory, the Karp–Lipton theorem states that if the
Boolean satisfiability problem
In logic and computer science, the Boolean satisfiability problem (sometimes called propositional satisfiability problem and abbreviated SATISFIABILITY, SAT or B-SAT) is the problem of determining if there exists an interpretation that satisfies ...
(SAT) can be solved by
Boolean circuit
In computational complexity theory and circuit complexity, a Boolean circuit is a mathematical model for combinational digital logic circuits. A formal language can be decided by a family of Boolean circuits, one circuit for each possible in ...
s with a
polynomial
In mathematics, a polynomial is an expression consisting of indeterminates (also called variables) and coefficients, that involves only the operations of addition, subtraction, multiplication, and positive-integer powers of variables. An ex ...
number of logic gates, then
:
and therefore
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
In computational complexity theory, the polynomial hierarchy (sometimes called the polynomial-time hierarchy) is a hierarchy of complexity classes that generalize the classes NP and co-NP. Each class in the hierarchy is contained within PSPACE. ...
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
In computational complexity theory, a problem is NP-complete when:
# it is a problem for which the correctness of each solution can be verified quickly (namely, in polynomial time) and a brute-force search algorithm can find a solution by tryin ...
problems. A proof that such circuits do not exist would imply that
P ≠ NP
The P versus NP problem is a major unsolved problem in theoretical computer science. In informal terms, it asks whether every problem whose solution can be quickly verified can also be quickly solved.
The informal term ''quickly'', used above ...
. 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
Richard Manning Karp (born January 3, 1935) is an American computer scientist and computational theorist at the University of California, Berkeley. He is most notable for his research in the theory of algorithms, for which he received a Turi ...
and
Richard J. Lipton, who first proved it in 1980. (Their original proof collapsed PH to
, but
Michael Sipser
Michael Fredric Sipser (born September 17, 1954) is an American theoretical computer scientist who has made early contributions to computational complexity theory. He is a professor of applied mathematics and was the Dean of Science at the Massa ...
improved it to
.)
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
In computational complexity theory, PSPACE is the set of all decision problems that can be solved by a Turing machine using a polynomial amount of space.
Formal definition
If we denote by SPACE(''t''(''n'')), the set of all problems that can b ...
, 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. If coNP is assumed to be subset of
NP/poly, then the polynomial hierarchy collapses to its third level.
Intuition
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
to ''guess'' a correct circuit for SAT. The complexity class
describes problems of the form
:
where
is any polynomial-time computable predicate. The existential power of the first quantifier in this predicate can be used to guess a correct circuit for SAT, and the universal power of the second quantifier can be used to verify that the circuit is correct. Once this circuit is guessed and verified, the algorithm in class
can use it as a subroutine for solving other problems.
Self-reducibility
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
. That is, there exists a polynomial time computable predicate ''V'' such that ''c'' is a correct circuit if and only if, for all polynomially-bounded ''z'', ''V''(''c'',''z'') is true.
The circuit ''c'' is a correct circuit for SAT if it satisfies two properties:
*For every pair (''s'',''x'') where ''s'' is an instance of SAT and ''x'' is a solution to the instance, ''c''(''s'') must be true
*For every instance ''s'' of SAT for which ''c''(''s'') is true, ''s'' must be solvable.
The first of these two properties is already in the form of problems in class
. To verify the second property, we use the ''self-reducibility'' property of SAT.
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 ''s''
0 and ''s''
1 where ''s''
''i'' 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:
*For every instance ''s'' of SAT for which ''c''(''s'') is true, the self-reduction procedure described above finds a valid solution to ''s''.
Thus, we can test in
whether ''c'' is a valid circuit for solving SAT.
see
Random self-reducibility Random self-reducibility (RSR) is the rule that a good algorithm for the average case implies a good algorithm for the worst case. RSR is the ability to solve all instances of a problem by solving a large fraction of the instances.
Definition
If f ...
for more information
Proof of Karp–Lipton theorem
The Karp–Lipton theorem can be restated as a result about Boolean formulas with polynomially-bounded quantifiers. Problems in
are described by formulas of this type, with the syntax
:
where
is a polynomial-time computable predicate. The Karp–Lipton theorem states that this type of formula can be transformed in polynomial time into an equivalent formula in which the quantifiers appear in the opposite order; such a formula belongs to
. Note that the subformula
:
is an instance of SAT. That is, if ''c'' is a valid circuit for SAT, then this subformula is equivalent to the unquantified formula ''c''(''s''(''x'')). Therefore, the full formula for
is equivalent (under the assumption that a valid circuit ''c'' exists) to the formula
:
where ''V'' is the formula used to verify that ''c'' really is a valid circuit using self-reducibility, as described above. This equivalent formula has its quantifiers in the opposite order, as desired. Therefore, the Karp–Lipton assumption allows us to transpose the order of existential and universal quantifiers in formulas of this type, showing that
Repeating the transposition allows formulas with deeper nesting to be simplified to a form in which they have a single existential quantifier followed by a single universal quantifier, showing that
Another proof and S
Assume
. Therefore, there exists a family of circuits
that solves satisfiability on input of length ''n''. Using self-reducibility, there exists a family of circuits
which outputs a satisfying assignment on true instances.
Suppose ''L'' is a
set
:
Since
can be considered an instance of SAT (by
Cook-Levin theorem), there exists a circuit
, depending on
, such that the formula defining ''L'' is equivalent to
Furthermore, the circuit can be guessed with existential quantification:
Obviously () implies (). If (1) is false, then
. In this case, no circuit ''D'' can output an assignment making
true.
The proof has shown that a
set
is in
.
What's more, if the
formula is true, then the circuit ''D'' will work against any ''x''. If the
formula is false, then ''x'' making the formula (1) false will work against any circuit. This property means a stronger collapse, namely to
S complexity class (i.e.
). It was observed by Sengupta.
AM = MA
A modification of the above proof yields
:
(see
Arthur–Merlin protocol
In computational complexity theory, an Arthur–Merlin protocol, introduced by , is an interactive proof system in which the verifier's coin tosses are constrained to be public (i.e. known to the prover too). proved that all (formal) languag ...
).
Suppose that ''L'' is in AM, i.e.:
:
:
and as previously rewrite
using the circuit
that outputs a satisfying assignment if it exists:
:
:
Since
can be guessed:
:
:
which proves
is in the smaller class MA.
Application to circuit lower bounds – Kannan's theorem
Kannan
Kannan ( ta, கண்ணன்) is a Tamil male given name. Due to a Tamil tradition of using patronymic surnames, it may also be a surname for males and females. The name is derived from the Hindu god Krishna, who is offered the epithet of Kann ...
's theorem states that for any fixed ''k'' there exists a language
in
, which is not in SIZE(n
k) (This is a different statement than
, which is currently open and states that there exists a single language that is not in SIZE(n
k) for any ''k''). It is a simple
circuit lower bound.
Proof outline:
There exists a language
(the proof uses
diagonalization technique). Consider two cases:
* If
then
and theorem is proved.
* If
, then by Karp–Lipton theorem,
and therefore
.
A stronger version of Karp–Lipton theorem strengthens Kannan's theorem to: for any ''k'', there exists a language
.
It is also known that
PP is not contained in
, which was proved by Vinodchandran. Proof:
[ S. Aaronson]
Oracles Are Subtle But Not Malicious
/ref>
* If then .
* Otherwise, . Since
:: (by property of MA)
:: (by Toda's theorem
Toda's theorem is a result in computational complexity theory that was proven by Seinosuke Toda in his paper "PP is as Hard as the Polynomial-Time Hierarchy" and was given the 1998 Gödel Prize.
Statement
The theorem states that the entire poly ...
and property of MA)
:: (follows from assumption using interactive protocol for permanent, see P/poly)
: the containments are equalities and we get by Kannan's theorem.
References
*.
*.
{{DEFAULTSORT:Karp-Lipton theorem
Theorems in computational complexity theory