Has There Been Progress on the P vs. NP Question? Scott Aaronson P vs. NP: I Assume You’ve Heard of It NP-complete NP P Class of decision problems for which a YES answer can be verified in polynomial time (given an appropriate witness) 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… 1. Lower bound argument for 3SAT would work equally well for problems known to be in P (2SAT, XORSAT) 2. No “easier” lower bounds proved along the way 3. Known results not encompassed as special cases 4. No coherent plan of attack 5. Proof is “nonlinear spaghetti”: no hierarchical structure, lemmas aren’t well-isolated, important concepts used before being defined… 6. 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. 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 PNP 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 PNP Trivial Problems #P Problems with Miraculous Cancellation Determinant, counting planar perfect matchings, 3regular-planar-mod-7-SAT… Dynamic Programming Linear Programming Semidefinite/Convex Programming P #P Problems with Miraculous Positivity Test Matching, LittlewoodRichardson coefficients… 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 PNP 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? Monotone lower bound for CLIQUE [Razborov] Lower bounds on proof complexity Lower bounds for constantdepth circuits [FSS, Ajtai, RS] Circuit lower bounds based on algebraic degree [Strassen, Mulmuley…] Lower bounds for specific algorithms (DPLL, GSAT…) Bounds on spectral gaps for NPcomplete problems [DMV, FGG] nlog(n) lower bound on multilinear formula size [Raz] Time-space tradeoffs for SAT Circuit lower bounds for PP, MAEXP, etc. [BFT, Vinodchandran, Santhanam] Metaquestion: Given how short these results fall of proving PNP, can we infer anything from them about what a proof of PNP would look like? Yes! Any proof of PNP 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 PNP 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 PNP (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 PNP (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 PNP 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] RELATIVIZATION PARITY AC0 [FSS, Ajtai] NATURAL PROOFS P NP MAEXP P/poly [BFT] 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 per A n a S n i 1 i , i det A n sgn a S n i , i i 1 [Valiant 70’s]: Given an nn 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 AlgNCAlg#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 AlgNCAlg#P. X#P(n) = “Orbit closure” of the nn Permanent function, under invertible linear transformations of the entries XNC(m) = “Orbit closure” of the mm 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 PNP 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