![]() | 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.
There are multiple equivalent definitions of the classes of the polynomial hierarchy.
For the oracle definition of the polynomial hierarchy, define
whereP is the set ofdecision problems solvable inpolynomial time. Then for i ≥ 0 define
where is the set ofdecision problems solvable in polynomial time by aTuring machine augmented by anoracle for some complete problem in class A; the classes and are defined analogously. For example,, and is the class of problems solvable in polynomial time by a deterministic Turing machine with an oracle for some NP-complete problem.[2]
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
where 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 of, and the second stringw is a "short" () witness testifying thatx is a member of. In other words, if and only if there exists a short witnessw such that. Similarly, define
Note thatDe Morgan's laws hold: and, whereLc is the complement ofL.
LetC be a class of languages. Extend these operators to work on whole classes of languages by the definition
Again, De Morgan's laws hold: and, where.
The classesNP andco-NP can be defined as, and, whereP is the class of all feasibly (polynomial-time) decidable languages. The polynomial hierarchy can be defined recursively as
Note that, and.
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.
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 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 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]
The union of all classes in the polynomial hierarchy is the complexity classPH.
The definitions imply the relations:
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, or if any, then the hierarchycollapses to level k: for all,.[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.
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.
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-complete problem for somek.[9]
Each class in the polynomial hierarchy contains-complete problems (problems complete under polynomial-time many-one reductions). Furthermore, each class in the polynomial hierarchy isclosed under-reductions: meaning that for a classC in the hierarchy and a language, if, then as well. These two facts together imply that if is a complete problem for, then, and. For instance,. 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]
is decidable in polynomial time. The language
section 1.4, "Machines as strings and the universal Turing machine" and 1.7, "Proof of theorem 1.9"