CSE200 Lecture Notes – Polynomial Hierarchy Lecture by Russell Impagliazzo Notes by Jiawei Gao February 18, 2016 1 Polynomial Hierarchy Recall from last class that for language L, we defined PL is the class of problems poly-time Turing reducible to L. • NPL is the class of problems with witnesses verifiable in P L. • In other words, these problems can be considered as computed by deterministic or nonde- terministic TMs that can get access to an oracle machine for L. The polynomial hierarchy (or polynomial-time hierarchy) can be defined by a hierarchy of problems that have oracle access to the lower level problems. Definition 1 (Oracle definition of PH). Define classes P Σ1 = NP. P • P Σi For i 1, Σi 1 = NP . • ≥ + Symmetrically, define classes P Π1 = co-NP. • P ΠP For i 1, Π co-NP i . i+1 = • ≥ S P S P The Polynomial Hierarchy (PH) is defined as PH = i Σi = i Πi . 1.1 If P = NP, then PH collapses to P P Theorem 2. If P = NP, then P = Σi i. 8 Proof. By induction on i. P Base case: For i = 1, Σi = NP = P by definition. P P ΣP P Inductive step: Assume P NP and Σ P. Then Σ NP i NP P. = i = i+1 = = = 1 CSE 200 Winter 2016 P ΣP Figure 1: An overview of classes in PH. The arrows denote inclusion. Here ∆ P i . (Image i+1 = source: Wikipedia.) Similarly, if any two different levels in PH turn out to be the equal, then PH collapses to the lower of the two levels. P P P P Theorem 3. If Σi = Σi 1, then Σj = Σi for all j i. + ≥ 1.2 Quantifier definition of PH Theorem 4 (Quantifier definition of PH). P A language L Σi iff there is some relation R(x, y1,..., yi) P, polymomial q so that • 2 2 x L y1, y2 ...Qi yi R(x, y1,..., yi) 2 () 9 8 For all j 1, . , i , yj q( x ). If i is odd, then Qi = . Otherwise Qi = . 2 f Pg j j ≤ j j 9 8 A language L Πi iff there is some relation R(x, y1,..., yi) P, polymomial q so that • 2 2 x L y1, y2 ...Qi yi R(x, y1,..., yi) 2 () 8 9 For all j 1, . , i , yj q( x ). If i is even, then Qi = . Otherwise Qi = . 2 f g j j ≤ j j 9 8 P Example 1.1. The decision problem "Is C a minimal circuit?" is in Π2 . Because to decide if C is a minimal circuit, we can decide whether C0, C0 C , x(C(x) = C0(x)) 8 j j ≤ j j 9 6 2 CSE 200 Winter 2016 is true. Next we prove the oracle definition and the quantifier definition are equivalent. Quantifier definition = oracle definition ) P Claim 1. If L can be written with i quantifiers beginning with , then L Σi . 9 2 Proof. By induction. P Base case: for i = 1, if x L y1R(x, y1), then L NP = Σ1 . 2 () 9 P2 Inductive step: Assume any i-quantifier language Σi . 2 Assume x L. y1( y2 y3 ... ) R(x1, y1,... yi+1). 2 9 8 9 Define language L0 such that (x, y1) L0 y2 y3 ... R(x, y1,..., yi+1). 2 () 8 9 Let L be the complement of L0. Thus (x, y1) L y2 y3 ... R(x, y1,..., yi+1). 0 2 0 () 9 8 x L y1(x, y1) = L . 2 () 9 2 0 For a witness: y , we can ask the oracle for L : “Is x, y L ?” If the oracle says no, then 1 0 ( 1) 0 accept. If yes, then reject. 2 By induction hypothesis, the language L is in ΣP. Thus, x L iff there is a witness y 0 i 1 P L P 2 2 verifiable in Σi . Thus L NP 0 Σi 1. 2 ⊆ + P Claim 2. If L can be written with i quantifiers beginning with , then L Πi . 8 2 It can be proved symmetrically. Oracle definition = quantifier definition The proof is based on [4)]. Proof. By induction. P Base case: for i = 1, we already proved L Σ1 = NP iff x L y1R(x, y1), where 2 2 () 9 y1 = poly( x ) and R P. j j j j 2 P Inductive step: Assume every L0 Σi can be written with i-quantifier. Let ML be the oracle machine for L. 2 ML (x) = 1 y1, y2 ...Qi yi R0(x, y1,..., yi) = 0. 0 () 9 8 Negating both sides, ML (x) = 0 y1, y2 ...Qi yi R0(x, y1,..., yi) = 0. 0 () 8 9 Let L ΣP . Assume M is a TM in NP that makes m queries to oracle machine M which is i+1 0 P 2 in Σi . Let y be the witness string of M, and let (q1, a1),... (qm, am) be the m queries and their 3 CSE 200 Winter 2016 answers. Then, an input x in L iff M(x) = 1 (q1,..., qm, a1,..., am, y) () 9 [(M 0(q1) = a1) (M 0(qm) = am) R(x, a1,..., am, y)]. (1) ^ · · · ^ ^ P If aj = 1, then M 0(qj) = 1, again by induction assumption, M 0 is in Σi , so yj,1 yj,2 ...Qi yj,i R0(qj, y1, y2,..., yi) = 1. 9 8 If aj = 0, then M 0(qj) = 0, by induction assumption, (note that this time we index the i quan- tifiers from 2 to i + 1) y0j,2 y0j,3 ...Q0i 1 y0j,i 1 R0(qj, y20 , y30 ,..., yi0 1) = 0. 8 9 + + + By merging yj,2 with y0j,2, yj,3 with y0j,3, ... up to Qi yj,i with Q0i y0j,i, the two formulas above become8 8 9 9 yj,1 (yj,2, y0j,2) (yj,3, y0j,3) ...Qi(yj,i, y0j,i)Qi+1 yi0 1 9 8 9 + [(aj = 1 R0(qj, y1, y2,..., yi) = 1) (aj = 0 R0(qj, y20 , y30 ,..., yi0 1) = 0)]. (2) ^ _ ^ + Combining formulas (1) and (2) and taking each and quantifier over all j 1, . , m , we get 8 9 2 f g M(x) = 1 (q1,..., qm, a1,..., am, y, y1,1,..., ym,1) () 9 (y1,2,..., ym,2, y1,20 ,..., ym0 ,2) 8 (y1,3,..., ym,3, y1,30 ,..., ym0 ,3) 9 ... Qi(y1,i,..., ym,i, y1,0 i,..., ym0 ,i) Q y ,..., y i+1( 1,0 i+1 m,i+1) m ^ a 1 R q , y , y ,..., y 1 a 0 R q , y , y ,..., y 0 [( j = 0( j 1 2 i) = ) ( j = 0( j 20 30 i0+1) = )] j=1 ^ _ ^ R(x, a1,..., am, y). ^ 2 More consequences of P = NP 2.1 Learning See notes from previous classes. 4 CSE 200 Winter 2016 2.2 Approximate counting The class #P is analogous to NP. Instead of asking “are there any witnesses (or accepting paths of NTM)?”, #P problems ask “how many witnesses (or accepting paths)?”. Definition 5 (#P). A language is in class #P if its objective is to compute f (x), where f is the number of polynomial length witnesses y satisfying R(x, y), and R is verifiable in polynomial time. NP #P in a straightforward way. ⊆ Toda’s theorem shows that any problem in PH has a polynomial-time Turing reduction to a counting problem. Thus #P is more powerful then NP. Theorem 6 (Toda’s Theorem). PH P#P. ⊆ Corollary 7. If #P ΣP, then PH ΣP . = i = i+1 ΣP Stockmeyer’s Theorem: for any function F #P, we can approximate F in P 2 . (i.e. ap- proximate algorithm A satisfies A(x)=(1 + ε) F2(x) A(x)(1 + ε)). Thus if P = NP, we can do approximate counting in polynomial time. ≤ ≤ References [1] Polynomial hierarchy - wikipedia. https://en.wikipedia.org/wiki/Polynomial_ hierarchy. [2] Sharp-p - wikipedia. https://en.wikipedia.org/wiki/Sharp-P. [3] Toda’s theorem - wikipedia. https://en.wikipedia.org/wiki/Toda%27s_theorem. [4] Jonathan Katz. Notes on complexity theory. http://www.cs.umd.edu/~jkatz/ complexity/f11/lecture9.pdf. 5.
Details
-
File Typepdf
-
Upload Time-
-
Content LanguagesEnglish
-
Upload UserAnonymous/Not logged-in
-
File Pages5 Page
-
File Size-