Polynomial Hierarchy

In the last lecture, we saw that CliqueNP, where Clique={G,kG is an undirected graph with a clique of size k}. What about the following related problems? Clique={G,kG is an undirected graph with no clique of size k} and MAX-CLIQUE={G,kG is an undirected graph with a clique of size k and no clique of size k+1}

The two problems above are related to Clique, but are not known to be in NP. These problems seem to be of a different nature than Clique, as in the case of Clique, how can we (efficiently) certify that a graph has no clique of size k? In the case of MAX-CLIQUE, how can we (efficiently) certify that a particular clique is the largest one?

These problems, and many others, belong to a more general class of problems called the Polynomial Hierarchy.

To motivate the definition of the Polynomial Hierarchy, we will first introduce the class coNP.

The class coNP

Given a language L, we define its complement as L={xxL}. This yields the following definition:

coNP={LLNP}

Note that coNP is not the complement of NP, as in particular they have a non-empty intersection (see Homework 2, exercise 1.1).

A more enlightening way to define coNP is as follows:


Definition 1: A language L{0,1} is in coNP if there is a polynomial p:NN and a polynomial-time Turing machine M such that for all x{0,1}, we have xLy{0,1}p(|x|),M(x,y)=1.


The following proposition shows that both definitions are equivalent:


Proposition 1: A language L is in coNP (according to definition 1) if and only if L is in NP.


Now, with the above definitions, we can see that CliquecoNP.


Open question 1: Is NP=coNP?


If you solve the above question, you also prove that PNP. However, it is important to note that it is not known whether PNP implies that NPcoNP.

The Polynomial Hierarchy

Even after defining NP and coNP, there are still problems that are not known to be in either class, such as the MAX-CLIQUE problem. Note that MAX-CLIQUE seems to require both existential and universal quantifiers to be expressed.

This motivates us to define the slightly more general class Σ2p.


Definition 2: A language L{0,1} is in Σ2p if there are polynomials p,q:NN and a polynomial-time Turing machine M such that for all x{0,1}, we have xLy{0,1}p(|x|)z{0,1}q(|x|),M(x,y,z)=1.


If we interchange the order of the quantifiers in the above definition, we obtain the class Π2p.

Note that, with the above definitions, we have MAX-CLIQUEΣ2pΠ2p. To see this, note that we have have as the existential witness the clique of size k, and as the universal witness the sets of vertices of size k+1.

If we added more quantifiers, we would obtain the classes Σkp and Πkp for k3. We have now arrived at the definition of the Polynomial Hierarchy.


Definition 3: The Polynomial Hierarchy is the class PH=k0Σkp=k0Πkp.


From the above definition, two natural questions arise:

  1. How strong is PH?
  2. Is PH a proper hierarchy?
  3. Does PH contain a complete problem (under Karp reductions)?

A first upper bound on PH is given by the following proposition:


Proposition 2: PHEXP.


Proof: Let LPH, then LΣkp for some k. Let p1,p2,,pk:NN be the polynomials and V be the polynomial-time Turing machine that witnesses that LΣkp. Then, we can construct a polynomial-time Turing machine M that decides L in exponential time by simulating the computation of V on all possible witnesses of length p1(n),p2(n),,pk(n).


We say that the Polynomial Hierarchy collapses if PH=Σkp for some k.

The next proposition shows that items 2 and 3 cannot happen at the same time.


Proposition 3: If the polynomial hierarchy does not collapse, then PH has no complete problem under Karp reductions.


Proof: We will prove this by the contrapositive. That is, we will show that if PH has a complete problem under Karp reductions, then the polynomial hierarchy collapses.

Let L be a complete problem for PH under Karp reductions. Since LPH, we have LΣkp for some k1. Let M be the polynomial-time Turing machine that witnesses that LΣkp. Fix any language APH. As L is complete for PH, we have APL. Let f:{0,1}{0,1} be the polynomial-time computable function that reduces A to L. This implies that AΣkp, because for any x{0,1}, we have that xAf(x)L, which implies that xAy1y2QkykM(f(x),y1,y2,,yk)=1, where Qk is either or depending on the parity of k.


Acknowledgements & References

This lecture was based on these resources:

Previous
Next