Lab
Why Proof Complexity?
Here I present one of the introductory results that make Proof Complexity exciting.
Introduction
I recently read the introductory lecture to COMS E6998 Proof Complexity and Applications (Spring’25) and thought I’d share this beautifully tantilizing result.
Proof complexity studies the resources required to prove logical statements in different proof systems. Its central questions resemble those of ordinary computational complexity:
- How long must a proof be?
- How difficult is it to find one?
- How do different proof systems compare?
The result I want to explain here connects the first of these questions directly to versus :
Equivalently, proving that no polynomially bounded proof system exists would separate from , and therefore also prove
See this lab page for information on P vs. NP.
The remarkable part is that, once the definitions are in place, the proof is almost immediate.
Boolean formulas and tautologies
We will work with propositional formulas built from Boolean variables and the usual connectives
A truth assignment assigns each variable either or . A formula is satisfiable if it evaluates to true under at least one assignment, and it is a tautology if it evaluates to true under every assignment.
We write
The use of binary strings here is not especially profound. We simply choose some reasonable way to encode formulas as finite strings so that they can be given as input to an algorithm.
A formula is a tautology precisely when its negation is unsatisfiable. Consequently, proving tautologies and refuting unsatisfiable formulas are two versions of the same task.
A very quick reminder about NP and coNP
A language belongs to when membership in has efficiently verifiable certificates. Formally, there must be a polynomial-time algorithm and a polynomial such that
The string is the certificate. It is not the verification algorithm; it is the object given to the verification algorithm.
For example, a satisfying assignment is a short certificate that a Boolean formula is satisfiable. Given the assignment, we can simply evaluate the formula.
The class consists of the complements of languages in :
Since is -complete, its complement is -complete. Equivalently, is -complete.
Informally:
- contains problems whose yes-instances have short, efficiently checkable certificates;
- contains problems whose no-instances have short, efficiently checkable certificates.
The question therefore asks, among other things, whether every tautology has some polynomial-size certificate of being a tautology.
This is where proof complexity enters.
Propositional proof systems
Ordinarily, a proof system is described by axioms and inference rules. For complexity theory, Cook and Reckhow gave a wonderfully general definition that forgets the internal syntax and remembers only what matters computationally: proofs must be efficiently checkable.
A propositional proof system is a polynomial-time algorithm
such that, for every encoded formula ,
Here:
- is the encoding of the formula;
- is the encoding of a purported proof;
- is the proof verifier.
The two directions of the equivalence encode the familiar logical requirements.
Soundness
If the verifier accepts a proof, then the formula really is a tautology:
A sound proof system never proves a false statement.
Completeness
Every tautology has some proof that the verifier accepts:
A complete proof system can prove every statement it is supposed to prove.
Thus soundness and completeness together say
Resolution, Frege systems and many algebraic proof systems can all be encoded in this form.
Efficient verification does not mean short proofs
The verifier must run in time polynomial in the lengths of both its inputs:
This does not imply that verification takes polynomial time in alone. The proof might itself be exponentially long.
For example, there is a trivial truth-table proof system. To prove that a formula in variables is a tautology, the proof can contain its entire truth table. The verifier checks every row and confirms that the formula always evaluates to true.
This proof is efficiently checkable relative to its own length, but it may have rows. The system is sound and complete, but its proofs need not be short.
This leads to the central definition.
Polynomially bounded proof systems
A propositional proof system is polynomially bounded if there exists a polynomial such that every tautology has an accepted proof of length at most :
The distinction is essential:
- every propositional proof system has efficiently verifiable proofs;
- a polynomially bounded proof system would give every tautology a polynomial-length proof.
We can now state the result that makes this definition so exciting.
The Cook—Reckhow theorem
Theorem. There exists a polynomially bounded propositional proof system if and only if
Equivalently,
Despite its significance, the proof is remarkably short.
Polynomially bounded proofs imply
Suppose that a polynomially bounded propositional proof system exists.
Then membership in has polynomial-size certificates: on input , guess a polynomial-length proof and run .
Therefore,
But is -complete. Hence every problem in can be reduced to a problem in , and so
Taking complements gives the reverse inclusion:
Consequently,
implies polynomially bounded proofs
Conversely, suppose
We already know that
Under our assumption, this means
By the certificate characterization of , there must therefore exist a polynomial-time verifier and a polynomial such that
But this is exactly a polynomially bounded propositional proof system.
Therefore,
This proves both directions.
Why this would separate P from NP
The class is closed under complementation. Therefore, if
then
Taking the contrapositive gives
Combining this with the Cook—Reckhow theorem, we obtain
What remains far beyond us is a lower bound against every polynomial-time verifiable proof system at once.
Very cool.