§6 PSPACE and Polynomial Hierarchy PSPACE-complete problems QBF, 3QBF, GRAPH (Savitch's Theorem: PSPACE = NPSPACE) Polynomial Hierarchy: syntactically / semantically (Baker, Gill & Solovay)
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 LPSPACE 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
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?
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?
Oracle Complexity Theory Fix ON. An OWHILE+ program AO has test instructions "xjO?" Definition: Fix some class C of subsets LN. PC := { LN decided by polytime OWHILE+ AO, OC } NPC := { LN accep. nondet.poly. OWHILE+ AO, OC } Examples: a) MinBF NPSAT = NPNP PNPNP b) PP=P, NPP=NP, PSPACEPSPACE=PSPACE c) NP coNP PNP; „≠“ unless NP=coNP
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 NPcoNP NP coNP =Σ1P =Π1P P
k+1P = NPkP =NPkP k+1P =coNPΣkP =coNPkP Syntactic Polynomial Hierarchy Abbreviate Nn := { yN : ℓ(y)≤n } Theorem: a) LN belongs to coNP iff L = { x | yNpoly(n) : x,yV } for some VP b) L belongs to k+1 iff L = { x | yNpoly(n) : x,yW } for some Wk or k c) L belongs to k+1 iff L = { x | yNpoly(n) : x,yZ } for some Zk or k d) L belongs to k iff L = { x | y1Npoly(n) y2Npoly(n) y3… QkykNpoly(n) : x,y1,y2,…ykA } for some AP n:=ℓ(x) "" if k odd, "" else k+1P = NPkP =NPkP k+1P =coNPΣkP =coNPkP
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