The PCP theorem. Summary -Proof structure -Basic ingredients -Arithmetization -Properties of polynomials -3-SAT belongs to PCP[O(n 3 ),O(1)]

Slides:



Advertisements
Similar presentations
6.1 Vector Spaces-Basic Properties. Euclidean n-space Just like we have ordered pairs (n=2), and ordered triples (n=3), we also have ordered n-tuples.
Advertisements

1 The Monte Carlo method. 2 (0,0) (1,1) (-1,-1) (-1,1) (1,-1) 1 Z= 1 If  X 2 +Y 2  1 0 o/w (X,Y) is a point chosen uniformly at random in a 2  2 square.
Complexity 26-1 Complexity Andrei Bulatov Interactive Proofs.
Derandomized DP  Thus far, the DP-test was over sets of size k  For instance, the Z-Test required three random sets: a set of size k, a set of size k-k’
CS151 Complexity Theory Lecture 7 April 20, 2004.
The Counting Class #P Slides by Vera Asodi & Tomer Naveh
Algorithms in Exponential Time. Outline Backtracking Local Search Randomization: Reducing to a Polynomial-Time Case Randomization: Permuting the Evaluation.
Restricted Satisfiability (SAT) Problem
Complexity 19-1 Complexity Andrei Bulatov More Probabilistic Algorithms.
–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|),
1 CSE 417: Algorithms and Computational Complexity Winter 2001 Lecture 23 Instructor: Paul Beame.
Computability and Complexity 24-1 Computability and Complexity Andrei Bulatov Approximation.
CSE 421 Algorithms Richard Anderson Lecture 27 NP Completeness.
1 The PCP starting point. 2 Overview In this lecture we’ll present the Quadratic Solvability problem. In this lecture we’ll present the Quadratic Solvability.
1 Slides by Asaf Shapira & Michael Lewin & Boaz Klartag & Oded Schwartz. Adapted from things beyond us.
1 2 Introduction In this lecture we’ll cover: Definition of strings as functions and vice versa Error correcting codes Low degree polynomials Low degree.
The Polynomial Hierarchy By Moti Meir And Yitzhak Sapir Based on notes from lectures by Oded Goldreich taken by Ronen Mizrahi, and lectures by Ely Porat.
1 Joint work with Shmuel Safra. 2 Motivation 3 Motivation.
Products and Factors of Polynomials
Systems of Linear Equation and Matrices
Nattee Niparnan. Easy & Hard Problem What is “difficulty” of problem? Difficult for computer scientist to derive algorithm for the problem? Difficult.
Great Theoretical Ideas in Computer Science.
Lecture 22 More NPC problems
Theory of Computation, Feodor F. Dragan, Kent State University 1 NP-Completeness P: is the set of decision problems (or languages) that are solvable in.
The Complexity of Optimization Problems. Summary -Complexity of algorithms and problems -Complexity classes: P and NP -Reducibility -Karp reducibility.
Computational Complexity Theory Lecture 2: Reductions, NP-completeness, Cook-Levin theorem Indian Institute of Science.
Polynomial Review What is a polynomial? An algebraic expression consisting of one or more summed terms, each term consisting of a coefficient and one or.
INHERENT LIMITATIONS OF COMPUTER PROGRAMS CSci 4011.
NP Complexity By Mussie Araya. What is NP Complexity? Formal Definition: NP is the set of decision problems solvable in polynomial time by a non- deterministic.
Orthogonality and Least Squares
Polynomials P4.
Private Approximation of Search Problems Amos Beimel Paz Carmi Kobbi Nissim Enav Weinreb (Technion)
NP-COMPLETENESS PRESENTED BY TUSHAR KUMAR J. RITESH BAGGA.
EMIS 8373: Integer Programming NP-Complete Problems updated 21 April 2009.
Great Theoretical Ideas in Computer Science.
Umans Complexity Theory Lectures Lecture 1a: Problems and Languages.
LDK R Logics for Data and Knowledge Representation Propositional Logic: Reasoning First version by Alessandro Agostini and Fausto Giunchiglia Second version.
NP-Complete Problems. Running Time v.s. Input Size Concern with problems whose complexity may be described by exponential functions. Tractable problems.
Stats Probability Theory Summary. The sample Space, S The sample space, S, for a random phenomena is the set of all possible outcomes.
Fall 2013 CMU CS Computational Complexity Lectures 8-9 Randomness, communication, complexity of unique solutions These slides are mostly a resequencing.
Information and Coding Theory Cyclic codes Juris Viksna, 2015.
Non-Approximability Results. Summary -Gap technique -Examples: MINIMUM GRAPH COLORING, MINIMUM TSP, MINIMUM BIN PACKING -The PCP theorem -Application:
1.1 Chapter 3: Proving NP-completeness Results Six Basic NP-Complete Problems Some Techniques for Proving NP-Completeness Some Suggested Exercises.
NP-Completeness (Nondeterministic Polynomial Completeness) Sushanth Sivaram Vallath & Z. Joseph.
CSCI 3130: Formal languages and automata theory Andrej Bogdanov The Chinese University of Hong Kong The Cook-Levin.
CS151 Complexity Theory Lecture 16 May 20, The outer verifier Theorem: NP  PCP[log n, polylog n] Proof (first steps): –define: Polynomial Constraint.
Chapter 11 Introduction to Computational Complexity Copyright © 2011 The McGraw-Hill Companies, Inc. Permission required for reproduction or display. 1.
Complexity 24-1 Complexity Andrei Bulatov Interactive Proofs.
CSCI 2670 Introduction to Theory of Computing December 2, 2004.
CSCI 2670 Introduction to Theory of Computing December 7, 2005.
CSE 421 Algorithms Richard Anderson Lecture 27 NP-Completeness Proofs.
Linear Programming Chap 2. The Geometry of LP  In the text, polyhedron is defined as P = { x  R n : Ax  b }. So some of our earlier results should.
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.
Theory of Computational Complexity Probability and Computing Chapter Hikaru Inada Iwama and Ito lab M1.
Property Testing (a.k.a. Sublinear Algorithms )
Probabilistic Algorithms
Richard Anderson Lecture 26 NP-Completeness
Read Once Branching Programs: a model of computation used in CAD.
Computability and Complexity
Richard Anderson Lecture 26 NP-Completeness
NP-Completeness Yin Tat Lee
Complexity 6-1 The Class P Complexity Andrei Bulatov.
Richard Anderson Lecture 25 NP-Completeness
RS – Reed Solomon List Decoding.
NP-Completeness Yin Tat Lee
Umans Complexity Theory Lectures
CS151 Complexity Theory Lecture 7 April 23, 2019.
Instructor: Aaron Roth
CHAPTER 7 Time complexity
Presentation transcript:

The PCP theorem

Summary -Proof structure -Basic ingredients -Arithmetization -Properties of polynomials -3-SAT belongs to PCP[O(n 3 ),O(1)]

3-SAT  PCP[log, polylog ] composition lemma 3-SAT  PCP[log, polyloglog ] 3-SAT  PCP[O(n 3 ),O(1)] composition lemma 3-SAT  PCP[log,O(1)] PCP[log,O(1)]  NP PCP is closed with respect to polynomial-time Karp reducibility Proof structure

Basic ingredients -If two univariate polynomials of degree d coincides on at least d+1 points, then they are the same -aritmetization of Boolean formulas -low-degree probabilistic test -If a small fraction of the value table of a (low degree) polynomial is wrong, it is still possible to compute the right values (with high probability) -self-correcting probabilistic procedure

Polynomial associated with a formula -Let f be a CNF Boolean formula with three literals per clause -Polynomial p[ƒ] associated with f: -p[u]=1-x[u] and p[not u]=x[u] -p[l 1 or l 2 or l 3 ]=p[l 1 ]p[l 2 ]p[l 3 ] -p[c 1 and... and c m ] =  p[c i ]

Truth-assignments and values -If f(a 1,...,a n ) is true, then p[f](a 1,...,a n )=0 where we identify the value TRUE with 1 and the value FALSE with 0 -Problem: If f(a 1,...,a n ) is false, then p[f](a 1,...,a n ) not necessarily is 1 -Depends on the parity of the number of satisfied clauses

Example -c 1 =u 1 or not u 3 or not u 4, c 2 =not u 1 or u 2 or not u 4, c 3 =u 2 or u 3 or not u 4 -p[f](x 1,x 2,x 3,x 4 )= (1- x 1 )x 3 x 4 +x 1 (1-x 2 )x 4 +(1-x 2 )(1-x 3 )x 4 = x 3 x 4 +x 1 x 3 x 4 +x 1 x 4 -x 1 x 2 x 4 +x 4 -x 3 x 4 -x 2 x 4 + x 2 x 3 x 4 = x 4 +x 1 x 4 +x 2 x 4 +x 1 x 2 x 4 +x 1 x 3 x 4 +x 2 x 3 x 4 -ƒ(0,0,0,1) is false and p[f](0,0,0,1)=1 but … ƒ(1,0,0,1) is false and p[f](1,0,0,1)=0

Homogenization -Lemma: Let v 1,...,v m be a non-zero vector. Then Pr r  {0,1} m [  r i v i =1]= 1/2 -Easy proof by induction on m -For any r  {0,1} m, define p[f,r]=  r i p[c i ] -Hence: -if f(a 1,...,a n ) is true, then, for any r  {0,1} m, clearly p[f,r](a 1,...,a n )=0 -if f(a 1,...,a n ) is false, then from the lemma it follows that Pr r  {0,1} m [p[f,r](a 1,...,a n )=1]=1/2

Example c 1 = u 1  or not u 3 or not u 4, c 2 = not u 1 or u 2 or not u 4, c 3 = u 2 or u 3 or not u 4 rp[f,r]p[f,r](1,0,0,1) x 4 +x 2 x 4 +x 3 x 4 +x 2 x 3 x x 1 x 4 +x 1 x 2 x x 4 +x 1 x 4 +x 2 x 4 + x 3 x 4 + x ! x 2 x 4 +x 2 x 3 x x 3 x 4 + x 1 x 3 x x 4 +x 2 x 4 + x 1 x 3 x 4 + x 2 x 3 x x 1 x 4 +x 3 x 4 + x 1 x 2 x 4 +x 1 x 3 x x 4 +x 1 x 4 + x 2 x 4 +x 1 x 2 x 4 + x 1 x 3 x 4 +x 2 x 3 x 4 0

Arithmetization and linearity -Polynomials of degree 3 -Must be converted in set of linear functions -Each polynomial of degree 3 is the sum of -constant term a -set of monomials (I 1 =set of variable indices) -set of binomials (I 2 =set of pair of variable indices) -set of trinomials (I 3 = set of triple of variable indices) -Hence, p(x 1,...,x n )=a+  i  I 1 x i +  (i,j)  I 2 x i x j +  (i,j,k)  I 3 x i x j x k

Example -p(x 1,x 2,x 3,x 4 )=x 4 +x 1 x 4 +x 2 x 4 +x 1 x 2 x 4 +x 1 x 3 x 4 +x 2 x 3 x 4 -In this case, -a=0 -I 1 ={4} -I 2 ={(1,4),(2,4)} -I 3 ={(1,2,4),(1,3,4),(2,3,4)}

Computing the polynomial value -Let a 1,...,a n be an assignment to the polynomial variables -Then, p(a 1,...,a n )= a+  i  I 1 a i +  (i,j)  I 2 a i a j +  (i,j,k)  I 3 a i a j a k -Define: -A(x 1,...,x n )=  a i x i -B(x 1,...,x n 2 )=  a i a j x i,j -C(x 1,...,x n 3 )=  a i a j a k x i,j,k -The value of p can be computed as p(a 1,...,a n )=a+A(Ch(I 1 ))+B(Ch(I 2 ))+C(Ch(I 3 ))

Example -p(x 1, x 2, x 3, x 4 ) = x 4 +x 1 x 4 +x 2 x 4 +x 1 x 2 x 4 +x 1 x 3 x 4 +x 2 x 3 x 4 -Assignment: 1,0,0,1 -In this case: -Ch(I 1 ) = 0,0,0,1 and A(Ch(I 1 )) = a 4 = 1 -B(Ch(I 2 )) = a 1 a 4 + a 2 a 4 = 1 -C(Ch(I 3 )) = a 1 a 2 a 4 + a 1 a 3 a 4 + a 2 a 3 a 4 = 0 -p(1,0,0,1) = = 0

3-SAT  PCP(n 3,1) formula of size n verifier n 3 random bits A(x) = ax B(y) = (a o a)y C(z) = (a o a o a)z 2n2n 2n22n2 2n32n3

Problems to be solved -Verifying that A, B and C are (almost) linear and consistent -Must be done with n 3 random bit and querying a constant number of values of A, B and C -Verifying that A, B and C encode a satisfying truth assignment -Must be done with n 3 random bits and querying a constant number of values of A, B and C in order to compute the values of A, B and C corresponding to Ch(I 1 ), Ch(I 2 ), and Ch(I 3 ), respectively

Disadvantages -Proof has exponential size because we have a polynomial number of variables -Requires a polynomial number of random bits -Alternative: low degree polynomials with less variables -The degree depends on the length of the assignment -That’s another story...

Linear functions -A function f from {0,1} m to {0,1} is linear if, for any x and y  {0,1} m, f(x+y)=f(x)+f(y) -Given two functions f and g, their distance d(f,g) is the fraction of input on which they differ -f and g are  -close if d(f,g)   -Lemma: let  <1/3 and let g be a function from {0,1} m to {0,1} such that Pr x,y  {0,1} m [g(x+y)  g(x)+g(y)]   /2. Then there exists a linear function f that is  -close to g

Proof -f(x)=majority{g(x+y)-g(y)} -f and g are  -close Otherwise, since Pr y  {0,1} m [f(x)=g(x+y)-g(y)]  1/2, if Pr x  {0,1} m [f(x)  g(x)] >  then Pr x,y  {0,1} m [g(x+y)-g(y)  g(x)] >  /2 -f is linear -For any a, Pr x  {0,1} m [f(a)  g(a+x)-g(x)]   (see later) –for any a and b, Pr x  {0,1} m [f(a)+f(b)+g(x)  g(a+x)+f(b)]   –for any a and b, Pr x  {0,1} m [f(b)+g(a+x)  g(b+a+x)]   –for any a and b, Pr x  {0,1} m [g(a+b+x)  f(a+b)+g(x)]   -For any a and b, Pr x  {0,1} m [f(a)+f(b)+g(x)=f(a+b)+g(x)]  1-3  >0 -Independent from x: ƒ is linear

Proof (continued) -For any a, p a =Pr x  {0,1} m [f(a)=g(a+x)-g(x)]  1-  -By hypothesis, Pr x,y  {0,1} m [g(x+a+y)  g(x+a)+g(y)]   /2 -By hypothesis, Pr x,y  {0,1} m [g(x+y+a)  g(x)+g(y+a)]   /2 -Hence, Pr x,y  {0,1} m [g(x+a)+g(y)=g(x)+g(y+a)]  1-  -Pr x,y  {0,1} m [g(x+a)+g(y)=g(x)+g(y+a)] = Pr x  {0,1} m [g(x+a)-g(x)=0] Pr y  {0,1} m [g(y+a)+g(y)=0] + Pr x  {0,1} m [g(x+a)-g(x)=1] Pr y  {0,1} m [g(y+a)+g(y)=1] = (Pr x  {0,1} m [g(x+a)-g(x)=0]) 2 +(Pr x  {0,1} m [g(x+a)-g(x)=1]) 2 -From definition of f, p a  1/2 -Since either f(a)=0 or f(a)=1, we finally have that 1-   p a 2 +(1- p a ) 2  p a (p a +(1- p a )) = p a

Linearity test -If g is linear, then it answers YES with probability 1 -If g is not  -close to a linear function, then it answers NO with probability at least  /2 -By iterating, we can make the error probability arbitrarily small begin randomly choose x,y  {0,1} m ; if g(x+y)=g(x)+g(y) then return YES else return NO end.

Self-correcting procedure -Lemma: If g is  -close to a linear function f, then Pr y  {0,1} m [SC-g(x)=f(x)]  1-2  begin randomly y  {0,1} m ; return SC-g(x)=g(x+y)-g(y) end.

Proof -For any x  {0,1} m, y and x+y are uniformly distributed (even if they are not independent) -Hence, for any x  {0,1} m, -Pr y  {0,1} m [g(y)=f(y)]  1-  -Pr y  {0,1} m [g(x+y)=f(x+y)]  1-  -Since, for any x,y  {0,1} m, f(x)=f(x+y)-f(y), we have that, for any x  {0,1} m, Pr y  {0,1} m [g(x+y)-g(x)=f(x)]  1-2  -Hence, Pr y  {0,1} m [SC-g(x)=f(x)]  1-2 

Consistency -If a i, b i,j, and c i,j,k are the coefficients of linear functions A, B, and C, then b i,j = a i a j and c i,j,k = a i a j a k -Equivalently, for any x, x’  {0,1} n and for any y  {0,1} n 2, A(x)A(x’)=B(x o x’) and A(x)B(y)=C(x o y) where x o x’ is in {0,1} n 2 and its (i-1)n+j-th element is x i x’ j (similarly for x o y) -Problem: x o x’ is not random and we cannot directly use the  -closeness -Solution: use the self-correcting procedure

Consistency test -Lemma: For any  < 1/24, there exists k such that if A and B are not consistent, then with probability at least 1-  at least one of k applications of the consistency test answers NO -Similar test and lemma for C begin randomly x,x’  {0,1} n ; if SC-A(x)SC-A(x’)=SC-B(x o x’) then return YES else return NO end.

Proof -Assume that coefficients of B and A are not consistent -otherwise there is nothing to be proved -Since, for any x  x’  {0,1} n, Pr r  {0,1} n [xr  x’r]=1/2, then, for any x  x’  {0,1} n 2, Pr r  {0,1} n [xr  x’r]  1/2 -Coefficients of B form a matrix b -Coefficients of A form a vector a, and a o a is a matrix -Hence Pr r,s  {0,1} n [r T (a o a)s  r T bs]  1/4 -r T (a o a)s=A(r)A(s) and r T bs=B(r o s) -By property of self-correcting test, it follows that -Pr r,s  {0,1} n [SC-A(r)SC-A(s)  SC-B(r o s)]  1/4-6  > 0

Satisfiability test -Lemma: If A,B, and C are  -close to linear consistent functions, then there exists k such that with probability at least 1-  at least one k applications of the satisfiability test answers NO if the assignment does not satisfy ƒ -Teorem: 3-SAT is in PCP(n 3,1) begin randomly r  {0,1} m ; compute a, I 1, I 2, and I 3 of polynomial p[f,r]; if a+A(Ch(I 1 ))+B(Ch(I 2 ))+C(Ch(I 3 ))=0 then return YES else return NO end.