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

## Presentation on theme: "The PCP theorem. Summary -Proof structure -Basic ingredients -Arithmetization -Properties of polynomials -3-SAT belongs to PCP[O(n 3 ),O(1)]"— 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) 00000 001x 4 +x 2 x 4 +x 3 x 4 +x 2 x 3 x 4 1 010x 1 x 4 +x 1 x 2 x 4 1 011 x 4 +x 1 x 4 +x 2 x 4 + x 3 x 4 + x ! x 2 x 4 +x 2 x 3 x 4 0 100 x 3 x 4 + x 1 x 3 x 4 0 101 x 4 +x 2 x 4 + x 1 x 3 x 4 + x 2 x 3 x 4 1 110x 1 x 4 +x 3 x 4 + x 1 x 2 x 4 +x 1 x 3 x 4 1 111 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+1+1+0 = 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.

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

Similar presentations