260 likes | 383 Views
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 ].
E N D
Summary • Proof structure • Basic ingredients • Arithmetization • Properties of polynomials • 3-SAT belongs to PCP[O(n3),O(1)]
Proof structure 3-SATPCP[log,polylog] 3-SATPCP[log,polylog] composition lemma 3-SATPCP[log,polyloglog] 3-SATPCP[O(n3),O(1)] composition lemma 3-SATPCP[log,O(1)] PCP[log,O(1)] NP PCP is closed with respect to polynomial-time Karp reducibility
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[l1or l2 or l3]=p[l1]p[l2]p[l3] • p[c1 and ... andcm] = p[ci]
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
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
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
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
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+ iI1xi+ (i,j) I2xixj+ (i,j,k) I3xixjxk
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)}
Computing the polynomial value • Let a1,...,an be an assignment to the polynomial variables • Then, p(a1,...,an)= a+ iI1ai+ (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))
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
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
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
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 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
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
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
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.
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.
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
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
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.
Proof • Assume that coefficients of B and A are not consistent • otherwise there is nothing to be proved • Since, for any xx’ {0,1}n, Prr {0,1}n[xr x’r]=1/2, then, for any xx’ {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
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.