Presentation is loading. Please wait.

Presentation is loading. Please wait.

§6 PSPACE and Polynomial Hierarchy

Similar presentations


Presentation on theme: "§6 PSPACE and Polynomial Hierarchy"— Presentation transcript:

1 §6 PSPACE and Polynomial Hierarchy
PSPACE-complete problems QBF, 3QBF, GRAPH (Savitch's Theorem: PSPACE = NPSPACE) Polynomial Hierarchy: syntactically / semantically (Baker, Gill & Solovay)

2 QBF and PSPACE NPc coNP ? 3QBF: Given Boolean term Φ(Y1,…Ym), NP ?
does it hold y1 y2 y3 …: Φ(y1,…ym)=1 ? PSPACE Recursively evaluate quantifiers: s(m) = s(m-1) + poly(n) Theorem: QBF is PSPACE-complete. Proof: Let A decide LPSPACE in space s:=poly(n). Encode configurations of A in s bits u=(u1,…us). edge from u to v if v encodes A's unique config after u. G=GA,s digraph with u=start config on input x, w unique accepting config. A accepts x  PG(u,w,s), : "path of length ≤2m from u to w"  v: PG(u,v,s-1)  PG(v,w,s-1)  v s,t: (s=u  t=v)  (s=v  t=w) → PG(s,t,s-1) Draw w u v of length ≤2s SAT: Given Boolean term Φ(Y1,…Yn), does it hold y1,…, yn{0,1}: Φ(y1,… yn)=1 ? NPc

3 Two-Player Game on Graphs
3QBF: Given Boolean term Φ(X1,…Xm) in 3CNF, does it hold x1 x2 x3 …: Φ(x1,…xm)=1 ? PSPACEc Fix digraph G with start vertex s. Rules: Red (start) and blue player alternatingly mark current vertex, and follow any outgoing edge to a yet unmarked vertex. Who cannot move, loses. Red has a winning strategy if, however blue reacts, red can follow such that, however ……… blue looses. Decision problem: Given (G,s), does red have a winning strategy?

4 Two-Player Game on Graphs
3QBF: Given Boolean term Φ(X1,…Xm) in 3CNF, does it hold x1 x2 x3 …: Φ(x1,…xm)=1 ? PSPACEc n 7 Proof (reduction from 3QBF): Let Φ = C1  C2  …  Ck See illustration for  = (x1  x2  x3)  (x2  x3  x7)  …  Ck Theorem: The following is PSPACE-complete: Decision problem: Given (G,s), does red have a winning strategy?

5 Oracle Complexity Theory
Fix ON. An OWHILE+ program AO has test instructions "xjO?" Definition: Fix some class C of subsets LN. PC := { LN decided by polytime OWHILE+ AO, OC } NPC := { LN accep. nondet.poly. OWHILE+ AO, OC } Examples: a) MinBF  NPSAT = NPNP  PNPNP b) PP=P, NPP=NP, PSPACEPSPACE=PSPACE c) NP  coNP  PNP; „≠“ unless NP=coNP

6 Semantic Polynomial Hierarchy
: Δ3P Def: Δ0P =Σ0P =Π0P := P Δk+1P := PΣkP Σk+1P := NPΣkP Πk+1P := coNPΣkP PH := ΣkP Lemma: a) ΔkP=co-ΔkP b) ΔkP  ΣkP  ΠkP c) ΣkP  ΠkP  Δk+1P d) PH  PSPACE Σ2PΠ2P = PΠkP NPNP coNPNP = NPΠkP =Σ2P = Π2P = coNPΠkP PNP =Δ2P NPcoNP NP coNP =Σ1P =Π1P P

7 k+1P = NPkP =NPkP k+1P =coNPΣkP =coNPkP
Syntactic Polynomial Hierarchy Abbreviate Nn := { yN : ℓ(y)≤n } Theorem: a) LN belongs to coNP iff L = { x | yNpoly(n) : x,yV } for some VP b) L belongs to k+1 iff L = { x | yNpoly(n) : x,yW } for some Wk or k c) L belongs to k+1 iff L = { x | yNpoly(n) : x,yZ } for some Zk or k d) L belongs to k iff L = { x | y1Npoly(n) y2Npoly(n) y3… QkykNpoly(n) : x,y1,y2,…ykA } for some AP n:=ℓ(x) "" if k odd, "" else k+1P = NPkP =NPkP k+1P =coNPΣkP =coNPkP

8 Walter Savitch's Theorem
Def: For nondecreasing f:N→N, let TIME(f) := { L {0,1}* decidable by WHILE+ program in time f(n) } Similarly NTIME(f), SPACE(f), NSPACE(f): nondet. WHILE+ Theorem: For any polynom. p, NSPACE(p)SPACE(p²) Proof: Let nondet. A accept L in space s:=p(n) Encode configurations of A in s bits u=(u1,…us). edge from u to v if v encodes A's possible config after u. G=GA,s digraph with u=start config on input x, w unique accepting config. A accepts x  PG(u,w,s), : "path of length ≤2m from u to w"  v: PG(u,v,s-1)  PG(v,w,s-1) Recursive algorithm of depth s stores v in s bits: O(s²) Draw u w of length ≤2s SAT: Given Boolean term Φ(Y1,…Yn), does it hold y1,…, yn{0,1}: Φ(y1,… yn)=1 ? v


Download ppt "§6 PSPACE and Polynomial Hierarchy"

Similar presentations


Ads by Google