Umans Complexity Theory Lectures Lecture 12: The Polynomial-Time Hierarchy 2 Oracle Turing Machines • Oracle Turing Machine (OTM): – Deterministic multitape TM M with special querytape – special states q ? , q yes , q no – on input x, with oracle language A –M A runs as usual, except… – when M A enters state q ? : • y = contents of query tape •y ∈ A ⇒ transition to q yes •y ∉ A ⇒ transition to q no 3 Oracle Turing Machines • Nondeterministic Oracle TM (NOTM) – defined in the same way – (transition relation, rather than function) • oracle is like a subroutine, or function in your favorite programming language – but each call counts as single step e.g.: given φ 1 , φ 2 , …, φ n are even # satisfiable? – poly-time OTM solves with SAT oracle 4 Oracle Turing Machines Shorthand #1: • applying oracles to entire complexity classes: – complexity class C – language A C A = {L decided by OTM M with oracle A with M inC} – example: P SAT
13
Embed
Oracle Turing Machine (OTM): Umans Complexity Theory ...reif/courses/complectures/Umans/lec12.pdf · Umans Complexity Theory Lectures Lecture 12: ... – poly-time OTM solves with
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
– Deterministic multitape TM M with special �query� tape
– special states q?, qyes, qno
– on input x, with oracle language A – MA runs as usual, except… – when MA enters state q?:
• y = contents of query tape • y ∈ A ⇒ transition to qyes • y ∉ A ⇒ transition to qno
3
Oracle Turing Machines
• Nondeterministic Oracle TM (NOTM) – defined in the same way – (transition relation, rather than function)
• oracle is like a subroutine, or function in your favorite programming language – but each call counts as single step e.g.: given φ1, φ2, …, φn are even # satisfiable? – poly-time OTM solves with SAT oracle
4
Oracle Turing Machines
Shorthand #1: • applying oracles to entire complexity
classes: – complexity class C – language A CA = {L decided by OTM M with oracle A with M �in��C}
– example: PSAT
5
Oracle Turing Machines
Shorthand #2: • using complexity classes as oracles:
– OTM M – complexity class C – MC decides language L if for some language
A ∈ C, MA decides L Both together: CD = languages decided by
OTM �in��C with oracle language from D exercise: show PSAT = PNP
6
The Polynomial-Time Hierarchy
• can define lots of complexity classes using oracles
• the classes on the next slide stand out – they have natural complete problems – they have a natural interpretation in terms of
alternating quantifiers – they help us state certain consequences and
containments (more later)
7
The Polynomial-Time Hierarchy
Σ0 = Π0 = P
Δ1=PP Σ1=NP Π1=coNP Δ2=PNP Σ2=NPNP Π2=coNPNP
Δi+1=PΣi Σi+i=NPΣi
Πi+1=coNPΣi
Polynomial Hierarchy PH = ∪i Σi
8
The Polynomial-Time Hierarchy
Σ0 = Π0 = P Δi+1=PΣi
Σi+i=NPΣi Πi+1=coNPΣi
• Example: – MIN CIRCUIT: given Boolean circuit C,
integer k; is there a circuit C� of size at most k that computes the same function C does?
– MIN CIRCUIT ∈ Σ2
9
The Polynomial-Time Hierarchy
Σ0 = Π0 = P Δi+1=PΣi
Σi+i=NPΣi Πi+1=coNPΣi
• Example: – EXACT TSP: given a weighted graph G, and
an integer k; is the k-th bit of the length of the shortest TSP tour in G a 1?
– EXACT TSP ∈ Δ2
10
The PH
PSPACE: generalized geography, 2-person games…
3rd level: V-C dimension…
2nd level: MIN CIRCUIT, BPP…
1st level: SAT, UNSAT, factoring, etc…
P
NP coNP
Σ3 Π3
Δ3
PSPACE
EXP
PH
Σ2 Π2
Δ2
11
Useful characterization
• Recall: L ∈ NP iff expressible as L = { x | � y, |y| ≤ |x|k, (x, y) ∈ R }
where R ∈ P. • Corollary: L ∈ coNP iff expressible as
L = { x | � y, |y| ≤ |x|k, (x, y) ∈ R } where R ∈ P.
12
Useful characterization
Theorem: L ∈ Σi iff expressible as L = { x | � y, |y| ≤ |x|k, (x, y) ∈ R }
where R ∈ Πi-1. • Corollary: L ∈ Πi iff expressible as
L = { x | � y, |y| ≤ |x|k, (x, y) ∈ R } where R ∈ Σi-1.
13
Useful characterization
• Proof of Theorem: – induction on i – base case (i =1) on previous slide (⇐ ) – we know Σi = NPΣi-1 = NPΠi-1
– guess y, ask oracle if (x, y) ∈ R
Theorem: L ∈ Σi iff expressible as L = { x | � y, |y| ≤ |x|k, (x, y) ∈ R }, where R ∈ Πi-1.
14
Useful characterization
( ⇒)
– given L ∈ Σi = NPΣi-1 decided by ONTM M running in time nk
– try: R = { (x, y) : y describes valid path of M�s computation leading to qaccept }
– but how to recognize valid computation path when it depends on result of oracle queries?
Theorem: L ∈ Σi iff expressible as L = { x | � y, |y| ≤ |x|k, (x, y) ∈ R }, where R ∈ Πi-1.
15
Useful characterization
– try: R = { (x, y) : y describes valid path of M�s computation leading to qaccept }
– valid path = step-by-step description including correct yes/no answer for each A-oracle query zj (A ∈ Σi-1)
– hardwire A = START, B = ACCEPT �w1�w2… �V φ(W, V) ⇔ x ∈ L
29
QSAT is PSPACE-complete
– ψo(A, B) = true iff
• A = B or • A yields B in one step of M
…
…
STEP STEP STEP STEP
config. A
config. B
Boolean expression of size O(nk)
30
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: then formula grows exponentially large)
31
QSAT is PSPACE-complete – Key idea #2: use quantifiers
– Couldn�t do ψi+1(A, B) = �Z [ψi(A, Z) ∧ ψi(Z, B)]
– Key Idea: define ψi+1(A, B) to be
�Z�X�Y [((X=A∧Y=Z)∨(X=Z∧Y=B))
⇒ ψi(X, Y)] – ψi(X, Y) is preceded by quantifiers – move to front (they don�t involve X,Y,Z,A,B)
32
QSAT is PSPACE-complete ψo(A, B) = true iff A = B or A yields B in 1 step ψi+1(A, B) = �Z�X�Y[((X=A∧Y=Z)∨(X=Z∧Y=B))
⇒ ψi(X, Y)]
– |ψ0| = O(nk) – |ψi+1| = O(nk) + |ψi|
– total size of ψnk is O(nk)2 = poly(n) – logspace reduction
33
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
P
NP coNP
Σ3 Π3
Δ3
PH
Σ2 Π2
Δ2
34
PH collapse
– recall: L ∈ Σi+1 iff 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
35
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?
36
Natural complete problems
• We now have quantified versions of SAT complete for levels in PH, PSPACE
• Natural complete problems? – PSPACE: QSAT and games
– PH: bounded quantifier QSAT & games with bounded alternations
• almost all other natural problems lie in the second and third level of PH
37
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.
38
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
athens auckland
san francisco
oakland
davis
• GEOGRAPHY = {(G, s) : G is a directed graph and player I can win from node s}
39
Natural complete problems in PSPACE
Theorem: GEOGRAPHY is PSPACE-complete.
Proof:
– in PSPACE • easily expressed with alternating quantifiers
– PSPACE-hard • reduction from QSAT
40
Proof Sketch: GEOGRAPHY is PSPACE-complete.
�x1�x2�x3…(¬x1∨x2∨¬x3)∧(¬x3∨x1)∧…∧(x1∨¬x2)
true false
true false
true false …
x1
x2
x3
I II
II
II
II
I
I
I
I
alternately pick truth assignment
pick a clause
I II
I pick a true literal?
41
Karp-Lipton Theorem • 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) • P/poly = Family of languages recognized
by polynomial size boolean circuits • suppose SAT has poly-size circuits, so:
SAT ∈ P/poly – any consequences? – might hope: SAT ∈ P/poly ⇒ PH collapses to
P, same as if SAT ∈ P 42
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 Theorem
43
Proof of Karp-Lipton Theorem
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
44
Proof of Karp-Lipton Theorem
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
45
Theorem BPP ⊂ PH – BPP language L: probabilistic TM M: x ∈ L ⇒ Pry[M(x,y) accepts] ≥ 2/3
x ∉ L ⇒ Pry[M(x,y) rejects] ≥ 2/3
• Don�t know BPP different from EXP • Also don�t know if Π2∩Σ2 is different from
EXP but believe much weaker
• Theorem (S,L,GZ): BPP⊂ (Π2∩Σ2)
46
Proof of Theorem BPP ⊂ PH • 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
– Known Strong error reduction: – There exists a probabilistic 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)
47
Proof of Theorem BPP ⊂ PH
• view y� = (w, z), each of length n/2 • consider output of M�(x, (w, z)):