You are on page 1of 9

review articles

doi:10.1145/ 1562164.1562186

It’s one of the fundamental mathematical


problems of our time, and its importance
grows with the rise of powerful computers.
By Lance Fortnow

The Status of
the P versus
NP Problem
The software written for this illustration
makes a stylized version of a network graph
that draws connections between elements
based on proximity. The graph constantly
changes as the elements sort themselves.

When editor-in-chief Moshe Vardi asked me to write increased, the cost of computing has
this piece for Communications, my first reaction was dramatically decreased, not to men-
tion the power of the Internet. Com-
the article could be written in two words: putation has become a standard tool
Still open. in just about every academic field.
Whole subfields of biology, chemis-
When I started graduate school in the mid-1980s, try, physics, economics and others are
many believed that the quickly developing area of devoted to large-scale computational
circuit complexity would soon settle the P versus modeling, simulations, and problem
solving.
NP problem, whether every algorithmic problem As we solve larger and more com-
with efficiently verifiable solutions have efficiently plex problems with greater computa-
tional power and cleverer algorithms,
computable solutions. But circuit complexity and the problems we cannot tackle begin
other approaches to the problem have stalled and to stand out. The theory of NP-com-
we have little reason to believe we will see a proof pleteness helps us understand these
limitations and the P versus NP prob-
separating P from NP in the near future. lem begins to loom large not just as
Nevertheless, the computer science landscape an interesting theoretical question in
computer science, but as a basic prin-
has dramatically changed in the nearly four decades ciple that permeates all the sciences.
since Steve Cook presented his seminal NP- So while we don’t expect the P ver-
completeness paper “The Complexity of Theorem- sus NP problem to be resolved in the
near future, the question has driven
Proving Procedures”10 in Shaker Heights, OH in early research in a number of topics to help
May, 1971. Computational power has dramatically us understand, handle, and even take

78 comm unicatio ns o f the ac m | s eptem ber 2009 | vo l . 5 2 | n o. 9


advantage of the hardness of various What is the P versus NP Problem? other (Clique)? What if we wanted to
computational problems. Suppose we have a large group of stu- sit students around a large round table
In this article I look at how people dents that we need to pair up to work with no incompatible students sitting
have tried to solve the P versus NP on projects. We know which students next to each other (Hamiltonian Cycle)?
problem as well as how this question are compatible with each other and we What if we put the students into three
has shaped so much of the research in want to put them in compatible groups groups so that each student is in the
computer science and beyond. I will of two. We could search all possible pair- same group with only his or her com-
look at how to handle NP-complete ings but even for 40 students we would patibles (3-Coloring)?
problems and the theory that has have more than 300 billion trillion pos- All these problems have a similar
developed from those approaches. sible pairings. favor: Given a potential solution, for
I show how a new type of “interac- In 1965, Jack Edmonds12 gave an ef- example, a seating chart for the round
tive proof systems” led to limitations ficient algorithm to solve this match- table, we can validate that solution ef-
of approximation algorithms and ing problem and suggested a formal ficiently. The collection of problems
consider whether quantum comput- definition of “efficient computation” that have efficiently verifiable solutions
ing can solve NP-complete problems (runs in time a fixed polynomial of the is known as NP (for “Nondeterministic
(short answer: not likely). And I close input size). The class of problems with Polynomial-Time,” if you have to ask).
by describing a new long-term project efficient solutions would later become So P = NP means that for every prob-
that will try to separate P from NP us- known as P for “Polynomial Time.” lem that has an efficiently verifiable
ing algebraic-geometric techniques. But many related problems do not solution, we can find that solution effi-
This article does not try to be totally seem to have such an efficient algo- ciently as well.
accurate or complete either technical- rithm. What if we wanted to make We call the very hardest NP problems
illustration by C.E.B. REAS

ly or historically, but rather informally groups of three students with each pair (which include Partition into Triangles,
describes the P versus NP problem of students in each group compatible Clique, Hamiltonian Cycle and 3-Col-
and the major directions in computer (Partition into Triangles)? What if we oring) “NP-complete,” that is, given an
science inspired by this question over wanted to find a large group of students efficient algorithm for one of them, we
the past several decades. all of whom are compatible with each can find an efficient algorithm for all

s e pt e m b e r 2 0 0 9 | vo l . 52 | n o. 9 | c om m u n ic at ions of t he acm 79
review articles

of them and in fact any problem in NP.


Steve Cook, Leonid Levin, and Richard
Karp10, 24, 27 developed the initial theory
of NP-completeness that generated
multiple ACM Turing Awards.
In the 1970s, theoretical comput- What we would
er scientists showed hundreds more
problems NP-complete (see Garey and
gain from P = NP
Johnson16). An efficient solution to any will make the whole
NP-complete problem would imply P =
NP and an efficient solution to every NP-
Internet look like a
complete problem. footnote in history.
Most computer scientists quickly
came to believe P ≠ NP and trying to
prove it quickly became the single most
important question in all of theoretical
computer science and one of the most
important in all of mathematics. Soon
the P versus NP problem became an im-
portant computational issue in nearly
every scientific discipline.
As computers grew cheaper and
more powerful, computation started
playing a major role in nearly every aca-
demic field, especially the sciences. The
more scientists can do with computers,
the more they realize some problems
seem computationally difficult. Many of
these fundamental problems turn out
to be NP-complete. A small sample:
˲˲ Finding a DNA sequence that best
fits a collection of fragments of the se-
quence (see Gusfield20).
˲˲ Finding a ground state in the Ising P = NP then public-key cryptography
model of phase transitions (see Cipra8). becomes impossible. True, but what
˲˲ Finding Nash Equilbriums with we will gain from P = NP will make the
specific properties in a number of envi- whole Internet look like a footnote in
ronments (see Conitzer9). history.
˲˲ Finding optimal protein threading Since all the NP-complete optimiza-
procedures.26 tion problems become easy, everything
˲˲ Determining if a mathematical will be much more efficient. Transpor-
statement has a short proof (follows tation of all forms will be scheduled
from Cook10). optimally to move people and goods
In 2000, the Clay Math Institute around quicker and cheaper. Manufac-
named the P versus NP problem as one turers can improve their production to
of the seven most important open ques- increase speed and create less waste.
tions in mathematics and has offered a And I’m just scratching the surface.
million-dollar prize for a proof that de- Learning becomes easy by using the
termines whether or not P = NP. principle of Occam’s razor—we simply
find the smallest program consistent
What If P = NP? with the data. Near perfect vision rec-
To understand the importance of the ognition, language comprehension and
P versus NP problem let us imagine translation and all other learning tasks
a world where P = NP. Technically we become trivial. We will also have much
could have P = NP, but not have practi- better predictions of weather and earth-
cal algorithms for most NP-complete quakes and other natural phenom-
problems. But suppose in fact we do enon.
have very quick algorithms for all these P = NP would also have big implica-
problems. tions in mathematics. One could find
Many focus on the negative, that if short, fully logical proofs for theorems

80 comm unicatio ns o f the acm | s eptem ber 2009 | vo l . 5 2 | n o. 9


review articles

but these proofs are usually extremely known as diagonalization, goes back to agonalization techniques to show some
long. But we can use the Occam razor the 19th century. NP-complete problems like Boolean
principle to recognize and verify math- In 1874, Georg Cantor7 showed the formula satisfiability cannot have algo-
ematical proofs as typically written in real numbers are uncountable using a rithms that use both a small amount of
journals. We can then find proofs of technique known as diagonalization. time and memory,39 but this is a long
theorems that have reasonable length Given a countable list of reals, Cantor way from P ≠ NP.
proofs say in under 100 pages. A person showed how to create a new real num- Circuit Complexity. To show P ≠ NP it
who proves P = NP would walk home ber not on that list. is sufficient to show some NP-complete
from the Clay Institute not with $1 mil- Alan Turing, in his seminal paper on problem cannot be solved by relatively
lion check but with seven (actually six computation,38 used a similar technique small circuits of AND, OR, and NOT
since the Poincaré Conjecture appears to show that the Halting problem is not gates (the number of gates bounded by
solved). computable. In the 1960s complexity a fixed polynomial in the input size).
Don’t get your hopes up. Complexity theorists used diagonalization to show In 1984, Furst, Saxe, and Sipser15
theorists generally believe P ≠ NP and that given more time or memory one showed that small circuits cannot solve
such a beautiful world cannot exist. can solve more problems. Why not use the parity function if the circuits have a
diagonalization to separate NP from P? fixed number of layers of gates. In 1985,
Approaches to Showing P ≠ NP Diagonalization requires simula- Razborov31 showed the NP-complete
Here, I present a number of ways we tion and we don’t know how a fixed NP problem of finding a large clique does
have tried and failed to prove P ≠ NP. machine can simulate an arbitrary P not have small circuits if one only allows
The survey of Fortnow and Homer14 machine. Also a diagonalization proof AND and OR gates (no NOT gates). If one
gives a fuller historical overview of these would likely relativize, that is, work even extends Razborov’s result to general cir-
techniques. if all machines involved have access to cuits one will have proved P ≠ NP.
illustration by C.E.B. REAS

Diagonalization. Can we just con- the same additional information. Bak- Razborov later showed his techniques
struct an NP language L specifically er, Gill and Solovay6 showed no relativ- would fail miserably if one allows NOT
designed so that every single polyno- izable proof can settle the P versus NP gates.32 Razborov and Rudich33 develop
mial-time algorithm fails to compute L problem in either direction. a notion of “natural” proofs and give
properly on some input? This approach, Complexity theorists have used di- evidence that our limited techniques

se pt e mb e r 2 0 0 9 | vo l. 52 | n o. 9 | c om m u n ic at ion s of t he acm 81
review articles

in circuit complexity cannot be pushed your problem all the time. But some- gives a fine-grained analysis of the com-
much further. And, in fact, we haven’t times you need to solve the problem plexity of NP-complete problems based
seen any significantly new circuit lower anyway. All hope is not lost. Here, I de- on their parameter size.
bounds in the past 20 years. scribe some of the tools one can use on Approximation. We cannot hope to
Proof Complexity. Consider the set NP-complete problems and how com- solve NP-complete optimization prob-
of Tautologies, the Boolean formulas ø putational complexity theory studies lems exactly but often we can get a good
of variables over ANDs, ORs, and NOTs these approaches. Typically one needs approximate answer. Consider the trav-
such that every setting of the variables to combine several of these approaches eling salesperson problem again with
to True and False makes ø true, for ex- when tackling NP-complete problems distances between cities given as the
ample the formula in the real world. crow flies (Euclidean distance). This
Brute Force. Computers have gotten problem remains NP-complete but Aro-
(x AND y) OR (NOT x) OR (NOT y). faster, much faster since NP-complete- ra4 gives an efficient algorithm that gets
ness was first developed. Brute force very close to the best possible route.
A literal is a variable or its negation, search through all possibilities is now Consider the MAX-CUT problem
such as x or NOT x. A formula, like the possible for some small problem in- of dividing people into two groups to
one here, is in Disjunctive Normal Form stances. With some clever algorithms maximize the number of incompatibles
(DNF) if it is the OR of ANDs of one or we can even solve some moderate size between the groups. Goemans and Wil-
more literals. problems with ease. liamson17 use semi-definite program-
If a formula ø is not a tautology, we The NP-complete traveling sales- ming to give a division of people only a
can give an easy proof of that fact by ex- person problem asks for the smallest .878567 factor of the best possible.
hibiting an assignment of the variables distance tour through a set of specified Heuristics and Average-Case Com-
that makes ø false. But if ø were indeed a cities. Using extensions of the cutting- plexity. The study of NP-completeness
tautology, we don’t expect short proofs. plane method we can now solve, in focuses on how algorithms perform on
If one could prove there are no short practice, traveling salespeople prob- the worst possible inputs. However the
proofs of tautology that would imply P lems with more than 10,000 cities (see specific problems that arise in practice
≠ NP. Applegate3). may be much easier to solve. Many com-
Resolution is a standard approach to Consider the 3SAT problem, solving puter scientists employ various heuris-
proving tautologies of DNFs by finding Boolean formula satisfiability where tics to solve NP-complete problems that
two clauses of the form (y1 AND x) and formulas are in the form of the AND of arise from the specific problems in their
(y2 AND NOT x) and adding the clause several clauses where each clause is the fields.
(y1 AND y2). A formula is a tautology ex- OR of three literal variables or nega- While we create heuristics for many
actly when one can produce an empty tions of variables). 3SAT remains NP- of the NP-complete problems, Boolean
clause in this manner. complete but the best algorithms can formula Satisfiability (SAT) receives
In 1985, Armin Haken21 showed that in practice solve SAT problems on about more attention than any other. Boolean
tautologies that encode the pigeon- 100 variables. We have similar results formulas, especially those in conjunc-
hole principle (n + 1 pigeons in n holes for other variations of satisfiability and tive normal form (CNF), the AND of ORs
means some hole has more than one many other NP-complete problems. of variables and their negations, have a
pigeon) do not have short resolution But for satisfiability on general for- very simple description and yet are gen-
proofs. mulae and on many other NP-complete eral enough to apply to a large number
Since then complexity theorists have problems we do not know algorithms of practical scenarios particularly in
shown similar weaknesses in a number better than essentially searching all the software verification and artificial in-
of other proof systems including cutting possibilities. In addition, all these algo- telligence. Most natural NP-complete
planes, algebraic proof systems based rithms have exponential growth in their problems have simple efficient reduc-
on polynomials, and restricted versions running times, so even a small increase tions to the satisfiability of Boolean for-
of proofs using the Frege axioms, the in the problem size can kill what was an mulas. In competition these SAT solvers
basic axioms one learns in an introduc- efficient algorithm. Brute force alone can often settle satisfiability of formulas
tory logic course. will not solve NP-complete problems no of one million variables.a
But to prove P ≠ NP we would need matter how clever we are. Computational complexity theo-
to show that tautologies cannot have Parameterized Complexity. Consider rists study heuristics by considering
short proofs in an arbitrary proof sys- the Vertex Cover problem, find a set of average-case complexity—how well can
tem. Even a breakthrough result show- k “central people” such that for every algorithms perform on average from in-
ing tautologies don’t have short general compatible pair of people, at least one stances generated by some specific dis-
Frege proofs would not suffice in sepa- of them is central. For small k we can tribution.
rating NP from P. determine whether a central set of peo- Leonid Levin28 developed a theory of
ple exists efficiently no matter the total efficient algorithms over a specific dis-
Dealing with Hardness number n of people we are considering. tribution and formulated a distribution-
So you have an NP-complete problem For the Clique problem even for small k al version of the P versus NP problem.
you just have to solve. If, as we believe, P the problem can still be difficult. Some problems, like versions of the
≠ NP you won’t find a general algorithm Downey and Fellows11 developed a
that will correctly and accurately solve theory of parameterized complexity that a http://www.satcompetition.org.

82 communicatio ns o f th e acm | s eptem ber 2009 | vo l . 5 2 | n o. 9


review articles

shortest vector problem in a lattice or tio of nearly √n unless P = NP. See Mad-
computing the permanent of a ma- hu Sudan’s recent article in Communi-
trix, are hard on average exactly when cations for more details and references
they are hard on worst-case inputs, but on PCPs.36
neither of these problems is believed
to be NP-complete. Whether similar We expect P ≠ NP One can do even better assuming
a “Unique Games Conjecture” that
worst-to-average reductions hold for
NP-complete sets is an important open
to hold in very there exists PCPs for NP problems with
some stronger properties. Consider the
problem. strong ways. MAX-CUT problem of dividing people
Average-case complexity plays an im-
portant role in many areas of computer
We can use discussed earlier. If the unique games
conjecture holds one cannot do bet-
science, particularly cryptography, as strong hardness ter than the .878567 factor given by the
discussed later.
assumptions as Goemans-Williamson approximation
algorithm.26 Recent work shows how to
Interactive Proofs and a positive tool, get a provably best approximation for
Limits of Approximation
Previously, we saw how sometimes one particularly essentially any constrained problem as-
suming this conjecture.30
can get good approximate solutions to to create Using Hardness
NP-complete optimization problems.
Many times though we seem to hit a cryptographic In “What If P = NP?” we saw the nice
limit on our ability to even get good ap-
proximations. We now know that we
protocols and world that arises when we assume P =
NP. But we expect P ≠ NP to hold in very
cannot achieve better approximations to reduce or strong ways. We can use strong hard-
on many of these problems unless P =
NP and we could solve these problems
even eliminate ness assumptions as a positive tool,
particularly to create cryptographic pro-
exactly. The techniques to show these the need of random tocols and to reduce or even eliminate
negative results came out of a new mod-
el of proof system originally developed bits in probabilistic the need of random bits in probabilistic
algorithms.
for cryptography and to classify group algorithms. Cryptography. We take it for granted
theoretic algorithmic problems. these days, the little key or lock on our
As mentioned earlier, we don’t ex- Web page that tells us that someone
pect to have short traditional proofs of listening to the network won’t get the
tautologies. But consider an “interac- credit card number I just sent to an on-
tive proof” model where a prover Peggy line store or the password to the bank
tries to convince a verifier Victor that a that controls my money. But public-key
formula ø is a tautology. Victor can ask cryptography, the ability to send secure
Peggy randomly generated questions messages between two parties that have
and need only be convinced with high never privately exchanged keys, is a rela-
confidence. Quite surprisingly, these tively new development based on hard-
proof systems have been shown to ex- ness assumptions of computational
ist not only for tautologies but for any problems.
problem computable in a reasonable If P = NP then public-key cryptogra-
amount of memory. phy is impossible. Assuming P ≠ NP is
A variation known as a “probabilisti- not enough to get public-key protocols,
cally checkable proof system” (PCPs), instead we need strong average-case as-
where Peggy writes down an encoded sumptions about the difficulty of factor-
proof and Victor can make random- ing or related problems.
ized queries to the bits of the proof, has We can do much more than just pub-
applications for approximations. The lic-key cryptography using hard prob-
“PCP Theorem” optimizes parameters, lems. Suppose Alice’s husband Bob is
which in its strong form shows that ev- working on a Sudoku puzzle and Alice
ery language in NP has a PCP where Vic- claims she has a solution to the puzzle
tor uses a tiny number of random coins (solving a n × n Sudoku puzzle is NP-
and queries only three bits of the proof. complete). Can Alice convince Bob that
One can use this PCP theorem to she knows a solution without revealing
show the limitations of approximation any piece of it?
for a large number of optimization ques- Alice can use a “zero-knowledge
tions. For example, one cannot approxi- proof,” an interactive proof with the ad-
mate the largest clique in a group of n ditional feature that the verifier learns
people by more than a multiplicative ra- nothing other than some property

s e pt e m b e r 2 0 0 9 | vo l . 52 | n o. 9 | c om m u n ic at ions of t he acm 83
review articles

holds, like a Sudoku puzzle having a so- ciently and avoid the need for random-
lution. Every NP search problem has a ness altogether.
zero-knowledge proof under the appro- Thus complexity theorists generally
priate hardness assumptions. believe having randomness does not
Online poker is generally played help in solving NP search problems and
through some “trusted” Web site, usu- that NP-complete problems do not have
ally somewhere in the Caribbean. Can efficient solutions, either with or with-
we play poker over the Internet without out using truly random bits.
a trusted server? Using the right cryp- While randomness doesn’t seem
tographic assumptions, not only poker necessary for solving search problems,
but any protocol that uses a trusted par- the unpredictability of random bits
ty can be replaced by one that uses no plays a critical role in cryptography and
trusted party and the players can’t cheat interactive proof systems and likely can-
or learn anything new beyond what they not be avoided in these scenarios.
could do with the trusted party.b
Eliminating Randomness. In the 1970s Could Quantum Computers
we saw a new type of algorithm, one that Solve NP-Complete Problems?
used random bits to aid in finding a so- While we have randomized and non-
lution to a problem. Most notably we randomized efficient algorithms for de-
had probabilistic algorithms35 for deter- termining whether a number is prime,
mining whether a number is prime, an these algorithms usually don’t give us
important routine needed for modern the factors of a composite number.
cryptography. In 2004, we discovered Much of modern cryptography relies on
we don’t need randomness at all to effi- the fact that factoring or similar prob-
ciently determine if a number is prime.2 lems do not have efficient algorithms.
Does randomness help us at all in find- In the mid-1990s, Peter Shor34
ing solutions to NP problems? showed how to factor numbers using
Truly independent and uniform a hypothetical quantum computer. He
random bits are either very difficult or also developed a similar quantum al-
impossible to produce (depending on gorithm to solve the discrete logarithm NP can be seen as a graph where every
your beliefs about quantum mechan- problem. The hardness of discrete log- element is connected to every other
element. Over these pages a deconstruction
ics). Computer algorithms instead use arithm on classical computers is also of the graph is shown.
pseudorandom generators to gener- used as a basis for many cryptographic
ate a sequence of bits from some given protocols. Nevertheless, we don’t ex- search problems so any algorithm would
seed. The generators typically found on pect that factoring or finding discrete have to use some special structure of NP-
our computers usually work well but oc- logarithms are NP-complete. While we complete problems that we don’t know
casionally give incorrect results both in don’t think we have efficient algorithms about. We have used some algebraic
theory and in practice. to solve factoring or discrete logarithm, structure of NP-complete problems for
We can create theoretically better we also don’t believe we can reduce NP- interactive and zero-knowledge proofs
pseudorandom generators in two dif- complete problems like Clique to the but quantum algorithms would seem to
ferent ways, one based on the strong factoring or discrete logarithm prob- require much more.
hardness assumptions of cryptography lems. Lov Grover19 did find a quantum al-
and the other based on worst-case com- So could quantum computers one gorithm that works on general NP prob-
plexity assumptions. I will focus on this day solve NP-complete problems? Un- lems but that algorithm only achieves
second approach. likely. a quadratic speed-up and we have evi-
We need to assume a bit more than I’m not a physicist so I won’t address dence that those techniques will not go
P ≠ NP, roughly that NP-complete prob- the problem as to whether these ma- further.
lems cannot be solved by smaller than chines can actually be built at a large Meanwhile quantum cryptography,
expected AND-OR-NOT circuits. A long enough scale to solve factoring prob- using quantum mechanics to achieve
series of papers showed that, under this lems larger than we can with current some cryptographic protocols without
assumption, any problem with an ef- technology (about 200 digits). After bil- hardness assumptions, has had some
ficient probabilistic algorithm also has lions of dollars of funding of quantum success both in theory and in practice.
an efficient algorithm that uses a pseu- computing research we still have a long
dorandom generator with a very short way to go. A New Hope?
seed, a surprising connection between Even if we could build these ma- Ketan Mulmuley and Milind Sohoni
hard languages and pseudo-random- chines, Shor’s algorithm relies heavily on have presented an approach to the P
ness (see Impagliazzo23). The seed is so the algebraic structures of numbers that versus NP problem through algebraic
short we can try all possible seeds effi- we don’t see in the known NP-complete geometry, dubbed Geometric Complex-
problems. We know that his algorithm ity Theory, or GCT.29
b See the survey of Goldreich18 for details. cannot be applied to generic “black-box” This approach seems to avoid the dif-

84 communicatio ns o f th e ac m | s eptem ber 2009 | vo l . 5 2 | n o. 9


review articles

ficulties mentioned earlier, but requires natorial algorithm for the integer pro- provide some insight to the P versus NP
deep mathematics that could require gramming problem for Pn, and; problem.
many years or decades to carry through. 3. Prove that this simple algorithm Mulmuley and Sohoni have reduced
In essence, they define a family of always answers “yes.” a question about the nonexistence of
high-dimension polygons Pn based on Since the polygons Pn are algebro-geo- polynomial-time algorithms for all NP-
group representations on certain alge- metric in nature, solving (1) is thought to complete problems to a question about
braic varieties. Roughly speaking, for require algebraic geometry, representa- the existence of a polynomial-time al-
each n, if Pn contains an integral point, tion theory, and the theory of quantum gorithm (with certain properties) for a
then any circuit family for the Hamil- groups. Mulmuley and Sohoni have giv- specific problem. This should give us
tonian path problem must have size at en reasonable algebro-geometric condi- some hope, even in the face of problems
least nlog n on inputs of size n, which im- tions that imply (1). These conditions (1)–(3).
plies P ≠ NP. Thus, to show that P ≠ NP have classical analogues that are known Nevertheless, Mulmuley believes it
it suffices to show that Pn contains an to hold, based on the Riemann Hypoth- will take about 100 years to carry out this
integral point for all n. esis over finite fields (a theorem proved program, if it works at all.
Although all that is necessary is to by André Weil in the 1960s). Mulmuley
show that Pn contains an integral point and Sohoni suggest that an analogous Conclusion
for all n, Mulmuley and Sohoni argue Riemann Hypothesis-like statement is This survey focused on the P versus NP
that this direct approach would be dif- required here (though not the classical problem, its importance, our attempts
ficult and instead suggest first showing Riemann Hypothesis). to prove P ≠ NP and the approaches we
that the integer programming problem Although step (1) is difficult, Mulmu- use to deal with the NP-complete prob-
for the family Pn is, in fact, in P. Under ley and Sohoni have provided definite lems that nature and society throws
this approach, there are three signifi- conjectures based on reasonable math- at us. Much of the work mentioned
illustration by C.E.B. REAS

cant steps remaining: ematical analogies that would solve required a long series of mathemati-
1. Prove that the LP relaxation solves (1). In contrast, the path to completing cally difficult research papers that I
the integer programming problem for steps (2) and (3) is less clear. Despite could not hope to adequately cover
Pn in polynomial time; these remaining hurdles, even solving in this short article. Also the field of
2. Find an efficient, simple combi- the conjectures involved in (1) could computational complexity goes well

s e pt e m b e r 2 0 0 9 | vo l . 52 | n o. 9 | c om m u n ic at ions of t he acm 85
review articles

beyond just the P versus NP problem son still gives the best overview of the P (June 2003).
15. Furst, M., Saxe, J., and Sipser, M. Parity, circuits and
that I haven’t discussed here. In “Fur- versus NP problem with an incredibly the polynomial-time hierarchy. Mathematical Systems
ther Reading,” a number of references useful list of NP-complete problems.16 Theory 17 (1984), 13–27.
16. Garey, M. and Johnson, D. Computers and Intractability.
are presented for those interested in a ˲˲ Scott Aaronson looks at the unlikely A Guide to the Theory of NP-Completeness. W. H.
deeper understanding of the P versus possibility that the P versus NP problem Freeman and Company, NY, 1979.
17. Goemans, M. and Williamson, D. Improved
NP problem and computational com- is formally independent.1 approximation algorithms for maximum cut and
plexity. ˲˲ Russell Impagliazzo gives a wonder- satisfiability problems using semidefinite programming.
Journal of the ACM 42, 6 (1995), 1115–1145.
The P versus NP problem has gone ful description of five possible worlds of 18. Goldreich, O. Foundations of cryptography|a primer.
from an interesting problem related to complexity.22 Foundations and Trends in Theoretical Computer
Science 1, 1 (2005) 1–116.
logic to perhaps the most fundamental ˲˲ Sanjeev Arora and Boaz Barak have 19. Grover, L. A fast quantum mechanical algorithm for
database search. In Proceedings of the 28th ACM
and important mathematical question a new computational complexity text- Symposium on the Theory of Computing. ACM, NY,
of our time, whose importance only book with an emphasis on recent re- 1996, 212–219.
20. Gusfield, D. Algorithms on Strings, Trees and
grows as computers become more pow- search directions.5 Sequences: Computer Science and Computational
erful and widespread. The question has ˲˲ The Foundations and Trends in Theo- Biology. Cambridge University Press, 1997.
21. Haken, A. The intractability of resolution. Theoretical
even hit popular culture appearing in retical Computer Science journal and the Computer Science, 39 (1985) 297–305.
television shows such as The Simpsons Computational Complexity columns of 22. Impagliazzo, R. A personal view of average-case
complexity theory. In Proceedings of the 10th Annual
and Numb3rs. Yet many only know of the Bulletin of the European Association Conference on Structure in Complexity Theory. IEEE
the basic principles of P versus NP and of Theoretical Computer Science and SI- Computer Society Press, 1995, 134–147.
23. Impagliazzo, R. and Wigderson, A. P = BPP if E requires
I hope this survey has given you a small GACT News have many wonderful sur- exponential circuits: Derandomizing the XOR lemma. In
feeling of the depth of research inspired veys on various topics in theory includ- Proceedings of the 29th ACM Symposium on the Theory
of Computing. ACM, NY, 1997, 220–229.
by this mathematical problem. ing those mentioned in this article. 24. Karp, R. Reducibility among combinatorial problems.
Proving P ≠ NP would not be the end ˲˲ Read the blog Computational Com- Complexity of Computer Computations. R. Miller and J.
Thatcher, Eds. Plenum Press, 1972, 85–103.
of the story, it would just show that NP- plexity and you will be among the first to 25. Khot, S., Kindler, G., Mossel, E., and O’Donnell, R.
complete problem, don’t have efficient know about any updates of the status of Optimal inapproximability results for MAX-CUT and
other 2-variable CSPs? SIAM Journal on Computing
algorithms for all inputs but many ques- the P versus NP problem.13 37, 1 (2007), 319–357.
26. Lathrop, R. The protein threading problem with
tions might remain. Cryptography, for sequence amino acid interaction preferences is NP-
example, would require that a problem Acknowledgments complete. Protein Engineering 7, 9 (1994), 1059–1068.
27. Levin, L. Universal’nyie perebornyie zadachi (Universal
like factoring (not believed to be NP- Thanks to Rahul Santhanam for many search problems: in Russian). Problemy Peredachi
complete) is hard for randomly drawn useful discussions and comments. Josh Informatsii 9, 3 (1973), 265–266. Corrected English
translation.37
composite numbers. Grochow wrote an early draft. The anon- 28. Levin, L. Average case complete problems. SIAM
Proving P ≠ NP might not be the start ymous referees provided critical advice. Journal on Computing 15, (1986), 285–286.
29. Mulmuley, K. and Sohoni, M. Geometric complexity
of the story either. Weaker separations Some of the material in this article has theory I: An approach to the P vs. NP and related
remain perplexingly difficult, for exam- appeared in my earlier surveys and my problems. SIAM Journal on Computing 31, 2, (2001)
496–526.
ple showing that Boolean-formula Satis- blog.13 30. Raghavendra, P. Optimal algorithms and
fiability cannot be solved in near-linear inapproximability results for every csp? In Proceedings
of the 40th ACM Symposium on the Theory of
time or showing that some problem References
Computing. ACM, NY, 2008, 245–254.
1. Aaronson, S. Is P versus NP formally independent?
using a certain amount of memory can- 31. Razborov, A. Lower bounds on the monotone
Bulletin of the European Association for Theoretical
complexity of some Boolean functions. Soviet
not be solved using roughly the same Computer Science 81 (Oct. 2003).
Mathematics-Doklady 31, (1985) 485–493.
2. Agrawal, M., Kayal, N., and Saxena, N. PRIMES. In
amount of time. 32. Razborov, A. On the method of approximations. In
Annals of Mathematics 160, 2 (2004) 781–793.
Proceedings of the 21st ACM Symposium on the Theory
None of us truly understands the P 3. Applegate, D., Bixby, R., Chvátal, V., and Cook, W. On the
of Computing. ACM, NY, 1989, 167–176.
solution of traveling salesman problems. Documenta
33. Razborov, A., and Rudich, S. Natural proofs. Journal
versus NP problem, we have only begun Mathematica, Extra Volume ICM III (1998), 645–656.
of Computer and System Sciences 55, 1 (Aug. 1997),
to peel the layers around this increas- 4. Arora, S. Polynomial time approximation schemes for
24–35.
Euclidean traveling salesman and other geometric
34. Shor. P. Polynomial-time algorithms for prime
ingly complex question. Perhaps we will problems. J. ACM 45, 5 (Sept. 1998), 753–782.
factorization and discrete logarithms on a quantum
5. Arora, S. and Barak, B. Complexity Theory: A Modern
see a resolution of the P versus NP prob- Approach. Cambridge University Press, Cambridge,
computer. SIAM Journal on Computing 26, 5 (1997)
1484–1509.
lem in the near future but I almost hope 2009.
35. Solovay, R. and Strassen, V. A fast Monte-Carlo test for
6. Baker, T., Gill, J., and Solovay, R. Relativizations of the P
not. The P versus NP problem continues = NP question. SIAM Journal on Computing 4, 4 (1975),
primality. SIAM Journal on Computing 6 (1977), 84–85.
See also erratum 7:118, 1978.
to inspire and boggle the mind and con- 431–442.
36. Sudan, M. Probabilistically checkable proofs. Commun.
7. Cantor, G. Ueber eine Eigenschaft des Inbegriffes
tinued exploration of this problem will aller reellen algebraischen Zahlen. Crelle’s Journal 77
ACM 52, 3 (Mar. 2009) 76–84.
37. Trakhtenbrot, R. A survey of Russian approaches to
lead us to yet even new complexities in (1874), 258–262.
Perebor (brute-force search) algorithms. Annals of the
8. Cipra, B. This Ising model is NP-complete. SIAM News
that truly mysterious process we call 33, 6 (July/Aug. 2000).
History of Computing 6, 4 (1984), 384–400.
38. Turing, A. On computable numbers, with an application
computation. 9. Conitzer, V. and Sandholm, T. New complexity results
to the Etscheidungs problem. Proceedings of the
about Nash equilibria. Games and Economic Behavior
London Mathematical Society 42 (1936), 230–265.
63, 2 (July 2008), 621–641.
39. van Melkebeek, D. A survey of lower bounds for
Further Reading 10. Cook, S. The complexity of theorem-proving
satisfiability and related problems. Foundations and
procedures. In Proceedings of the 3rd ACM Symposium
Recommendations for a more in-depth Trends in Theoretical Computer Science 2, (2007),
on the Theory of Computing, ACM, NY, 1971, 151–158.
197–303.
look at the P versus NP problem and the 11. Downey, R. and Fellows, M. Parameterized Complexity.
Springer, 1999.
other topics discussed in this article: 12. Edmonds, J. Paths, trees and owers. Canadian Journal
˲˲ Steve Homer and I have written a of Mathematics 17, (1965), 449–467. Lance Fortnow (fortnow@eecs.northwestern.edu) is a
13. Fortnow, L. and Gasarch, W. Computational complexity; professor of electrical engineering and computer science
detailed historical view of computation- http://weblog.fortnow.com. at Northwestern University’s McCormick School of
14. Fortnow, L. and Homer, S. A short history of Engineering, Evanston, IL.
al complexity.14 computational complexity. Bulletin of the European
˲˲ The 1979 book of Garey and John- Association for Theoretical Computer Science 80, © 2009 ACM 0001-0782/09/0900 $10.00

86 communicatio ns o f th e ac m | s eptem ber 2009 | vo l . 5 2 | n o. 9

You might also like