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

Download Report

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

Has There Been Progress on the
P vs. NP Question?
Scott Aaronson (MIT)
P vs. NP: I Assume You’ve Heard of It
Frank Wilczek (Physics Nobel 2004) was recently
asked: “If you could ask a superintelligent alien
one yes-or-no question, what would it be?”
His response: “P vs. NP. That basically contains all
the other questions, doesn’t it?”
A Depressing Possibility…
From the standpoint of P vs. NP, the last 50 years of
complexity theory have taken us around in circles and
been a complete waste of time.
This 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.
The end is not in sight, but we’re not at the beginning
either.
Achievement 1: Increased
Confidence That P vs. NP Was The
Right Question To Ask
NP-completeness
Goal: Lift this box
What NP-completeness accomplished…
PCP
SAT
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!
Likewise for spin glasses, folding
proteins, DNA computers, analog
computers…
More serious challenges to the Polynomial-Time
Church-Turing Thesis have also been addressed…
Randomness: P = BPP under plausible assumptions
(indeed, assumptions that will probably have to be proved before PNP)
[NW94], [IW97], …
Nonuniform Algorithms: P/poly is “almost the same as P,”
for P vs. NP purposes [Karp-Lipton 82]
Quantum Computing: BQP probably is larger than P. But
even NPBQP doesn’t look like a “radically” different
conjecture from PNP
Quantum Gravity? What little we know is consistent with
BQP being the “end of the line”
E.g., topological quantum field theories can be simulated in BQP
[FKLW’02]
Achievement 2: Half a Century of
Experience with Efficient
Computation, Increasing One’s
Confidence That PNP
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 fairly impressive
“statistical physics understanding”
of the hardness of NP-complete
problems
[Achlioptas, Ricci-Tersenghi 2006]
Known heuristic CSP 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?
“But couldn’t you have said the same about Linear
Programming before Khachiyan, or primality before AKS?”
No. In those cases we had plenty of hints about what was
coming, from both theory and practice.
“But haven’t there been lots of surprises in complexity?”
Surprisingness (Logarithmic Scale)
1000000
100000
10000
1000
100
10
1
Barrington's
Theorem
NL=coNL
IP=PSPACE
Shor's
Algorithm
P=NP
Achievement 3: Knowing What A
Nontrivial Lower Bound Looks Like
Can P vs. NP Be Solved By
A “Fool’s Mate?”
(A 5-line observation that everyone somehow missed?)
Suppose P=NP. Then clearly PA=NPA for all oracles A.
But this is known to be false; hence PNP.
Fact [A.-Wigderson ’08]: Given a 3SAT formula , suppose a
randomized verifier needs (polylog n) queries to  to decide
if  is satisfiable, even given polylog(n) communication with a
competing yes-prover and no-prover (both of whom can exchange
private messages not seen by the other prover). Then PNP.
Proof: If P=NP, then NEXP=EXP=RG (where RG = Refereed
Games), and indeed NEXPA=EXPA=RGA for all oracles A.
So What Does A Real Chess Match 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 PNP, can we infer anything from them about
what a proof of PNP would look like?
Yes! Any proof of PNP (or at least of NPP/poly,
NPcoNP, etc.) 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
NEXPP/poly, etc.) will need to use something specific about NPcomplete problems—something that wouldn’t be true in a
fantasy universe
whereserious
P and NP
machines could both
solve
But don’t
mathematicians
ignore
PSPACE-complete
problems
for free
all these
barriers,
and just plunge ahead
Algebrization
[AW’08]:
proof
of PNP (or even
NEXPP/poly,
and
tackleAny
hard
problems—their
minds
etc.) will need to use
something specific
about NP-complete
unpolluted
by pessimism?
problems, besides the extendibility to low-degree polynomials
used in IP=PSPACE and other famous non-relativizing results
If you like to be unpolluted by pessimism,
Natural Proofs
[RR’97]:
Anythinking
proof of NPP/poly
(orNP?
even
why
are you
about P vs.
NPTC0, etc.) will need to use something specific about NPcomplete problems—some property that can’t be exploited to
efficiently certify a random Boolean function as hard (thereby
breaking pseudorandom generators, and doing many of very things 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 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 barrier problem in circuit
lower bounds to algebraic geometry—a subject about which
there are yellow books.
Mulmuley’s 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 mathematical statement”, 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 falsifiable 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
Open Problems
• P vs. NP
• Use GCT (or pieces of it) to prove something new about
computation
One natural place to look: Polynomial Identity Testing
• Evade the algebrization and natural proofs barriers, by
exploiting additional “magic properties” of NP- and #Pcomplete problems
Beyond the locality of 3SAT and the low degree / selfcorrectibility of the permanent
• “Experimental complexity theory”: What else can we do?