1.pdf - THE P VERSUS NP PROBLEM STEPHEN COOK 1 Statement of...

Info icon This preview shows pages 1–3. Sign up to view the full content.

View Full Document Right Arrow Icon
THE P VERSUS NP PROBLEM STEPHEN COOK 1. Statement of the Problem The P versus NP problem is to determine whether every language accepted by some nondeterministic algorithm in polynomial time is also accepted by some (deterministic) algorithm in polynomial time. To define the problem precisely it is necessary to give a formal model of a computer. The standard computer model in computability theory is the Turing machine, introduced by Alan Turing in 1936 [37]. Although the model was introduced before physical computers were built, it nevertheless continues to be accepted as the proper computer model for the purpose of defining the notion of computable function . Informally the class P is the class of decision problems solvable by some algorithm within a number of steps bounded by some fixed polynomial in the length of the input. Turing was not concerned with the e ffi ciency of his machines, rather his concern was whether they can simulate arbitrary algorithms given su ffi cient time. It turns out, however, Turing machines can generally simulate more e ffi cient computer models (for example, machines equipped with many tapes or an unbounded random access memory) by at most squaring or cubing the computation time. Thus P is a robust class and has equivalent definitions over a large class of computer models. Here we follow standard practice and define the class P in terms of Turing machines. Formally the elements of the class P are languages. Let be a finite alphabet (that is, a finite nonempty set) with at least two elements, and let be the set of finite strings over . Then a language over is a subset L of . Each Turing machine M has an associated input alphabet . For each string w in there is a computation associated with M with input w . (The notions of Turing machine and computation are defined formally in the appendix.) We say that M accepts w if this computation terminates in the accepting state. Note that M fails to accept w either if this computation ends in the rejecting state, or if the computation fails to terminate. The language accepted by M , denoted L ( M ), has associated alphabet and is defined by L ( M ) = { w 2 | M accepts w } . We denote by t M ( w ) the number of steps in the computation of M on input w (see the appendix). If this computation never halts, then t M ( w ) = 1 . For n 2 N we denote by T M ( n ) the worst case run time of M ; that is, T M ( n ) = max { t M ( w ) | w 2 n } , where n is the set of all strings over of length n . We say that M runs in polynomial time if there exists k such that for all n , T M ( n ) n k + k . Now we 1
Image of page 1

Info icon This preview has intentionally blurred sections. Sign up to view the full version.

View Full Document Right Arrow Icon
2 STEPHEN COOK define the class P of languages by P = { L | L = L ( M ) for some Turing machine M that runs in polynomial time } . The notation NP stands for “nondeterministic polynomial time”, since originally NP was defined in terms of nondeterministic machines (that is, machines that have more than one possible move from a given configuration). However, now it is customary to give an equivalent definition using the notion of a checking relation ,
Image of page 2
Image of page 3
This is the end of the preview. Sign up to access the rest of the document.

{[ snackBarMessage ]}

What students are saying

  • Left Quote Icon

    As a current student on this bumpy collegiate pathway, I stumbled upon Course Hero, where I can find study resources for nearly all my courses, get online help from tutors 24/7, and even share my old projects, papers, and lecture notes with other students.

    Student Picture

    Kiran Temple University Fox School of Business ‘17, Course Hero Intern

  • Left Quote Icon

    I cannot even describe how much Course Hero helped me this summer. It’s truly become something I can always rely on and help me. In the end, I was not only able to survive summer classes, but I was able to thrive thanks to Course Hero.

    Student Picture

    Dana University of Pennsylvania ‘17, Course Hero Intern

  • Left Quote Icon

    The ability to access any university’s resources through Course Hero proved invaluable in my case. I was behind on Tulane coursework and actually used UCLA’s materials to help me move forward and get everything together on time.

    Student Picture

    Jill Tulane University ‘16, Course Hero Intern