Movatterモバイル変換


[0]ホーム

URL:


Jump to content
WikipediaThe Free Encyclopedia
Search

Polynomial hierarchy

From Wikipedia, the free encyclopedia
Computer science concept
This article includes alist of references,related reading, orexternal links,but its sources remain unclear because it lacksinline citations. Please helpimprove this article byintroducing more precise citations.(July 2019) (Learn how and when to remove this message)

Incomputational complexity theory, thepolynomial hierarchy (sometimes called thepolynomial-time hierarchy) is ahierarchy ofcomplexity classes that generalize the classesNP andco-NP.[1] Each class in the hierarchy is contained withinPSPACE. The hierarchy can be defined usingoracle machines oralternating Turing machines. It is a resource-bounded counterpart to thearithmetical hierarchy andanalytical hierarchy frommathematical logic. The union of the classes in the hierarchy is denotedPH.

Classes within the hierarchy have complete problems (with respect topolynomial-time reductions) that ask ifquantified Boolean formulae hold, for formulae with restrictions on the quantifier order. It is known that equality between classes on the same level or consecutive levels in the hierarchy would imply a "collapse" of the hierarchy to that level.

Definitions

[edit]

There are multiple equivalent definitions of the classes of the polynomial hierarchy.

Oracle definition

[edit]

For the oracle definition of the polynomial hierarchy, define

Δ0P:=Σ0P:=Π0P:=P,{\displaystyle \Delta _{0}^{\mathsf {P}}:=\Sigma _{0}^{\mathsf {P}}:=\Pi _{0}^{\mathsf {P}}:={\mathsf {P}},}

whereP is the set ofdecision problems solvable inpolynomial time. Then for i ≥ 0 define

Δi+1P:=PΣiP{\displaystyle \Delta _{i+1}^{\mathsf {P}}:={\mathsf {P}}^{\Sigma _{i}^{\mathsf {P}}}}
Σi+1P:=NPΣiP{\displaystyle \Sigma _{i+1}^{\mathsf {P}}:={\mathsf {NP}}^{\Sigma _{i}^{\mathsf {P}}}}
Πi+1P:=coNPΣiP{\displaystyle \Pi _{i+1}^{\mathsf {P}}:={\mathsf {coNP}}^{\Sigma _{i}^{\mathsf {P}}}}

wherePA{\displaystyle {\mathsf {P}}^{\rm {A}}} is the set ofdecision problems solvable in polynomial time by aTuring machine augmented by anoracle for some complete problem in class A; the classesNPA{\displaystyle {\mathsf {NP}}^{\rm {A}}} andcoNPA{\displaystyle {\mathsf {coNP}}^{\rm {A}}} are defined analogously. For example,Σ1P=NP,Π1P=coNP{\displaystyle \Sigma _{1}^{\mathsf {P}}={\mathsf {NP}},\Pi _{1}^{\mathsf {P}}={\mathsf {coNP}}}, andΔ2P=PNP{\displaystyle \Delta _{2}^{\mathsf {P}}={\mathsf {P^{NP}}}} is the class of problems solvable in polynomial time by a deterministic Turing machine with an oracle for some NP-complete problem.[2]

Quantified Boolean formulae definition

[edit]

For the existential/universal definition of the polynomial hierarchy, letL be alanguage (i.e. adecision problem, a subset of {0,1}*), letp be apolynomial, and define

pL:={x{0,1} | (w{0,1}p(|x|))x,wL},{\displaystyle \exists ^{p}L:=\left\{x\in \{0,1\}^{*}\ \left|\ \left(\exists w\in \{0,1\}^{\leq p(|x|)}\right)\langle x,w\rangle \in L\right.\right\},}

wherex,w{0,1}{\displaystyle \langle x,w\rangle \in \{0,1\}^{*}} is some standard encoding of the pair of binary stringsx andw as a single binary string. The languageL represents a set of ordered pairs of strings, where the first stringx is a member ofpL{\displaystyle \exists ^{p}L}, and the second stringw is a "short" (|w|p(|x|){\displaystyle |w|\leq p(|x|)}) witness testifying thatx is a member ofpL{\displaystyle \exists ^{p}L}. In other words,xpL{\displaystyle x\in \exists ^{p}L} if and only if there exists a short witnessw such thatx,wL{\displaystyle \langle x,w\rangle \in L}. Similarly, define

pL:={x{0,1} | (w{0,1}p(|x|))x,wL}{\displaystyle \forall ^{p}L:=\left\{x\in \{0,1\}^{*}\ \left|\ \left(\forall w\in \{0,1\}^{\leq p(|x|)}\right)\langle x,w\rangle \in L\right.\right\}}

Note thatDe Morgan's laws hold:(pL)c=pLc{\displaystyle \left(\exists ^{p}L\right)^{\rm {c}}=\forall ^{p}L^{\rm {c}}} and(pL)c=pLc{\displaystyle \left(\forall ^{p}L\right)^{\rm {c}}=\exists ^{p}L^{\rm {c}}}, whereLc is the complement ofL.

LetC be a class of languages. Extend these operators to work on whole classes of languages by the definition

PC:={pL | p is a polynomial and LC}{\displaystyle \exists ^{\mathsf {P}}{\mathcal {C}}:=\left\{\exists ^{p}L\ |\ p{\text{ is a polynomial and }}L\in {\mathcal {C}}\right\}}
PC:={pL | p is a polynomial and LC}{\displaystyle \forall ^{\mathsf {P}}{\mathcal {C}}:=\left\{\forall ^{p}L\ |\ p{\text{ is a polynomial and }}L\in {\mathcal {C}}\right\}}

Again, De Morgan's laws hold:coPC=PcoC{\displaystyle {\mathsf {co}}\exists ^{\mathsf {P}}{\mathcal {C}}=\forall ^{\mathsf {P}}{\mathsf {co}}{\mathcal {C}}} andcoPC=PcoC{\displaystyle {\mathsf {co}}\forall ^{\mathsf {P}}{\mathcal {C}}=\exists ^{\mathsf {P}}{\mathsf {co}}{\mathcal {C}}}, wherecoC={Lc|LC}{\displaystyle {\mathsf {co}}{\mathcal {C}}=\left\{L^{c}|L\in {\mathcal {C}}\right\}}.

The classesNP andco-NP can be defined asNP=PP{\displaystyle {\mathsf {NP}}=\exists ^{\mathsf {P}}{\mathsf {P}}}, andcoNP=PP{\displaystyle {\mathsf {coNP}}=\forall ^{\mathsf {P}}{\mathsf {P}}}, whereP is the class of all feasibly (polynomial-time) decidable languages. The polynomial hierarchy can be defined recursively as

Σ0P:=Π0P:=P{\displaystyle \Sigma _{0}^{\mathsf {P}}:=\Pi _{0}^{\mathsf {P}}:={\mathsf {P}}}
Σk+1P:=PΠkP{\displaystyle \Sigma _{k+1}^{\mathsf {P}}:=\exists ^{\mathsf {P}}\Pi _{k}^{\mathsf {P}}}
Πk+1P:=PΣkP{\displaystyle \Pi _{k+1}^{\mathsf {P}}:=\forall ^{\mathsf {P}}\Sigma _{k}^{\mathsf {P}}}

Note thatNP=Σ1P{\displaystyle {\mathsf {NP}}=\Sigma _{1}^{\mathsf {P}}}, andcoNP=Π1P{\displaystyle {\mathsf {coNP}}=\Pi _{1}^{\mathsf {P}}}.

This definition reflects the close connection between the polynomial hierarchy and thearithmetical hierarchy, whereR andRE play roles analogous toP andNP, respectively. Theanalytic hierarchy is also defined in a similar way to give a hierarchy of subsets of thereal numbers.

Alternating Turing machines definition

[edit]

Analternating Turing machine is a non-deterministic Turing machine with non-final states partitioned into existential and universal states. It is eventually accepting from its current configuration if: it is in an existential state and can transition into some eventually accepting configuration; or, it is in a universal state and every transition is into some eventually accepting configuration; or, it is in an accepting state.[3]

We defineΣkP{\displaystyle \Sigma _{k}^{\mathsf {P}}} to be the class of languages accepted by an alternating Turing machine in polynomial time such that the initial state is an existential state and every path the machine can take swaps at mostk – 1 times between existential and universal states. We defineΠkP{\displaystyle \Pi _{k}^{\mathsf {P}}} similarly, except that the initial state is a universal state.[4]

If we omit the requirement of at mostk – 1 swaps between the existential and universal states, so that we only require that our alternating Turing machine runs in polynomial time, then we have the definition of the classAP, which is equal toPSPACE.[5]

Relations between classes in the polynomial hierarchy

[edit]
Commutative diagram equivalent to the polynomial time hierarchy. The arrows denote inclusion.

The union of all classes in the polynomial hierarchy is the complexity classPH.

The definitions imply the relations:

ΣiPΔi+1PΣi+1P{\displaystyle \Sigma _{i}^{\mathsf {P}}\subseteq \Delta _{i+1}^{\mathsf {P}}\subseteq \Sigma _{i+1}^{\mathsf {P}}}
ΠiPΔi+1PΠi+1P{\displaystyle \Pi _{i}^{\mathsf {P}}\subseteq \Delta _{i+1}^{\mathsf {P}}\subseteq \Pi _{i+1}^{\mathsf {P}}}
ΣiP=coΠiP{\displaystyle \Sigma _{i}^{\mathsf {P}}={\mathsf {co}}\Pi _{i}^{\mathsf {P}}}

Unlike the arithmetic and analytic hierarchies, whose inclusions are known to be proper, it is an open question whether any of these inclusions are proper, though it is widely believed that they all are. If anyΣkP=Σk+1P{\displaystyle \Sigma _{k}^{\mathsf {P}}=\Sigma _{k+1}^{\mathsf {P}}}, or if anyΣkP=ΠkP{\displaystyle \Sigma _{k}^{\mathsf {P}}=\Pi _{k}^{\mathsf {P}}}, then the hierarchycollapses to level k: for alli>k{\displaystyle i>k},ΣiP=ΣkP{\displaystyle \Sigma _{i}^{\mathsf {P}}=\Sigma _{k}^{\mathsf {P}}}.[6] In particular, we have the following implications involving unsolved problems:

The case in whichNP =PH is also termed as acollapse of thePH tothe second level. The caseP =NP corresponds to a collapse ofPH toP.

Unsolved problem in computer science:
P=?NP{\displaystyle {\mathsf {P}}{\overset {?}{=}}{\mathsf {NP}}}
(more unsolved problems in computer science)

The question of collapse to the first level is generally thought to be extremely difficult. Most researchers do not believe in a collapse, even to the second level.

Relationships to other classes

[edit]
See also:PH (complexity) § Relationship to other classes
Unsolved problem in computer science:
PH=?PSPACE{\displaystyle {\mathsf {PH}}{\overset {?}{=}}{\mathsf {PSPACE}}}
(more unsolved problems in computer science)
Hasse diagram of complexity classes includingP,NP,co-NP,BPP,P/poly, PH, andPSPACE

The polynomial hierarchy is an analogue (at much lower complexity) of theexponential hierarchy andarithmetical hierarchy.

It is known that PH is contained withinPSPACE, but it is not known whether the two classes are equal. One useful reformulation of this problem is that PH = PSPACE if and only ifsecond-order logic over finite structures gains no additional power from the addition of atransitive closure operator over relations of relations (i.e., over the second-order variables).[8]

If the polynomial hierarchy has anycomplete problems, then it has only finitely many distinct levels. Since there arePSPACE-complete problems, we know that if PSPACE = PH, then the polynomial hierarchy must collapse, since a PSPACE-complete problem would be aΣkP{\displaystyle \Sigma _{k}^{\mathsf {P}}}-complete problem for somek.[9]

Each class in the polynomial hierarchy containsmP{\displaystyle \leq _{\rm {m}}^{\mathsf {P}}}-complete problems (problems complete under polynomial-time many-one reductions). Furthermore, each class in the polynomial hierarchy isclosed undermP{\displaystyle \leq _{\rm {m}}^{\mathsf {P}}}-reductions: meaning that for a classC in the hierarchy and a languageLC{\displaystyle L\in {\mathcal {C}}}, ifAmPL{\displaystyle A\leq _{\rm {m}}^{\mathsf {P}}L}, thenAC{\displaystyle A\in {\mathcal {C}}} as well. These two facts together imply that ifKi{\displaystyle K_{i}} is a complete problem forΣiP{\displaystyle \Sigma _{i}^{\mathsf {P}}}, thenΣi+1P=NPKi{\displaystyle \Sigma _{i+1}^{\mathsf {P}}={\mathsf {NP}}^{K_{i}}}, andΠi+1P=coNPKi{\displaystyle \Pi _{i+1}^{\mathsf {P}}={\mathsf {coNP}}^{K_{i}}}. For instance,Σ2P=NPSAT{\displaystyle \Sigma _{2}^{\mathsf {P}}={\mathsf {NP}}^{\mathsf {SAT}}}. In other words, if a language is defined based on some oracle inC, then we can assume that it is defined based on a complete problem forC. Complete problems therefore act as "representatives" of the class for which they are complete.

There is some evidence thatBQP, the class of problems solvable in polynomial time by aquantum computer, is not contained in PH; however, it is also believed that PH is not contained in BQP.[10]=[11]

Problems

[edit]

See also

[edit]

References

[edit]

General references

[edit]
  1. Arora, Sanjeev; Barak, Boaz (2009).Complexity Theory: A Modern Approach. Cambridge University Press.ISBN 978-0-521-42426-4.section 1.4, "Machines as strings and the universal Turing machine" and 1.7, "Proof of theorem 1.9"
  2. A. R. Meyer andL. J. Stockmeyer. The Equivalence Problem for Regular Expressions with Squaring Requires Exponential Space.In Proceedings of the 13th IEEESymposium on Switching and Automata Theory, pp. 125–129, 1972. The paper that introduced the polynomial hierarchy.
  3. L. J. Stockmeyer.The polynomial-time hierarchy.Theoretical Computer Science, vol.3, pp. 1–22, 1976.
  4. C. Papadimitriou. Computational Complexity. Addison-Wesley, 1994. Chapter 17.Polynomial hierarchy, pp. 409–438.
  5. Michael R. Garey andDavid S. Johnson (1979).Computers and Intractability: A Guide to the Theory of NP-Completeness. W.H. Freeman.ISBN 0-7167-1045-5. Section 7.2: The Polynomial Hierarchy, pp. 161–167.

Citations

[edit]
  1. ^Arora and Barak, 2009, pp.97
  2. ^Completeness in the Polynomial-Time Hierarchy A Compendium, M. Schaefer, C. Umans
  3. ^Arora and Barak, pp.99–100
  4. ^Arora and Barak, pp.100
  5. ^Arora and Barak, pp.100
  6. ^Arora and Barak, 2009, Theorem 5.4
  7. ^Hemaspaandra, Lane (2018). "17.5 Complexity classes". In Rosen, Kenneth H. (ed.).Handbook of Discrete and Combinatorial Mathematics. Discrete Mathematics and Its Applications (2nd ed.). CRC Press. pp. 1308–1314.ISBN 9781351644051.
  8. ^Ferrarotti, Flavio; Van den Bussche, Jan; Virtema, Jonni (2018)."Expressivity Within Second-Order Transitive-Closure Logic".DROPS-IDN/V2/Document/10.4230/LIPIcs.CSL.2018.22. Schloss-Dagstuhl - Leibniz Zentrum für Informatik.doi:10.4230/LIPIcs.CSL.2018.22.S2CID 4903744.
  9. ^Arora and Barak, 2009, Claim 5.5
  10. ^Aaronson, Scott (2009). "BQP and the Polynomial Hierarchy".Proc. 42nd Symposium on Theory of Computing (STOC 2009).Association for Computing Machinery. pp. 141–150.arXiv:0910.4698.doi:10.1145/1806689.1806711.ECCC TR09-104.
  11. ^Hartnett, Kevin (21 June 2018)."Finally, a Problem That Only Quantum Computers Will Ever Be Able to Solve".Quanta Magazine.
Considered feasible
Suspected infeasible
Considered infeasible
Class hierarchies
Families of classes
Retrieved from "https://en.wikipedia.org/w/index.php?title=Polynomial_hierarchy&oldid=1284392285"
Categories:
Hidden categories:

[8]ページ先頭

©2009-2025 Movatter.jp