A Stroll Through the Complexity Zoo

A Stroll Through the Complexity Zoo

A Stroll Through the Complexity Zoo An overview of the most important complexity classes other than P and NP Rod Hilton December 15, 2012 1 Introduction We will see what these classes are, what kinds of languages belong to them, how they relate Even Computer Science students very early in to other classes, what questions related to them their careers are familiar with the \big three" remain unanswered, what the most recent ad- complexity classes of P, NP, and NP-COMPLETE. vancements related to them are, or any other These three classes are closely related to the particularly interesting facts about the class. In biggest open questions in Computer Science, so doing, it is the goal to provide an overview with the question of P =? NP being one of Clay suitable for undergraduate or graduate students Mathematics Institute's Millennium Prize Prob- wishing to start a journey deeper into Complex- lems. ity Theory. While these three classes are the subject of much ongoing research, the set of complexity 2 DTIME and NTIME classes is much larger than many students know. 1 The Complexity Zoo - an online catalog of such A language in DTIME(f(n)) must be recognized classes maintained by MIT faculty member Scott by some deterministic Turing machine that, Joel Aaronson - currently houses 495 different given an input size n, can recognize elements in complexity classes. the language within O(f(n)) time. Many refer In this work, we will take a high-level tour of to this class simply as TIME. some of the most important classes which are The class DTIME, because it can be parame- not P, NP, or NP-COMPLETE. We will mostly terized, allows us to refer to more narrowly de- focus on complexity classes that measure time fined time-complexity classes if they lack well- complexity, and will largely ignore classes that understood names. For example, we can define deal with space complexity in the interest of sav- a complexity class for languages that can be rec- 2 ing space . We will also focus only on decision ognized by a Turing machine in constant time, problems rather than optimization problems or such as all even binary integers, by referring counting problems. to DTIME(1). DTIME(logn) is common enough that it is often referred to as DLOGTIME. 1http://complexity-zoo.net/zoo/wiki/ Complexity_Zoo The class P can be defined in terms of DTIME, 2Ha! as P = S DTIME(nk). The class EXPTIME k2N 1 can be similarly defined, as EXPTIME = S choose between two possible moves, and it flips k2N DTIME(2nk ). This often expressed more simply a fair coin to decide which path to take. k as EXPTIME = DTIME(2n ) A language is in PP iff there exists a ran- Closely related to this class is the Time domized Turing machine that runs in polynomial Hierarchy Theorem, which states that time and decides membership in the language the DTIME(f(n)) must be strictly contained in majority of the time. Such a machine can be in- 3 DTIME((f(2n + 1)) ). This theorem is used by correct with a probability e so long as e < 1=2. Hartmanis and Stearns [1965] to show that P is Another way of thinking about PP is to con- a proper subset of EXPTIME. sider the set of languages that can be recognized Similarly, NTIME(f(n)) is a complexity class by a nondeterministic Turing machine in poly- for languages that can be recognized by a non- nomial time where more than half of the compu- deterministic Turing machine within O(f(n)) tation paths accept. time. As before, NP = S NTIME(nk) and k2N PP has somewhat limited usefulness because, NEXPTIME = NTIME(2nk ). in order to be confident in an answer from the has its a stronger hierarchy theorem NTIME machine, one would have to re-run the ma- shown in Seiferas et al. [1978], that with func- chine on the same input multiple times until tions f and g and f(n + 1) = o(g), f(n) NTIME( ) the desired probability of correctness is achieved. is a strict subset of g(n) . NTIME( ) Imagine that a nondeterministic Turing machine [Papadimitriou, 1994] shows P = NP, that recognizes a language has a million pos- then EXPTIME = NEXPTIME, as well as if sible computation paths, and 500,001 of them EXPTIME 6= NEXPTIME, it would prove that accept correctly. This meets the definition re- P 6= NP. It is generally accepted, however, that quired for PP, but it's extremely difficult to de- proving this would be even more difficult than termine, based on the decisions of the machine proving P 6= NP in the first place [Papadim- alone, which half is the `error' half. A good way itriou, 1994]. This is true as we ascend a hi- to conceptualize this is to imagine being given a erarchy of exponential time classes. 2-NEXP = k coin that has one slightly heavier side than the nk 2n NTIME(22 ), 3-NEXP = NTIME(22 ), and so other, and your task is to determine which. on, but if x-EXP were ever shown to not equal, Determining which half has the slight bias x-NEXP, the inequality would apply all the way requires an exponential number of experiments back down to EXPTIME 6= NEXPTIME and fi- [Papadimitriou, 1994], so it's somewhat more nally P 6= NP [Papadimitriou, 1994]. useful to have a class in which the probability Some problems in EXPTIME include a modi- of error is more restrictive. BPP is just such a fied version of the halting problem (does a ma- class. chine halt within k steps), or evaluating a posi- A language is in BPP iff there exists some tion in Chess, Checkers, or Go. randomized Turing machine that runs in poly- nomial time and decides membership correctly 3 PP and BPP with probability 3/4. The name BPP stands for Bounded-error Probabilistic Polynomial. In There are a handful of classes that are defined us- other words, rather than deciding by a mere ma- ing randomized Turing machines. A randomized jority, the Turing machine will decide by a \clear Turing machine is one that has to periodically majority" [Papadimitriou, 1994]. 2 It actually doesn't matter what probability is time (unless P = NP). It is not currently known chosen for BPP as long as it is strictly greater if BPP ⊂ NP or NP ⊂ BPP [Rich, 2008]. than 1/2 and less than 1; any other probability within this range would still result in the same class. Imagine we were talking about any prob- 4 RP, CO-RP, and ZPP ability in this range 1 + . The machine can be 2 PP and BPP both have tolerances for false neg- made to decide on set membership 2k + 1 times, atives as well as false positives. These are re- thus making the probability of a false answer ferred to as having \two-sided" error. However, e−22k. The probability can be made as small it is possible to build machines that have \one- as we wish by running the machine a polynomial sided" errors - meaning they can have errors in number of times, so the probability itself isn't only one direction - which define RP and CO-RP. critical, but often 3/4 is used (we can reduce our ln 2 A language is in RP if there is a randomized error to 1/4 by letting k = d e). e2 Turing machine, similar to the ones used to de- Since all of these probabilities for BPP are fine PP and BPP, that runs in polynomial time greater than 1/2, it's clear that BPP ⊆ PP. Fur- and accepts inputs with probability > 1/2/, but thermore, since a clear majority is required in rejects with a probability of 1. In other words, both the cases where the Turing machine cor- when the input is not in the language, the ma- rectly accepts as well as where it correctly re- chine will always reject. When it is, the machine jects, BPP is closed under complement (BPP = will be right more often than not. It can incor- CO-BPP). Since P is just BPP with an error rate rectly reject, but it will never incorrectly accept. of 0, P ⊆ BPP. CO-RP is the opposite, it can incorrectly ac- What is not yet known is whether BPP ⊆ P cept but it will never incorrectly reject. If an and thus if BPP = P. For many years, the go- input is in the language in RP, the machine will to example of a language in BPP that was not always accept, and if it is not it will reject with known to be in P was determining whether a a probability greater than 1/2. number was prime. One can test for primality in A language in CO-RP that has not yet been a probabilistic way using the Miller-Rabin pri- shown to be in P is that of Polynomial Identity mality test or the Solovay-Strassen test, both of Testing, the set of arithmetic expressions is iden- which can be run as many times as needed to tical to the zero-polynomial. achieve a particular desired confidence in the an- Finally, there is ZPP, proposed by Gill [1977]. swer, showing PRIMES to clearly be in BPP. For a language to be in ZPP, a randomized Tur- However, in 2002, Agrawal et al. [2004] showed ing machine must exist that decides \Yes", \No", that PRIMES is in P, reducing the number of or \Don't Know"; it must always return either problems known to be in BPP that are not also the correct answer or \Don't Know" (it can never in P.

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    8 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us