Jump to content

PH (complexity): Difference between revisions

From Wikipedia, the free encyclopedia
Content deleted Content added
Organized references (put into template and references from article body)
Yobot (talk | contribs)
m WP:CHECKWIKI error fixes using AWB (12020)
Line 3: Line 3:
:<math>\mathrm{PH} = \bigcup_{k\in\mathbb{N}} \Delta_k^\mathrm{P}</math>
:<math>\mathrm{PH} = \bigcup_{k\in\mathbb{N}} \Delta_k^\mathrm{P}</math>


'''PH''' was first defined by [[Larry Stockmeyer]]<ref>{{cite journal | last=Stockmeyer | first=Larry J. | authorlink=Larry J. Stockmeyer | title=The polynomial-time hierarchy | zbl=0353.02024 | journal=Theor. Comput. Sci. | volume=3 | pages=1–22 | year=1977 | doi=10.1016/0304-3975(76)90061-X }}</ref>. It is a special case of hierarchy of [[Alternating_Turing_machine#Bounded_alternation|bounded alternating Turing machine]]. It is contained in '''P<sup>#P</sup>''' = '''P<sup>PP</sup>''' (by [[Toda's theorem]]; the class of problems that are decidable by a polynomial time [[Turing machine]] with access to a [[Sharp P|#P]] or equivalently [[PP (complexity class)|PP]] [[oracle machine|oracle]]), and also in '''[[PSPACE]]'''.
'''PH''' was first defined by [[Larry Stockmeyer]].<ref>{{cite journal | last=Stockmeyer | first=Larry J. | authorlink=Larry J. Stockmeyer | title=The polynomial-time hierarchy | zbl=0353.02024 | journal=Theor. Comput. Sci. | volume=3 | pages=1–22 | year=1977 | doi=10.1016/0304-3975(76)90061-X }}</ref> It is a special case of hierarchy of [[Alternating Turing machine#Bounded alternation|bounded alternating Turing machine]]. It is contained in '''P<sup>#P</sup>''' = '''P<sup>PP</sup>''' (by [[Toda's theorem]]; the class of problems that are decidable by a polynomial time [[Turing machine]] with access to a [[Sharp P|#P]] or equivalently [[PP (complexity class)|PP]] [[oracle machine|oracle]]), and also in '''[[PSPACE]]'''.


'''PH''' has a simple [[descriptive complexity|logical characterization]]: it is the set of languages expressible by [[second-order logic]].
'''PH''' has a simple [[descriptive complexity|logical characterization]]: it is the set of languages expressible by [[second-order logic]].


'''PH''' contains almost all well-known complexity classes inside '''PSPACE'''; in particular, it contains '''[[P (complexity)|P]]''', '''[[NP (complexity)|NP]]''', and '''[[co-NP]]'''. It even contains probabilistic classes such as '''[[Bounded-error probabilistic polynomial|BPP]]''' and '''[[RP (complexity)|RP]]'''. However, there is some evidence that '''[[BQP]]''', the class of problems solvable in polynomial time by a [[quantum computer]], is not contained in '''PH''' <ref>{{Cite conference| last = Aaronson| first = Scott| author-link=Scott Aaronson| contribution = BQP and the Polynomial Hierarchy| accessdate = 2016-06-05| date = 2009| contribution-url = http://eccc.hpi-web.de/report/2009/104/| arxiv=0910.4698| publisher=[[ECCC]]| title=ACM [[STOC]]}}</ref>.
'''PH''' contains almost all well-known complexity classes inside '''PSPACE'''; in particular, it contains '''[[P (complexity)|P]]''', '''[[NP (complexity)|NP]]''', and '''[[co-NP]]'''. It even contains probabilistic classes such as '''[[Bounded-error probabilistic polynomial|BPP]]''' and '''[[RP (complexity)|RP]]'''. However, there is some evidence that '''[[BQP]]''', the class of problems solvable in polynomial time by a [[quantum computer]], is not contained in '''PH'''.<ref>{{Cite conference| last = Aaronson| first = Scott| author-link=Scott Aaronson| contribution = BQP and the Polynomial Hierarchy| accessdate = 2016-06-05| date = 2009| contribution-url = http://eccc.hpi-web.de/report/2009/104/| arxiv=0910.4698| publisher=[[ECCC]]| title=ACM [[STOC]]}}</ref>


'''P''' = '''NP''' if and only if '''P''' = '''PH'''. This may simplify a potential proof of '''P''' ≠ '''NP''', since it is only necessary to separate '''P''' from the more general class '''PH'''.{{citation-needed|date=December 2015}}
'''P''' = '''NP''' if and only if '''P''' = '''PH'''. This may simplify a potential proof of '''P''' ≠ '''NP''', since it is only necessary to separate '''P''' from the more general class '''PH'''.{{citation needed|date=December 2015}}


==References==
==References==
Line 21: Line 21:


[[Category:Complexity classes]]
[[Category:Complexity classes]]



{{comp-sci-theory-stub}}
{{comp-sci-theory-stub}}

Revision as of 06:38, 6 June 2016

In computational complexity theory, the complexity class PH is the union of all complexity classes in the polynomial hierarchy:

PH was first defined by Larry Stockmeyer.[1] It is a special case of hierarchy of bounded alternating Turing machine. It is contained in P#P = PPP (by Toda's theorem; the class of problems that are decidable by a polynomial time Turing machine with access to a #P or equivalently PP oracle), and also in PSPACE.

PH has a simple logical characterization: it is the set of languages expressible by second-order logic.

PH contains almost all well-known complexity classes inside PSPACE; in particular, it contains P, NP, and co-NP. It even contains probabilistic classes such as BPP and RP. However, there is some evidence that BQP, the class of problems solvable in polynomial time by a quantum computer, is not contained in PH.[2]

P = NP if and only if P = PH. This may simplify a potential proof of PNP, since it is only necessary to separate P from the more general class PH.[citation needed]

References

  1. ^ Stockmeyer, Larry J. (1977). "The polynomial-time hierarchy". Theor. Comput. Sci. 3: 1–22. doi:10.1016/0304-3975(76)90061-X. Zbl 0353.02024.
  2. ^ Aaronson, Scott (2009). "BQP and the Polynomial Hierarchy". ACM STOC. ECCC. arXiv:0910.4698. Retrieved 2016-06-05.

General references