# Has There Been Progress on the P vs. NP Question?

## Presentation on theme: "Has There Been Progress on the P vs. NP Question?"— Presentation transcript:

Has There Been Progress on the P vs. NP Question?
Scott Aaronson

P vs. NP: I Assume You’ve Heard of It
NP-complete Class of decision problems for which a YES answer can be verified in polynomial time (given an appropriate witness) NP P Class of decision problems solvable in polynomial time by a deterministic Turing machine

Importance of the P vs. NP Question
NP problems everywhere: machine learning, AI, biology… Gödel (in 1956 letter to von Neumann): If P=NP, then “apart from the postulation of axioms, the mental effort of the mathematician could be completely replaced by machine” One of the seven Clay Millennium Problems (and far and away the most important)

Wait … hasn’t P≠NP already been proved?
My controversial blog-response (from vacation): “If Vinay Deolalikar is awarded the \$1,000,000 Clay Millennium Prize for his proof of P≠NP, then I, Scott Aaronson, will personally supplement his prize by the amount of \$200,000.” Long Story Short Heroic “rapid response” by computer scientists and mathematicians (including Richard Lipton, Neil Immerman, Ryan Williams, Terry Tao, Timothy Gowers…) Communication mostly via blog comments After a few days, multiple fatal problems with the proof had emerged Deolalikar himself hasn’t retracted anything, but my condo seems safe…

How can you tell if a claimed P≠NP proof is wrong (without spending too much time on it)?
0. Proof invokes Nazis, Jesus Christ, the author’s parents… Lower bound argument for 3SAT would work equally well for problems known to be in P (2SAT, XORSAT) No “easier” lower bounds proved along the way Known results not encompassed as special cases No coherent plan of attack Proof is “nonlinear spaghetti”: no hierarchical structure, lemmas aren’t well-isolated, important concepts used before being defined… Argument runs afoul of one or more formal barriers (about which more later)

A Depressing Possibility…
From the standpoint of P vs. NP, the last 50 years of theoretical computer science have taken us around in circles and been a complete waste of time. Rest of the talk: We might be nowhere close to a proof, but at least the depressing possibility doesn’t hold! We’ve found (and continue to find) nontrivial insights that will play a role in the solution, assuming there is one.

Achievement 1: Increased Confidence That P vs
Achievement 1: Increased Confidence That P vs. NP Was The Right Question To Ask

The Unreasonable Robustness of P
A half-century of speculation about alternative computational models has taken us only slightly beyond P “But can’t soap bubbles solve the Minimum Steiner Tree problem in an instant, rendering P vs. NP irrelevant?” Would-be PNP provers: don’t get discouraged! Spin glasses, folding proteins, DNA computers, analog computers, even probabilistic and quantum computers still seem unable to solve all of NP in polynomial time

Achievement 2: Half a Century of Experience with Efficient Computation, Increasing One’s Confidence That PNP

P Trivial Problems #P Problems with Miraculous Cancellation
Determinant, counting planar perfect matchings, 3- regular-planar-mod-7-SAT… P Dynamic Programming #P Problems with Miraculous Positivity Test Matching, Littlewood- Richardson coefficients… Linear Programming Semidefinite/Convex Programming Polynomial Identity Testing (assuming P=BPP) Matrix Group Membership (modulo discrete log) Polynomial Factoring

Experimental Complexity Theory
We now have a pretty detailed “statistical physics understanding” of when and where NP-complete problems become hard [Achlioptas, Ricci-Tersenghi 2006] Known heuristic algorithms fail when a large connected cluster of solutions “melts” into exponentially many disconnected pieces

Claim: Had we been physicists, we would’ve long ago declared PNP a law of nature
Feynman apparently had trouble accepting that P vs. NP was an open problem at all! When people say: “What if P=NP? What if there’s an n10000 algorithm for SAT? Or an nlogloglog(n) algorithm?” Response: What if the aliens killed JFK to keep him from discovering that algorithm?

Achievement 3: Knowing What A Nontrivial Lower Bound Looks Like

So What Does One Look Like?
Lower bounds on proof complexity Monotone lower bound for Clique [Razborov] Lower bounds for constant-depth circuits [FSS, Ajtai, RS] Circuit lower bounds based on algebraic degree [Strassen, Mulmuley…] Lower bounds for specific algorithms (DPLL, GSAT…) nlog(n) lower bound on multilinear formula size [Raz] Bounds on spectral gaps for NP-complete problems [DMV, FGG] Time-space tradeoffs for SAT Circuit lower bounds for PP, MAEXP, etc. [BFT, Vinodchandran, Santhanam]

Metaquestion: Given how short these results fall of proving PNP, can we infer anything from them about what a proof of PNP would look like? Yes! Any proof of PNP will have to contain most of the known lower bounds as special cases Analogy: We don’t have a quantum theory of gravity, but the fact that it has to contain the existing theories (QM and GR) as limiting cases constrains it pretty severely This provides another explanation for why PNP is so hard, as well as a criterion for evaluating proposed approaches

Achievement 4: Formal Barriers

The known barriers, in one sentence each
Relativization [BGS’75]: Any proof of PNP (or even much weaker results) will need to use something specific about NP-complete problems—something that wouldn’t be true in a fantasy universe where P and NP machines could both solve PSPACE-complete problems for free Algebrization [AW’08]: Any proof of PNP (or even much weaker results) will need to use something specific about NP-complete problems, besides the extendibility to low-degree polynomials used in IP=PSPACE and other famous non-relativizing results Natural Proofs [RR’97]: Any proof of PNP will need to use some specific property of NP-complete problems, which couldn’t be exploited to certify a random Boolean function as hard (For otherwise, we could turn the proof around and use it to break pseudorandom generators—thereby solving many of the very same problems we were trying to prove intractable!)

P  EXP [Hartmanis-Stearns]
P  NP RELATIVIZATION ALGEBRIZATION MAEXP  P/poly [BFT] Parity  AC0 [FSS, Ajtai] NATURAL PROOFS NP  AC0 [Furst-Saxe-Sipser, Ajtai] NP  ACC0 NP  TC0 NP  NC NP  P/poly MAEXP  P/poly [Buhrman-Fortnow-Thierauf] NEXP  P/poly PSPACE  P/poly EXP  P/poly NP  P/poly

Achievement 5: Connections to “Real” Math

The Blum-Cucker-Shub-Smale Model
One can define analogues of P and NP over an arbitrary field F When F is finite (e.g., F=F2), we recover the usual P vs. NP question When F=R or F=C, we get an interesting new question with a “mathier” feel All three cases (F=F2, F=R, and F=C) are open, and no implications are known among them But the continuous versions (while ridiculously hard themselves) seem likely to be “easier” than the discrete version

Even Simpler: Permanent vs. Determinant
[Valiant 70’s]: Given an nn matrix A, suppose you can’t write per(A) as det(B), where B is a poly(n)poly(n) matrix of linear combinations of the entries of A. Then AlgNCAlg#P. This is important! It reduces a “P vs. NP-like” complexity question to algebraic geometry—a subject about which there are yellow books.

Mulmuley’s Geometric Complexity Theory (GCT) Program: “The String Theory of Computer Science”
To each (real) complexity class C, one can associate a (real) algebraic variety XC Dream: Show that X#P(n) has “too little symmetry” to be embedded into XNC(m). This would imply AlgNCAlg#P. X#P(n) = “Orbit closure” of the nn Permanent function, under invertible linear transformations of the entries XNC(m) = “Orbit closure” of the mm Determinant function, for some m=poly(n)

Mulmuley’s GCT Program: The String Theory of Computer Science
But where do we get any new leverage? Proposal: Exploit the “exceptional” nature of the Permanent and Determinant functions—the fact that these functions can be uniquely characterized by their symmetries—to reduce the embeddability problem to a problem in representation theory (Which merely requires a generalization of a generalization of a generalization of the Riemann Hypothesis over finite fields) Indeed, we already knew from Relativization / Algebrization / Natural Proofs that we’d have to exploit some special properties of the Permanent and Determinant, besides their being low-degree polynomials

Metaquestion: Why should P  NP be provable at all?
Indeed, people have speculated since the 70s about its possible independence from set theory—see [A.’03] If P  NP is a “universal statement about mathematics,” then why shouldn’t the proof require an infinite number of mathematical ideas? More concretely: if the proof needs to “know” that Matching is in P, Linear Programming is in P, etc., what doesn’t it need to know is in P? GCT suggests one possible answer: the proof would only need to know about “exceptional” problems in P (e.g., problems characterized by their symmetries)

Conclusions A proof of PNP might have to be the greatest synthesis of mathematical ideas ever (but don’t let that discourage you) “Obvious” starting point is Permanent vs. Determinant My prediction: Progress will come not by ignoring the last half-century of complexity theory and starting afresh, but by subsuming the many disparate facts we already know into something terrifyingly bigger If nothing else, this provides a criterion for evaluating proposed P vs. NP attempts, like the one we saw this summer

Similar presentations