12.07.2015 Views

Heller M, Woodin W.H. (eds.) Infinity. New research frontiers (CUP, 2011)(ISBN 1107003873)(O)(327s)_MAml_

Heller M, Woodin W.H. (eds.) Infinity. New research frontiers (CUP, 2011)(ISBN 1107003873)(O)(327s)_MAml_

Heller M, Woodin W.H. (eds.) Infinity. New research frontiers (CUP, 2011)(ISBN 1107003873)(O)(327s)_MAml_

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

the infinite in the finite: p versus np 73Thus, even the study of finite algorithms immediately brings us to the threshold ofinfinity and to the undecidable.2.11 The Infinite in the Finite: P versus NPThe advent of computers has brought back the Aristotelian, finitistic point of viewcloser to the real world, so a new notion of finite has taken hold. On the one hand, wehave the finite reachable by a computing machine, exemplified by short programs withshort running time; on the other hand, we have the impossibly large finite, exemplifiedby short programs with a running time greater than the age of the universe, exemplifiedby the busy beaver program in two symbols and six states, with a set of only twelveinstructions and a running time in excess of 10 865 steps.The new central question posed by such a notion is best described by means of anexample. Suppose we write a very large integer, say, of 500 digits, and ask to factor it.Suppose we also ask the help of the Oracle of Delphi to solve the problem, and thatwe do get an answer. Then we can quickly check the truth of the oracle by multiplyingtogether the factors. Because multiplication of two numbers can be done in a fewsteps, numbering not more than the square of the number of bits needed to describe thetwo factors (think of the number of digits), we speak of multiplication, hence also ofchecking factorization, as having polynomial complexity.On the other hand, factoring large numbers (say, of several hundred digits) remainsextremely difficult and still represents a challenge well beyond the power of computersand mathematicians. For a theoretical model of quantum computing, Peter Shor (1994)has proved that this problem is in P. However, for classical computing it is so far onlyin a subexponential, but not polynomial, complexity class; opinions are divided onwhether it may belong to P also in this case.This motivates the following two definitions.The class of problems soluble in polynomial time is denoted by P. Instead, the classNP of problems solvable in nondeterministic polynomial time is the class of problemssolvable in polynomial time, but with the help of an oracle: the oracle gives us asolution, checkable in polynomial time. Of course, all this ne<strong>eds</strong> precise definitions ofwhat we mean by a computer and by an oracle, but this is outside of the scope of thisexposition. It is obvious that P ⊂ NP.The big discovery, by Stephen Cook in 1971 (Cook 1971), was that there areproblems that are NP-complete: A problem is NP-complete if(i) it is in NP, and(ii) it is NP-hard, that is, every problem in NP can be reduced to it, in polynomial time.The conclusion is that if there is one NP-complete problem in the class P, then everyproblem in NP belongs to P; in other words, NP = P.It is not obvious why NP-complete problems should exist at all. Why should everyproblem in a very large class such as NP be equivalent, in polynomial time, to a fix<strong>eds</strong>ingle problem? If we could show that there is an NP-complete problem solvabledeterministically in polynomial time, then it would mean that NP = P and the presenceof an oracle would be irrelevant for solving problems in P. If checking the validity

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!