430 likes | 459 Views
Dive into the intricacies of alternating quantifiers in complexity theory and explore complete problems in this detailed lecture. Understand PSPACE completeness and various levels of Σi complexity. Discover the significance of QSAT and its impact on the polynomial hierarchy.
E N D
CS151Complexity Theory Lecture 12 May 10, 2019
Alternating quantifiers Nicer, more usable version: • LΣiiff expressible as L = { x | y1y2y3 …Qyi(x, y1,y2,…,yi)R } where Q=/if i even/odd, andRP • LΠiiff expressible as L = { x | y1y2y3 …Qyi(x, y1,y2,…,yi)R } where Q=/if i even/odd, andRP
Alternating quantifiers Pleasing viewpoint: “…” PSPACE const. # of alternations poly(n) alternations PH Δ3 Σ2 Π2 “” “” Σi Πi “…” “…” Δ2 Σ3 Π3 “” “” NP coNP “” “” P
Complete problems • three variants of SAT: • QSATi(i odd) = {3-CNFs φ(x1, x2, …, xi) for which x1x2x3 … xi φ(x1, x2, …, xi) = 1} • QSATi(i even) = {3-DNFs φ(x1, x2, …, xi) for which x1x2x3 … xi φ(x1, x2, …, xi) = 1} • QSAT = {3-CNFs φ for which x1x2x3 … Qxnφ(x1, x2, …, xn) = 1}
QSATi is Σi-complete Theorem: QSATi is Σi-complete. • Proof: (clearly in Σi) • assume iodd; given L Σi in form { x | y1y2y3 … yi (x, y1,y2,…,yi) R } …x… …y1… …y2… …y3… … …yi… C CVAL reduction for R 1 iff(x, y1,y2,…,yi) R
QSATi is Σi-complete …x… …y1… …y2… …y3… … …yi… • Problem set: can construct 3-CNF φfrom C: zφ(x,y1,…,yi, z) = 1 C(x,y1,…,yi) = 1 • we get: y1y2…yizφ(x,y1,…,yi, z) = 1 y1y2…yiC(x,y1,…,yi) = 1x L C 1 iff(x, y1,y2,…,yi) R CVAL reduction for R
QSATi is Σi-complete • Proof (continued) • assume ieven; given L Σi in form { x | y1y2y3 … yi (x, y1,y2,…,yi) R } …x… …y1… …y2… …y3… … …yi… C CVAL reduction for R 1 iff(x, y1,y2,…,yi) R
QSATi is Σi-complete …x… …y1… …y2… …y3… … …yi… • Problem set: can construct 3-DNF φfrom C: zφ(x,y1,…,yi, z) = 1 C(x,y1,…,yi) = 1 • we get: y1y2… yizφ(x,y1,y2,…,yi, z) = 1 y1y2… yi C(x,y1,y2,…,yi) = 1 x L C 1 iff(x, y1,y2,…,yi) R CVAL reduction for R
QSAT is PSPACE-complete Theorem: QSAT is PSPACE-complete. • Proof: x1x2x3 … Qxnφ(x1, x2, …, xn)? • in PSPACE: x1x2x3 … Qxnφ(x1, x2, …, xn)? • “x1”: for each x1, recursively solve x2x3 … Qxnφ(x1, x2, …, xn)? • if encounter “yes”, return “yes” • “x1”: for each x1, recursively solve x2x3 … Qxnφ(x1, x2, …, xn)? • if encounter “no”, return “no” • base case: evaluating a 3-CNF expression • poly(n) recursion depth • poly(n) bits of state at each level
QSAT is PSPACE-complete • given TM M deciding L PSPACE; input x • 2nkpossible configurations • single START configuration • assume single ACCEPT configuration • define: REACH(X, Y, i) configuration Y reachable from configuration X in at most 2i steps.
QSAT is PSPACE-complete REACH(X, Y, i) configuration Y reachable from configuration X in at most 2i steps. • Goal: produce 3-CNF φ(w1,w2,w3,…,wm) such that w1w2…Qwm φ(w1,…,wm) REACH(START, ACCEPT, nk)
QSAT is PSPACE-complete • for i = 0, 1, … nk produce quantified Boolean expressionsψi(A, B, W) w1w2… ψi(A, B, W) REACH(A, B, i) • convert ψnkto 3-CNF φ • add variables V • w1w2… V φ(A, B, W, V) REACH(A, B, nk) • hardwire A = START, B = ACCEPT w1w2… Vφ(W, V) x L
QSAT is PSPACE-complete • ψo(A, B) = true iff • A = B or • A yields B in one step of M Boolean expression of size O(nk) … config. A STEP STEP STEP STEP config. B …
QSAT is PSPACE-complete • Key observation #1: REACH(A, B, i+1) Z[REACH(A, Z, i) REACH(Z, B, i)] • cannot define ψi+1(A, B) to be Z [ψi(A, Z) ψi(Z, B)] (why?)
QSAT is PSPACE-complete • Key idea #2: use quantifiers • couldn’t do ψi+1(A, B) = Z [ψi(A, Z)ψi(Z, B)] • define ψi+1(A, B) to be ZXY[((X=AY=Z)(X=ZY=B)) ψi(X, Y)] • ψi(X, Y) is preceded by quantifiers • move to front (they don’t involve X,Y,Z,A,B)
QSAT is PSPACE-complete ψo(A, B) = true iff A = B or A yields B in 1 step ψi+1(A, B) = ZXY[((X=AY=Z)(X=ZY=B)) ψi(X, Y)] • |ψ0| = O(nk) • |ψi+1| = O(nk) + |ψi| • total size of ψnkis O(nk)2 = poly(n) • logspace reduction
PH Σ3 Π3 Δ3 Σ2 Π2 Δ2 NP coNP P PH collapse Theorem: if Σi = Πi then for all j > i Σj = Πj = Δj= Σi “the polynomial hierarchy collapses to the i-th level” • Proof: • sufficient to show Σi = Σi+1 • then Σi+1= Σi = Πi =Πi+1;apply theorem again
PH collapse • recall: L Σi+1iff expressible as L = { x | y (x, y) R } where R Πi • since Πi= Σi, R expressible as R = { (x,y) | z((x, y), z)R’ } where R’Πi-1 • together: L = { x | (y, z) (x, (y, z)) R’} • conclude L Σi
Oracles vs. Algorithms A point to ponder: • given poly-time algorithm for SAT • can you solve MIN CIRCUIT efficiently? • what other problems? Entire complexity classes? • given SAT oracle • same input/output behavior • can you solve MIN CIRCUIT efficiently?
Natural complete problems • We now have versions of SAT complete for levels in PH, PSPACE • Natural complete problems? • PSPACE: games • PH: almost all natural problems lie in the second and third level
Natural complete problems in PH • MIN CIRCUIT • good candidate to be 2-complete, still open • MIN DNF: given DNF φ, integer k; is there a DNF φ’ of size at most k computing same function φ does? Theorem (U): MIN DNF is Σ2-complete.
Natural complete problems in PSPACE • General phenomenon: many 2-player games are PSPACE-complete. • 2 players I, II • alternate pick- ing edges • lose when no unvisited choice pasadena auckland athens davis san francisco oakland • GEOGRAPHY = {(G, s) : G is a directed graph and player I can win from node s}
Natural complete problems in PSPACE Theorem: GEOGRAPHY is PSPACE-complete. Proof: • in PSPACE • easily expressed with alternating quantifiers • PSPACE-hard • reduction from QSAT
Natural complete problems in PSPACE x1x2x3…(x1x2x3)(x3x1)…(x1x2) I false alternately pick truth assignment true x1 II I II x2 true false I II I I x3 true false pick a clause II II … I I pick a true literal?
Karp-Lipton • we know that P = NP implies SAT has polynomial-size circuits. • (showing SAT does not have poly-size circuits is one route to proving P ≠ NP) • suppose SAT has poly-size circuits • any consequences? • might hope: SAT P/polyPHcollapses to P, same as if SAT P
Karp-Lipton Theorem (KL): if SAT has poly-size circuits then PH collapses to the second level. • Proof: • suffices to show Π2 Σ2 • L Π2 implies L expressible as: L = {x : y z (x, y, z) R} with R P.
Karp-Lipton L = {x : y z (x, y, z) R} • given (x, y), “z (x, y, z) R?” is in NP • pretend C solves SAT, use self-reducibility • Claim: if SAT P/poly, then L = { x : C y [use C repeatedly to find some z for which (x, y, z) R; accept iff (x, y, z) R] } poly time
Karp-Lipton L = {x : y z (x, y, z) R} {x :C y [use C repeatedly to find some z for which (x,y,z) R; accept iff (x,y,z) R] } • x L: • some C decides SAT C y[…] accepts • x L: • y z(x, y, z) R C y[…] rejects
BPPPH • Recall: don’t know BPP different from EXP Theorem (S,L,GZ): BPP(Π2Σ2) • don’t know Π2Σ2 different from EXP but believe muchweaker
BPPPH • Proof: • BPP language L: p.p.t. TM M: x L Pry[M(x,y) accepts] ≥ 2/3 x L Pry[M(x,y) rejects] ≥ 2/3 • strong error reduction: p.p.t. TM M’ • use n random bits (|y’| = n) • # strings y’ for which M’(x, y’) incorrect is at most 2n/3 • (can’t achieve with naïve amplification)
BPPPH so many ones, some disk is all ones so few ones, not enough for whole disk • view y’ = (w, z), each of length n/2 • consider output of M’(x, (w, z)): w =000…00000…01000…10 … 111…11 xL 1 1 1 1 1 0 0 0 1 1 1 1 1 1 1 1 1 1 1 … 0 1 1 1 0 1 1 0 1 1 1 1 0 1 0 1 1 1 1 0 0 1 1 1 1 1 1 0 1 1 1 1 1 0 1 1 1 1 0 1 0 1 1 0 1 xL 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 … 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 1 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
BPPPH • proof (continued): • strong error reduction: # bad y’ < 2n/3 • y’ = (w, z) with |w| = |z| = n/2 • Claim: L = {x : w z M’(x, (w, z)) = 1 } • xL: suppose wz M’(x, (w, z)) = 0 • implies 2n/2 0’s; contradiction • xL: suppose wz M’(x, (w, z)) = 1 • implies 2n/2 1’s; contradiction
BPPPH • given BPP language L: p.p.t. TM M: x L Pry[M(x,y) accepts] ≥ 2/3 x L Pry[M(x,y) rejects] ≥ 2/3 • showed L = {x :w z M’(x, (w, z)) = 1} • thus BPPΣ2 • BPP closed under complement BPPΠ2 • conclude: BPP(Π2Σ2)
New Topic The complexity of counting
Counting problems • So far, we have ignored function problems • given x, compute f(x) • important class of function problems: counting problems • e.g. given 3-CNF φ how many satisfying assignments are there?
Counting problems • #P is the class of function problems expressible as: input x f(x) = |{y : (x, y) R}| where R P. • compare to NP(decision problem) input x f(x) = y : (x, y) R ? where R P.
Counting problems • examples • #SAT: given 3-CNF φ how many satisfying assignments are there? • #CLIQUE: given (G, k) how many cliques of size at least k are there?
Reductions • Reduction from function problem f1 to function problem f2 • two efficiently computable functions Q, A x (prob. 1) Q y (prob. 2) f1 f2 A f2(y) f1(x)
Reductions • problem fis #P-complete if • f is in #P • every problem in #P reduces to f • “parsimonious reduction”: A is identity • many standard NP-completeness reductions are parsimonious • therefore: if #SAT is #P-complete we get lots of #P-complete problems Q x (prob. 1) y (prob. 2) f1 f2 A f2(y) f1(x)
#SAT #SAT: given 3-CNF φ how many satisfying assignments are there? Theorem: #SAT is #P-complete. • Proof: • clearly in #P: (φ, A) R A satisfies φ • take any f #P defined by R P
#SAT …x… …y… • add new variables z, produce φ such that z φ(x, y, z) = 1 C(x, y) = 1 • for (x, y) such that C(x, y) = 1 this z is unique • hardwire x • # satisfying assignments = |{y : (x, y) R}| f(x) = |{y : (x, y) R}| C CVAL reduction for R 1 iff(x, y) R
Relationship to other classes • To compare to classes of decision problems, usually consider P#P which is a decision class… • easy: NP, coNPP#P • easy: P#P PSPACE Toda’s Theorem (homework):PH P#P.
Relationship to other classes Question: is #P hard because it entails findingNP witnesses? …or is countingdifficult by itself?