Content deleted Content added
source; remove bogus statement about factorization belonging to NP intersect co-NP (primality was known to belong to this class prior to AKS polynomial algorithm, but it's a different problem) |
comment on probabilistic classes closed under complement |
||
(2 intermediate revisions by 2 users not shown) | |||
Line 1:
In [[computational complexity theory]], the '''complement''' of a [[decision problem]] is the decision problem resulting from reversing the ''yes'' and ''no'' answers.<ref>{{citation|title=Encyclopedic Dictionary of Mathematics, Volume 1|first=Kiyosi|last=Itô|publisher=MIT Press|year=1993|isbn=9780262590204|url=
For example, one important problem is whether a number is a [[prime number]]. Its complement is to determine whether a number is a [[composite number]] (a number which is not prime). Here the ___domain of the complement is the set of all integers exceeding one.<ref>{{citation|title=Computability and Complexity Theory|series=Texts in Computer Science|first1=Steven|last1=Homer|first2=Alan L.|last2=Selman|author2-link=Alan Selman|publisher=Springer|year=2011|isbn=9781461406815}}.</ref>
There is a [[Turing reduction]] from every problem to its complement problem.<ref>{{citation|title=Elements of Computation Theory|series=Texts in Computer Science|first=Arindama|last=Singh|publisher=Springer|year=2009|isbn=9781848824973|at=Exercise 9.10, p. 287|url=
One can generalize this to the complement of a [[complexity class]], called the '''complement class''', which is the set of complements of every problem in the class.<ref>{{citation|title=Introduction to the Theory of Complexity|series=Prentice Hall International Series in Computer Science|first1=Daniele|last1=Bovet|first2=Pierluigi|last2=Crescenzi|publisher=Prentice Hall|year=1994|isbn=9780139153808|pages=133–134}}.</ref> If a class is called '''C''', its complement is conventionally labelled '''co-C'''. Notice that this is ''not'' the complement of the complexity class itself as a set of problems, which would contain a great deal more problems.
A class is said to be ''closed under complement'' if the complement of any problem in the class is still in the class.<ref>{{citation|title=Introduction to Circuit Complexity: A Uniform Approach|series=Texts in Theoretical Computer Science. An EATCS Series|first=Heribert|last=Vollmer|publisher=Springer|year=1999|isbn=9783540643104|page=113|url=
The [[closure (mathematics)|closure]] of any complexity class under Turing reductions is a superset of that class which is closed under complement. The closure under complement is the smallest such class. If a class is intersected with its complement, we obtain a (possibly empty) subset which is closed under complement.
Every deterministic complexity class ('''DSPACE'''(f(n)), '''DTIME'''(f(n)) for all f(n)) is closed under complement,<ref>{{citation|title=Complexity and Approximation: Combinatorial Optimization Problems and Their Approximability Properties|first=Giorgio|last=Ausiello|publisher=Springer|year=1999|isbn=9783540654315|page=189|url=
Similarly, probabilistic classes such as [[BPP (complexity)|BPP]], [[ZPP (complexity)|ZPP]], [[BQP]] or [[PP (complexity)|PP]] which are defined symmetrically with regards to their ''yes'' and ''no'' instances are closed under complement. In contrast, classes such as [[RP (complexity)|RP]] and '''co-RP''' define their probabilities with one-sided error, and so are not (currently known to be) closed under complement.
Some of the most surprising complexity results shown to date showed that the complexity classes [[NL (complexity)|NL]] and [[SL (complexity)|SL]] are in fact closed under complement, whereas before it was widely believed they were not (see [[Immerman–Szelepcsényi theorem]]). The latter has become less surprising now that we know '''SL''' equals '''[[L (complexity)|L]]''', which is a deterministic class.
|