Computational Complexity Lecture 13: The Polynomial Hierarchy and Oracle Characterization, Study notes of Computational Methods

A lecture note from cs221: computational complexity course by prof. Salil vadhan at harvard university. The lecture focuses on the polynomial hierarchy and its definition through oracles. The document also includes proofs for theorems related to the polynomial hierarchy and its relation to np and co-np.

Typology: Study notes

2010/2011

Uploaded on 10/28/2011

thecoral
thecoral 🇺🇸

4.5

(30)

395 documents

1 / 4

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
CS221: Computational Complexity Prof. Salil Vadhan
Lecture 13: The Polynomial Hierarchy
10/18 Scribe: Saurabh Sanghvi
Contents
1 Announcements
Pick up graded PS1s and the solution. Please note the length of the solutions—this should
be a model of how to be more concise with your answers.
CS Colloquium talk by Yuri Gurevich on abstract state machines on Monday, 4PM.
Section in MD 323 on Monday, 6PM.
2 Recap
To review, last lecture we defined the following:
ΣkP,Alternating polynomial time, k1 alternations, starting with
ΠkP,Alternating polynomial time, k1 alternations, starting with
PH ,S
k
ΠkP
We know, of course that PH PSPACE. We can think of the PH as a more slight or benign
generalization of NP, or thinking about the AP/PSPACE model, as games where you fix the
number of rounds.
Why, one might ask, do we care about the complexity of games? A large focus of study is in
protocols, involving the interaction of algorithms. Thinking about games is a helpful way to analyze
these interactions.
3 Complete Problems
Recall the definition of QBF from last lecture. Define, similarly, the following for each k:
QBFk={ϕ(X1, . . . , Xk) : X1X2. . . QXkϕ(X1, . . . , Xk), ϕ an arbitrary Boolean formula }
Here each Xirepresents a group of Boolean variables (xi,1,xi,2, . . . , xi,ni). Just as we found that
QBF was PSPACE-complete, we can show the following for each k:
1
pf3
pf4

Partial preview of the text

Download Computational Complexity Lecture 13: The Polynomial Hierarchy and Oracle Characterization and more Study notes Computational Methods in PDF only on Docsity!

CS221: Computational Complexity Prof. Salil Vadhan

Lecture 13: The Polynomial Hierarchy

10/18 Scribe: Saurabh Sanghvi

Contents

1 Announcements

  • Pick up graded PS1s and the solution. Please note the length of the solutions—this should be a model of how to be more concise with your answers.
  • CS Colloquium talk by Yuri Gurevich on abstract state machines on Monday, 4PM.
  • Section in MD 323 on Monday, 6PM.

2 Recap

To review, last lecture we defined the following:

  • ΣkP , Alternating polynomial time, ≤ k − 1 alternations, starting with ∃
  • ΠkP , Alternating polynomial time, ≤ k − 1 alternations, starting with ∀
  • PH ,

k

ΠkP

We know, of course that PH ⊆ PSPACE. We can think of the PH as a more slight or benign generalization of NP, or thinking about the AP/PSPACE model, as games where you fix the number of rounds.

Why, one might ask, do we care about the complexity of games? A large focus of study is in protocols, involving the interaction of algorithms. Thinking about games is a helpful way to analyze these interactions.

3 Complete Problems

Recall the definition of QBF from last lecture. Define, similarly, the following for each k:

QBFk = {ϕ(X 1 ,... , Xk) : ∃X 1 ∀X 2... QXk ϕ(X 1 ,... , Xk), ϕ an arbitrary Boolean formula }

Here each Xi represents a group of Boolean variables (xi, 1 , xi, 2 ,... , xi,ni ). Just as we found that QBF was PSPACE-complete, we can show the following for each k:

Theorem 1 QBFk is ΣkP-complete.

Proof : That QBFk ∈ ΣkP follows from logic similar to what we saw before for QBF, and so we will just show QBFk is ΣkP-hard.

Given L ∈ ΣkP, by definition we have a polynomial time relation R, polynomial p with:

x ∈ L ⇔ ∃y 1 ∀y 2... Qyk R(x, y 1 ,... yk), where each yi ∈ { 0 , 1 }p(|x|)

Last time at this point we used Cook–Levin to replace R with a formula of the form 3-CNF formula. We’ll do basically the same thing here, but this time we’ll need to be sure that we don’t increase the number of alternations in the process.

Then by the proof of the Cook–Levin theorem we can replace R(x, y 1 ,... , yk) with ∃z ϕR(x, y 1 ,... , yk, z). It is easy to see that this replacement will not increase the number of alternations.

Otherwise, suppose Q = ∀. Then we can apply Cook-Levin to ¬R to get ∃z ϕ¬R(x, y 1 ,... yk, z). Negating, and then pushing the negation through, we get ∀z (¬ϕ¬R)(x, y 1 ,... yk, z) (where (¬ϕ¬R) will now be in 3-DNF — but this is fine). We can then replace R with this and not increase the number of alternations.

4 Oracle Characterization

Another way of defining PH is through oracles, which you may remember from our definition of Cook reductions. In fact, this is the usual way it is defined. If we let A be some function or language, then we can define the following:

Definition 2 PA^ is the class of language decided in polynomial time with an “oracle” for A. Similarly, NPA^ is the class decided in nondeterministic polynomial time, with access to such an oracle.

In order to make sense of this, we need to define what it means to compute with access to an oracle:

Definition 3 Formally, an oracle TM M is a TM with an extra “oracle” tape and a special oracle- query state. When M goes into the query state, its oracle is applied to the contents of the oracle tape. Running an oracle TM M with oracle A is denoted M A.

Important: The operation of adding oracles is an operation on machines, not an operation on language classes. Phrased differently, CA^ is not defined for an arbitrary class C; it depends on the machine used to define C. For instance, complexity classes not defined with respect to properties of the machines deciding them will not make sense with an oracle attached. Additionally, LA^ is not well-defined, because there are disagreements on how to charge for the space used on the query tape, and different formulations are inequivalent.

Even so, most classes we have seen can be thought of in the context of an oracle, and in fact, most of the results we have shown apply within the context of oracles, as well.

We can also talk about machines with access to an oracle in any given class via the following:

Conversely, suppose L ∈ NPΣk−^1 P. By the certificate characterization of NPA, ∃R ∈ PΣk−^1 P such that x ∈ L ⇔ ∃y, |y| ≤ p (|x|)R(x, y). By the lemma, R ∈ ΣkP. We can then combine in the ∃y, and so L ∈ ΣkP.