1 / 26

The PCP theorem

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

Download Presentation

The PCP theorem

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. The PCP theorem

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

  3. Proof structure 3-SATPCP[log,polylog] 3-SATPCP[log,polylog] composition lemma 3-SATPCP[log,polyloglog] 3-SATPCP[O(n3),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

  4. 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

  5. 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[l1or l2 or l3]=p[l1]p[l2]p[l3] • p[c1 and ... andcm] = p[ci]

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

  7. Example • c1=u1or not u3or not u4, c2=not u1or u2or not u4, c3=u2oru3or not u4 • p[f](x1,x2,x3,x4)=(1- x1)x3x4+x1(1-x2)x4+(1-x2)(1-x3)x4=x3x4+x1x3x4+x1 x4-x1x2x4+x4-x3x4-x2x4+ x2x3x4=x4 +x1 x4+x2x4+x1x2x4+x1x3x4+x2x3x4 • ƒ(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

  8. Homogenization • Lemma: Let v1,...,vm be a non-zero vector. Then Prr {0,1}m[rivi=1]= 1/2 • Easy proof by induction on m • For any r{0,1}m, define p[f,r]=  rip[ci] • Hence: • if f(a1,...,an) is true, then, for any r{0,1}m, clearly p[f,r](a1,...,an)=0 • if f(a1,...,an) is false, then from the lemma it follows that Prr {0,1}m [p[f,r](a1,...,an)=1]=1/2

  9. Example c1= u1or not u3 or not u4, c2= notu1or u2 or not u4, c3= u2 or u3 or notu4 r p[f,r] p[f,r](1,0,0,1) 00000 001 x4+x2x4+x3x4+x2x3x41 010 x1x4+x1x2x4 1 011 x4+x1x4+x2x4+ x3x4+ x!x2x4+x2x3x4 0 100 x3x4+ x1x3x4 0 101 x4+x2x4+ x1x3x4+ x2x3x4 1 110 x1x4+x3x4+ x1x2x4+x1x3x4 1 111 x4+x1x4+ x2x4+x1x2x4+ x1x3x4+x2x3x4 0

  10. 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 (I1=set of variable indices) • set of binomials (I2=set of pair of variable indices) • set of trinomials (I3= set of triple of variable indices) • Hence, p(x1,...,xn)=a+ iI1xi+ (i,j) I2xixj+ (i,j,k) I3xixjxk

  11. Example • p(x1,x2,x3,x4)=x4+x1x4+x2x4+x1x2x4+x1x3x4+x2x3x4 • In this case, • a=0 • I1={4} • I2={(1,4),(2,4)} • I3={(1,2,4),(1,3,4),(2,3,4)}

  12. Computing the polynomial value • Let a1,...,an be an assignment to the polynomial variables • Then, p(a1,...,an)= a+ iI1ai+ (i,j) I2aiaj+ (i,j,k) I3aiajak • Define: • A(x1,...,xn)= aixi • B(x1,...,xn2)= aiajxi,j • C(x1,...,xn3)= aiajakxi,j,k • The value of p can be computed asp(a1,...,an)=a+A(Ch(I1))+B(Ch(I2))+C(Ch(I3))

  13. Example • p(x1, x2, x3, x4) = x4+x1x4+x2x4+x1x2x4+x1x3x4+x2x3x4 • Assignment: 1,0,0,1 • In this case: • Ch(I1) = 0,0,0,1 and A(Ch(I1)) = a4 = 1 • B(Ch(I2)) = a1 a4 + a2 a4 = 1 • C(Ch(I3)) = a1a2a4 + a1a3a4 + a2a3a4 = 0 • p(1,0,0,1) = 0+1+1+0 = 0

  14. 3-SAT  PCP(n3,1) formula of size n 2n A(x) = ax 2n2 B(y) = (a o a)y verifier C(z) = (a o a o a)z 2n3 n3 random bits

  15. Problems to be solved • Verifying that A, B and C are (almost) linear and consistent • Must be done with n3 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 n3 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(I1), Ch(I2), and Ch(I3), respectively

  16. 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 ...

  17. 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 Prx,y {0,1}m[g(x+y) g(x)+g(y)]  /2.Then there exists a linear function f that is -close to g

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

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

  20. 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)thenreturn YES else return NO end.

  21. Self-correcting procedure • Lemma: If g is -close to a linear function f, then Pry  {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.

  22. 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, • Pry {0,1}m[g(y)=f(y)]  1- • Pry {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, Pry {0,1}m[g(x+y)-g(x)=f(x)]  1-2 • Hence, Pry {0,1}m[SC-g(x)=f(x)]  1-2

  23. Consistency • If ai, bi,j, and ci,j,k are the coefficients of linear functions A, B, and C, then bi,j= ai aj and ci,j,k= ai aj ak • Equivalently, for any x, x’ {0,1}n and for any y{0,1}n2, A(x)A(x’)=B(xox’) and A(x)B(y)=C(xoy) where xox’ is in {0,1}n2 and its (i-1)n+j-th element is xix’j (similarly for xoy) • Problem:xox’ is not random and we cannot directly use the -closeness • Solution: use the self-correcting procedure

  24. 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(xox’) thenreturn YES elsereturn NO end.

  25. 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, Prr  {0,1}n[xr x’r]=1/2, then, for any xx’  {0,1}n2, Prr {0,1}n[xr x’r]  1/2 • Coefficients of B form a matrix b • Coefficients of A form a vector a, and aoa is a matrix • Hence Prr,s {0,1}n[rT(aoa)s rTbs]  1/4 • rT(aoa)s=A(r)A(s) and rTbs=B(ros) • By property of self-correcting test, it follows that • Prr,s {0,1}n[SC-A(r)SC-A(s)  SC-B(ros)]  1/4-6 > 0

  26. 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(n3,1) begin randomly r{0,1}m ; compute a, I1, I2, and I3 of polynomial p[f,r]; if a+A(Ch(I1))+B(Ch(I2))+C(Ch(I3))=0 thenreturn YES elsereturn NO end.

More Related