CS151 Complexity Theory Lecture 17 May 27, 2004. CS151 Lecture 172 Outline elements of the proof of the PCP Theorem counting problems –#P and its relation.

Slides:



Advertisements
Similar presentations
COMPLEXITY THEORY CSci 5403 LECTURE XVI: COUNTING PROBLEMS AND RANDOMIZED REDUCTIONS.
Advertisements

Approximate List- Decoding and Hardness Amplification Valentine Kabanets (SFU) joint work with Russell Impagliazzo and Ragesh Jaiswal (UCSD)
Complexity Theory Lecture 7
Lecture 16: Relativization Umans Complexity Theory Lecturess.
CS151 Complexity Theory Lecture 8 April 22, 2004.
Great Theoretical Ideas in Computer Science for Some.
Umans Complexity Theory Lectures Lecture 15: Approximation Algorithms and Probabilistically Checkable Proofs (PCPs)
Complexity 18-1 Complexity Andrei Bulatov Probabilistic Algorithms.
1 Introduction to Computability Theory Lecture12: Reductions Prof. Amos Israeli.
CS151 Complexity Theory Lecture 5 April 13, 2015.
CS151 Complexity Theory Lecture 7 April 20, 2004.
CS151 Complexity Theory Lecture 5 April 13, 2004.
Arithmetic Hardness vs. Randomness Valentine Kabanets SFU.
CS151 Complexity Theory Lecture 12 May 6, CS151 Lecture 122 Outline The Polynomial-Time Hierarachy (PH) Complete problems for classes in PH, PSPACE.
CS151 Complexity Theory Lecture 7 April 20, 2015.
Submitted by : Estrella Eisenberg Yair Kaufman Ohad Lipsky Riva Gonen Shalom.
–Def: A language L is in BPP c,s ( 0  s(n)  c(n)  1,  n  N) if there exists a probabilistic poly-time TM M s.t. : 1.  w  L, Pr[M accepts w]  c(|w|),
Analysis of Algorithms CS 477/677
CS151 Complexity Theory Lecture 13 May 11, CS151 Lecture 132 Outline Natural complete problems for PH and PSPACE proof systems interactive proofs.
Chapter 11: Limitations of Algorithmic Power
CS151 Complexity Theory Lecture 15 May 18, CS151 Lecture 152 Outline IP = PSPACE Arthur-Merlin games –classes MA, AM Optimization, Approximation,
CS151 Complexity Theory Lecture 6 April 15, 2004.
February 20, 2015CS21 Lecture 191 CS21 Decidability and Tractability Lecture 19 February 20, 2015.
CS151 Complexity Theory Lecture 16 May 25, CS151 Lecture 162 Outline approximation algorithms Probabilistically Checkable Proofs elements of the.
CS151 Complexity Theory Lecture 9 April 27, 2004.
Theory of Computing Lecture 19 MAS 714 Hartmut Klauck.
February 18, 2015CS21 Lecture 181 CS21 Decidability and Tractability Lecture 18 February 18, 2015.
Optimal Proof Systems and Sparse Sets Harry Buhrman, CWI Steve Fenner, South Carolina Lance Fortnow, NEC/Chicago Dieter van Melkebeek, DIMACS/Chicago.
Computational Complexity Theory Lecture 2: Reductions, NP-completeness, Cook-Levin theorem Indian Institute of Science.
Theory of Computing Lecture 17 MAS 714 Hartmut Klauck.
On Constructing Parallel Pseudorandom Generators from One-Way Functions Emanuele Viola Harvard University June 2005.
CS151 Complexity Theory Lecture 13 May 11, Outline proof systems interactive proofs and their power Arthur-Merlin games.
1 Interactive Proofs proof systems interactive proofs and their power Arthur-Merlin games.
Week 10Complexity of Algorithms1 Hard Computational Problems Some computational problems are hard Despite a numerous attempts we do not know any efficient.
Complexity 25-1 Complexity Andrei Bulatov Counting Problems.
May 9, New Topic The complexity of counting.
Theory of Computing Lecture 21 MAS 714 Hartmut Klauck.
CS151 Complexity Theory Lecture 12 May 6, QSAT is PSPACE-complete Theorem: QSAT is PSPACE-complete. Proof: 8 x 1 9 x 2 8 x 3 … Qx n φ(x 1, x 2,
Umans Complexity Theory Lectures Lecture 1a: Problems and Languages.
Fall 2013 CMU CS Computational Complexity Lecture 7 Alternating Quantifiers, PH, PSPACE. These slides are mostly a resequencing of Chris Umans’
Fall 2013 CMU CS Computational Complexity Lectures 8-9 Randomness, communication, complexity of unique solutions These slides are mostly a resequencing.
Umans Complexity Theory Lectures Lecture 17: Natural Proofs.
CS151 Complexity Theory Lecture 16 May 20, The outer verifier Theorem: NP  PCP[log n, polylog n] Proof (first steps): –define: Polynomial Constraint.
Probabilistic verification Mario Szegedy, Rutgers www/cs.rutgers.edu/~szegedy/07540 Lecture 1.
Complexity 24-1 Complexity Andrei Bulatov Interactive Proofs.
Comparing Notions of Full Derandomization Lance Fortnow NEC Research Institute With thanks to Dieter van Melkebeek.
The NP class. NP-completeness Lecture2. The NP-class The NP class is a class that contains all the problems that can be decided by a Non-Deterministic.
CS151 Complexity Theory Lecture 15 May 18, Gap producing reductions Main purpose: –r-approximation algorithm for L 2 distinguishes between f(yes)
Umans Complexity Theory Lectures Lecture 16: The PCP Theorem.
Pseudorandomness: New Results and Applications Emanuele Viola IAS April 2007.
Pseudo-randomness. Randomized complexity classes model: probabilistic Turing Machine –deterministic TM with additional read-only tape containing “coin.
Complexity Theory and Explicit Constructions of Ramsey Graphs Rahul Santhanam University of Edinburgh.
The NP class. NP-completeness
Umans Complexity Theory Lectures
Probabilistic Algorithms
Umans Complexity Theory Lectures
NP-Completeness Yin Tat Lee
Umans Complexity Theory Lectures
CS151 Complexity Theory Lecture 17 May 31, 2017.
CS21 Decidability and Tractability
NP-Completeness Yin Tat Lee
Umans Complexity Theory Lectures
CS21 Decidability and Tractability
Umans Complexity Theory Lectures
Umans Complexity Theory Lectures
CS151 Complexity Theory Lecture 7 April 23, 2019.
CS151 Complexity Theory Lecture 12 May 10, 2019.
CS151 Complexity Theory Lecture 5 April 16, 2019.
CS151 Complexity Theory Lecture 4 April 12, 2019.
CS151 Complexity Theory Lecture 4 April 8, 2004.
Presentation transcript:

CS151 Complexity Theory Lecture 17 May 27, 2004

CS151 Lecture 172 Outline elements of the proof of the PCP Theorem counting problems –#P and its relation to other classes –complexity of computing the permanent proofs about proofs: –relativization –natural proofs course summary

May 27, 2004CS151 Lecture 173 NP  PCP[log n, polylog n] Proof of Lemma (summary): –reducing 3-SAT to MAX-k-PCS gap problem –φ(x 1, x 2,…, x n ) instance of 3-SAT –set m = O(log n/loglog n) –H  F q such that |H| m = n (|H| = polylog n, q  |H| 3 ) –generate |F q | 3m+3 = poly(n) constraints: C Z =  i=0…3m+3+1 C i, Z –each refers to assignment poly. Q and φ (via p a’ ) –all polys degree d = O(m|H|) = polylog n –either all are satisfied or at most d/q = o(1) << ε

May 27, 2004CS151 Lecture 174 NP  PCP[log n, polylog n] log n random bits to pick a constraint query assignment in polylog(n) locations to determine if constraint is satisfied –completeness 1 –soundness (1-  ) if prover keeps promise to supply degree d polynomial prover can cheat by not supplying proof in expected form

May 27, 2004CS151 Lecture 175 NP  PCP[log n, polylog n] Low-degree testing: –want: randomized procedure that is given d, oracle access to f:(F q ) m  F q runs in poly(m, d) time always accepts if deg(f) ≤ d rejects with high probability if deg(f) > d –too much to ask. Why?

May 27, 2004CS151 Lecture 176 NP  PCP[log n, polylog n] Definition: functions f, g are δ-close if Pr x [f(x) ≠ g(x)]  δ Lemma:  δ > 0 and a randomized procedure that is given d, oracle access to f:(F q ) m  F q –runs in poly(m, d) time –uses O(m log |F q |) random bits –always accepts if deg(f) ≤ d –rejects with high probability if f is not δ-close to any g with deg(g) ≤ d

May 27, 2004CS151 Lecture 177 NP  PCP[log n, polylog n] idea of proof: –restrict to random line L –check if it is low degree –always accepts if deg(f) ≤ d –other direction much more complex (Fq)m(Fq)m

May 27, 2004CS151 Lecture 178 NP  PCP[log n, polylog n] –can only force prover to supply function f that is close to a low-degree polynomial –how to bridge the gap? –recall low-degree polynomials form an error correcting code (Reed-Muller) –view “close” function as corrupted codeword

May 27, 2004CS151 Lecture 179 NP  PCP[log n, polylog n] Self-correction: –want: randomized procedure that is given x, oracle access to f:(F q ) m  (F q ) that is δ-close to a (unique) degree d polynomial g runs in poly(m, d) time uses O(m log |F q |) random bits with high probability outputs g(x)

May 27, 2004CS151 Lecture 1710 NP  PCP[log n, polylog n] Lemma:  a randomized procedure that is given x, oracle access to f:(F q ) m  (F q ) that is δ-close to a (unique) degree d polynomial g –runs in poly(m, d) time –uses O(m log |F q |) random bits –outputs g(x) with high probability

May 27, 2004CS151 Lecture 1711 NP  PCP[log n, polylog n] idea of proof: –restrict to random line L passing through x –query points along line –apply error correction (Fq)m(Fq)m

May 27, 2004CS151 Lecture 1712 NP  PCP[log n, polylog n] Putting it all together: –given L  NP and an instance x, verifier computes reduction to MAX-k-PCS gap problem –prover supplies proof in form f:(F q ) m  (F q ) (plus some other info used for low-degree testing) –verifier runs low-degree test rejects if f not close to some low degree function g –verifier picks random constraint C i ; checks if sat. by g uses self-correction to get values of g from f –accept if C i satisfied; otherwise reject

May 27, 2004CS151 Lecture 1713 Counting problems So far, we have ignored function problems –given x, compute f(x) justification: usually easily reducible to related decision problem important class of function problems that don’t seem to have this property: counting problems –e.g. given 3-CNF φ how many satisfying assignments are there?

May 27, 2004CS151 Lecture 1714 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.

May 27, 2004CS151 Lecture 1715 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?

May 27, 2004CS151 Lecture 1716 Reductions Reduction from function problem f 1 to function problem f 2 –two efficiently computable functions Q, A x (prob. 1) y (prob. 2) f 2 (y) f 1 (x) Q A f2f2 f1f1

May 27, 2004CS151 Lecture 1717 Reductions problem f is #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 x (prob. 1) y (prob. 2) f 2 (y) f 1 (x) Q A f2f2 f1f1

May 27, 2004CS151 Lecture 1718 #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

May 27, 2004CS151 Lecture 1719 #SAT –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}| …x… …y… C CVAL reduction for R 1 iff (x, y)  R f(x) = |{y : (x, y)  R}|

May 27, 2004CS151 Lecture 1720 Relationship to other classes To compare to classes of decision problems, usually consider P #P which is a decision class… easy: NP, coNP  P #P easy: P #P  PSPACE Toda’s Theorem: PH  P #P.

May 27, 2004CS151 Lecture 1721 Relationship to other classes Question: is #P hard because it entails finding NP witnesses? …or is counting difficult by itself?

May 27, 2004CS151 Lecture 1722 Bipartite Matchings Definition: –G = (U, V, E) bipartite graph with |U| = |V| –a perfect matching in G is a subset M  E that touches every node, and no two edges in M share an endpoint

May 27, 2004CS151 Lecture 1723 Bipartite Matchings Definition: –G = (U, V, E) bipartite graph with |U| = |V| –a perfect matching in G is a subset M  E that touches every node, and no two edges in M share an endpoint

May 27, 2004CS151 Lecture 1724 Bipartite Matchings #MATCHING: given a bipartite graph G = (U, V, E) how many perfect matchings does it have? Theorem: #MATCHING is #P-complete. But… can find a perfect matching in polynomial time! –counting itself must be difficult

May 27, 2004CS151 Lecture 1725 The permanent The permanent of a matrix A is defined as: per(A) = Σ π Π i A i, π(i) # of perfect matchings in a bipartite graph G is exactly permanent of G’s adjacency matrix A G –a perfect matching defines a permutation that contributes 1 to the sum

May 27, 2004CS151 Lecture 1726 The permanent thus permanent is #P-complete –permanent also has many nice properties that make it a favorite of complexity theory contrast permanent (very hard) per(A) = Σ π Π i A i, π(i) to determinant (very easy): det(A) = Σ π sgn(π) Π i A i, π(i)

May 27, 2004CS151 Lecture 1727 Approaches to open problems Almost all major open problems we have seen entail proving lower bounds –P ≠ NP- P = BPP * –L ≠ P- NP = AM * –P ≠ PSPACE –NC proper –BPP ≠ EXP –PH proper –P/poly ≠ EXP we know circuit lower bounds imply derandomization more difficult (and recent): derandomization implies circuit lower bounds!

May 27, 2004CS151 Lecture 1728 Approaches to open problems two natural approaches –simulation+diagonalization (uniform) –circuit lower bounds (non-uniform) no success for either approach as applied to date Why ?

May 27, 2004CS151 Lecture 1729 Approaches to open problems in a precise, formal sense these approaches are too powerful ! if they could be used to resolve major open problems, a side effect would be: –proving something that is false, or –proving something that is believed to be false

May 27, 2004CS151 Lecture 1730 Relativization Many proofs and techniques we have seen relativize: –they hold after replacing all TMs with oracle TMs that have access to an oracle A –e.g. L A  P A for all oracles A –e.g. P A ≠ EXP A for all oracles A

May 27, 2004CS151 Lecture 1731 Relativization Idea: design an oracle A relative to which some statement is false –implies there can be no relativizing proof of that statement –e.g. design A for which P A = NP A Better: also design an oracle B relative to which statement is true –e.g. also design B for which P B ≠ NP B –implies no relativizing proof can resolve truth of the statement either way !

May 27, 2004CS151 Lecture 1732 Relativization Oracles are known that falsify almost every major conjecture concerning complexity classes –for these conjectures, non-relativizing proofs are required –almost all known proofs in Complexity relativize (sometimes after some reformulation) – notable exceptions: The PCP Theorem IP = PSPACE most circuit lower bounds (more on these later)

May 27, 2004CS151 Lecture 1733 Oracles for P vs. NP Goal: –oracle A for which P A = NP A –oracle B for which P B ≠ NP B conclusion: resolving P vs. NP requires a non-relativizing proof

May 27, 2004CS151 Lecture 1734 Oracles for P vs. NP for P A = NP A need A to be powerful –warning: intend to make P more powerful, but also make NP more powerful. –e.g. A = SAT doesn’t work –however A = QSAT works: PSPACE  P QSAT  NP QSAT  NPSPACE and we know NPSPACE  PSPACE

May 27, 2004CS151 Lecture 1735 Oracles for P vs. NP Theorem: there exists an oracle B for which P B ≠ NP B. Proof: –define L = {1 k :  x  B s.t. |x| = k} –we will show L  NP B – P B. –easy: L  NP B (no matter what B is)

May 27, 2004CS151 Lecture 1736 Oracles for P vs. NP –design B by diagonalizing against all “P B machines” –M 1, M 2, M 3, … is an enumeration of deterministic OTMs –each machine appears infinitely often  all poly-time machines appear even if we force machine M i to accept after n log n steps –B i will be those strings of length  i in B –we build B i after simulating machine M i

May 27, 2004CS151 Lecture 1737 Oracles for P vs. NP L = {1 k :  x  B s.t. |x| = k} Proof (continued): –maintain “exceptions” X that must not go in B –initially X = { }, B 0 = { } Stage i: –simulate M i (1 i ) for i log i steps –when M i makes an oracle query q: if |q| < i, answer using B i-1 if |q|  i, answer “no”; add q to X –if simulated M i accepts 1 i then B i = B i-1 –if simulated M i rejects 1 i, B i = B i-1  {x  {0,1} i : x  X}

May 27, 2004CS151 Lecture 1738 Oracles for P vs. NP L = {1 k :  x  B s.t. |x| = k} Proof (continued): –if M i accepts, we ensure no strings of length i in B –therefore 1 i  L, and M i does not decide L –if M i rejects, we ensure some string of length i in B –Why? B i = B i-1  {x  {0,1} i : x  X} and |X| is at most Σ j  i j log j << 2 i –therefore 1 i  L, and M i does not decide L –Conclude: L  P B

May 27, 2004CS151 Lecture 1739 Circuit lower bounds Relativizing techniques are out… but most circuit lower bound techniques do not relativize exponential circuit lower bounds known for weak models: –e.g. constant-depth poly-size circuits But, utter failure (so far) for more general models. Why?

May 27, 2004CS151 Lecture 1740 Natural Proofs Razborov and Rudich defined the following “natural” format for circuit lower bounds: –identify property P of functions f:{0,1} *  {0,1} –P =  n P n is a natural property if: (useful)  n f n  P n implies f does not have poly- size circuits (constructive) can decide “f n  P n ?” in poly time given the truth table of f n (large) at least (½) O(n) fraction of all 2 2 n functions on n bits are in P n –show some function family g = {g n } is in P n

May 27, 2004CS151 Lecture 1741 Natural Proofs all known circuit lower bounds are natural for a suitably parameterized version of the definition Theorem (RR): if there is a 2 n δ -OWF, then there is no natural property P. –factoring believed to be 2 n δ -OWF –general version also rules out natural properties useful for proving many other separations, under similar cryptographic assumptions

May 27, 2004CS151 Lecture 1742 Natural Proofs Proof sketch: –main tool: pseudo-random functions –ensemble F k ={p y :{0,1} n(k)  {0,1}} y  {0,1} k –F =  k F k is t(k)-pseudo-random if given y, x, can compute p y (x) in poly(|y|, |x|) time for every prob. TM M running in time t(k): |Pr y [M p y (1 k ) = 1] – Pr f n [M f n (1 k ) = 1]|  1/t –can construct from (BMY-style) PRGs –2 n δ -OWF implies 2 cn -pseudo-random functions  c

May 27, 2004CS151 Lecture 1743 Natural Proofs (useful)  n f n  P n  f does not have poly-size circuits (constructive) “f n  P n ?” in poly time given truth table of f n (large) at least (½) O(n) fraction of all 2 2 n fns. on n-bits in P n Proof sketch (continued): –pseudo-random function p y has poly-size circuits, and so p y  P n (useful) –Define OTM M so that M(1 k ) reads 2 n(k) -size truth table of oracle and accepts if it is in P n (constructive) Pr y [M p y (1 k )=1]=0 Pr f n [M f n (1 k ) = 1]  (½) O(n) (large) –contradiction.

May 27, 2004CS151 Lecture 1744 Natural Proofs To prove circuit lower bounds, we must either: –Violate largeness: seize upon an incredibly specific feature of hard functions (one not possessed by a random function ! ) –Violate constructivity: identify a feature of hard functions that cannot be computed efficiently from the truth table no “non-natural property” known for all but the very weakest models…

May 27, 2004CS151 Lecture 1745 Course summary Time and spaceL, P, PSPACE, EXP Non-determinismNL, NP, coNP, NEXP Non-uniformityNC, P/poly RandomnessRL, ZPP, RP, coRP, BPP AlternationPH, PSPACE InteractionIP, MA, AM, PCP[log n, 1] Counting#P

May 27, 2004CS151 Lecture 1746 The big picture All classes on previous slide are probably distinct, except: –P, ZPP, RP, coRP, BPP (probably all equal) –L, RL, NL (probably all equal) –NP, MA, AM (probably all equal) –IP = PSPACE –PCP[log n, 1] = NP Only real separations we know separate classes delimiting same resource: –e.g. L ≠ PSPACE, NP ≠ NEXP

May 27, 2004CS151 Lecture 1747 The big picture Remember: possible explanation for failure to prove conjectured separations… …is that they are false

May 27, 2004CS151 Lecture 1748 The big picture Important techniques/ideas: –simulation and diagonalization –reductions and completeness –self-reducibility –encoding information using low-degree polynomials –randomness –others…

May 27, 2004CS151 Lecture 1749 The big picture I hope you take away: –an ability to extract the essential features of a problem that make it hard/easy… –knowledge and tools to connect computational problems you encounter with larger questions in complexity –background needed to understand current research in this area

May 27, 2004CS151 Lecture 1750 The last slide… –background to contribute to current research in this area many open problems young field try your hand… Thank you!