CS151 Complexity Theory Lecture 16 May 25, 2004. CS151 Lecture 162 Outline approximation algorithms Probabilistically Checkable Proofs elements of the.

Slides:



Advertisements
Similar presentations
A threshold of ln(n) for approximating set cover By Uriel Feige Lecturer: Ariel Procaccia.
Advertisements

NP-Hard Nattee Niparnan.
An Introduction to Computational Complexity Edith Elkind IAM, ECS.
Theory of Computing Lecture 18 MAS 714 Hartmut Klauck.
CS151 Complexity Theory Lecture 17 May 27, CS151 Lecture 172 Outline elements of the proof of the PCP Theorem counting problems –#P and its relation.
1 NP-Complete Problems. 2 We discuss some hard problems:  how hard? (computational complexity)  what makes them hard?  any solutions? Definitions 
Constraint Satisfaction over a Non-Boolean Domain Approximation Algorithms and Unique Games Hardness Venkatesan Guruswami Prasad Raghavendra University.
Two Query PCP with Subconstant Error Dana Moshkovitz Princeton University and The Institute for Advanced Study Ran Raz The Weizmann Institute 1.
Introduction to PCP and Hardness of Approximation Dana Moshkovitz Princeton University and The Institute for Advanced Study 1.
Complexity ©D.Moshkovits 1 Hardness of Approximation.
Umans Complexity Theory Lectures Lecture 15: Approximation Algorithms and Probabilistically Checkable Proofs (PCPs)
Inapproximability from different hardness assumptions Prahladh Harsha TIFR 2011 School on Approximability.
Two Query PCP with Sub-constant Error Dana Moshkovitz Princeton University Ran Raz Weizmann Institute 1.
PCPs and Inapproximability Introduction. My T. Thai 2 Why Approximation Algorithms  Problems that we cannot find an optimal solution.
Complexity 16-1 Complexity Andrei Bulatov Non-Approximability.
Computability and Complexity 23-1 Computability and Complexity Andrei Bulatov Search and Optimization.
Complexity 15-1 Complexity Andrei Bulatov Hierarchy Theorem.
CS151 Complexity Theory Lecture 7 April 20, 2004.
1 Optimization problems such as MAXSAT, MIN NODE COVER, MAX INDEPENDENT SET, MAX CLIQUE, MIN SET COVER, TSP, KNAPSACK, BINPACKING do not have a polynomial.
NP-Complete Problems Reading Material: Chapter 10 Sections 1, 2, 3, and 4 only.
NP-Complete Problems Problems in Computer Science are classified into
Analysis of Algorithms CS 477/677
Computability and Complexity 24-1 Computability and Complexity Andrei Bulatov Approximation.
CS151 Complexity Theory Lecture 15 May 18, CS151 Lecture 152 Outline IP = PSPACE Arthur-Merlin games –classes MA, AM Optimization, Approximation,
Complexity 1 Hardness of Approximation. Complexity 2 Introduction Objectives: –To show several approximation problems are NP-hard Overview: –Reminder:
1 Slides by Asaf Shapira & Michael Lewin & Boaz Klartag & Oded Schwartz. Adapted from things beyond us.
The Theory of NP-Completeness 1. Nondeterministic algorithms A nondeterminstic algorithm consists of phase 1: guessing phase 2: checking If the checking.
The Theory of NP-Completeness 1. What is NP-completeness? Consider the circuit satisfiability problem Difficult to answer the decision problem in polynomial.
HARDNESS OF APPROXIMATIONS. Gap Introducing Reduction For simplicity we assume that we are always reducing from SAT(or any other NP- hard problem). Let.
Nattee Niparnan. Easy & Hard Problem What is “difficulty” of problem? Difficult for computer scientist to derive algorithm for the problem? Difficult.
1 The TSP : NP-Completeness Approximation and Hardness of Approximation All exact science is dominated by the idea of approximation. -- Bertrand Russell.
Sub-Constant Error Low Degree Test of Almost-Linear Size Dana Moshkovitz Weizmann Institute Ran Raz Weizmann Institute.
1 Introduction to Approximation Algorithms. 2 NP-completeness Do your best then.
Lecture 22 More NPC problems
Computational Complexity Theory Lecture 2: Reductions, NP-completeness, Cook-Levin theorem Indian Institute of Science.
CS151 Complexity Theory Lecture 13 May 11, Outline proof systems interactive proofs and their power Arthur-Merlin games.
Approximation Algorithms
Week 10Complexity of Algorithms1 Hard Computational Problems Some computational problems are hard Despite a numerous attempts we do not know any efficient.
EMIS 8373: Integer Programming NP-Complete Problems updated 21 April 2009.
CS151 Complexity Theory Lecture 14 May 13, Arthur-Merlin Games IP permits verifier to keep coin-flips private –necessary feature? –GNI protocol.
CSCI 3160 Design and Analysis of Algorithms Tutorial 10 Chengyu Lin.
1 The Theory of NP-Completeness 2 Cook ’ s Theorem (1971) Prof. Cook Toronto U. Receiving Turing Award (1982) Discussing difficult problems: worst case.
Unit 9: Coping with NP-Completeness
Non-Approximability Results. Summary -Gap technique -Examples: MINIMUM GRAPH COLORING, MINIMUM TSP, MINIMUM BIN PACKING -The PCP theorem -Application:
1 How to establish NP-hardness Lemma: If L 1 is NP-hard and L 1 ≤ L 2 then L 2 is NP-hard.
CS151 Complexity Theory Lecture 16 May 20, The outer verifier Theorem: NP  PCP[log n, polylog n] Proof (first steps): –define: Polynomial Constraint.
NPC.
1 2 Introduction In this lecture we’ll cover: Definition of PCP Prove some classical hardness of approximation results Review some recent ones.
NP Completeness Piyush Kumar. Today Reductions Proving Lower Bounds revisited Decision and Optimization Problems SAT and 3-SAT P Vs NP Dealing with NP-Complete.
NP ⊆ PCP(n 3, 1) Theory of Computation. NP ⊆ PCP(n 3,1) What is that? NP ⊆ PCP(n 3,1) What is that?
CSE 421 Algorithms Richard Anderson Lecture 27 NP-Completeness Proofs.
The Theory of NP-Completeness 1. Nondeterministic algorithms A nondeterminstic algorithm consists of phase 1: guessing phase 2: checking If the checking.
TU/e Algorithms (2IL15) – Lecture 9 1 NP-Completeness NOT AND OR AND NOT AND.
COSC 3101A - Design and Analysis of Algorithms 14 NP-Completeness.
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.
Approximation algorithms
The Theory of NP-Completeness
Richard Anderson Lecture 26 NP-Completeness
CS21 Decidability and Tractability
Computability and Complexity
Introduction to PCP and Hardness of Approximation
Hardness of Approximation
The Theory of NP-Completeness
CS154, Lecture 16: More NP-Complete Problems; PCPs
Umans Complexity Theory Lectures
CS151 Complexity Theory Lecture 16 May 28, 2019.
Instructor: Aaron Roth
Lecture 23 NP-Hard Problems
Presentation transcript:

CS151 Complexity Theory Lecture 16 May 25, 2004

CS151 Lecture 162 Outline approximation algorithms Probabilistically Checkable Proofs elements of the proof of the PCP Theorem

May 25, 2004CS151 Lecture 163 Optimization Problems many hard problems (especially NP-hard) are optimization problems –e.g. find shortest TSP tour –e.g. find smallest vertex cover –e.g. find largest clique –may be minimization or maximization problem –“opt” = value of optimal solution

May 25, 2004CS151 Lecture 164 Approximation Algorithms often happy with approximately optimal solution –warning: lots of heuristics –we want approximation algorithm with guaranteed approximation ratio of r –meaning: on every input x, output is guaranteed to have value at most r*opt for minimization at least opt/r for maximization

May 25, 2004CS151 Lecture 165 Approximation Algorithms “gap-producing” reduction from NP- complete problem L 1 to L 2 no yes L1L1 L 2 (min. problem) f opt k rk

May 25, 2004CS151 Lecture 166 Gap producing reductions r-gap-producing reduction: –f computable in poly time –x  L 1  opt(f(x))  k –x  L 1  opt(f(x)) > rk –for max. problems use “  k” and “< k/r” Note: target problem is not a language –promise problem (yes  no not all strings) –“promise”: instances always from (yes  no)

May 25, 2004CS151 Lecture 167 Gap producing reductions Main purpose: –r-approximation algorithm for L 2 distinguishes between f(yes) and f(no); can use to decide L 1 –“NP-hard to approximate to within r” no yes L1L1 f k rk yes no L1L1 f k/r k L 2 (min.)L 2 (max.) yes noyes no

May 25, 2004CS151 Lecture 168 Gap preserving reductions gap-producing reduction difficult (more later) but gap-preserving reductions easier f k rk k’ r’k’ Warning: many reductions not gap-preserving yes no yes no L 1 (min.) L 2 (min.)

May 25, 2004CS151 Lecture 169 Gap preserving reductions Example gap-preserving reduction: –reduce MAX-k-SAT with gap ε –to MAX-3-SAT with gap ε’ –“MAX-k-SAT is NP-hard to approx. within ε  MAX-3-SAT is NP-hard to approx. within ε’ ” MAXSNP (PY) – a class of problems reducible to each other in this way –PTAS for MAXSNP-complete problem iff PTAS for all problems in MAXSNP constants

May 25, 2004CS151 Lecture 1610 MAX-k-SAT Missing link: first gap-producing reduction –history’s guide it should have something to do with SAT Definition: MAX-k-SAT with gap ε –instance: k-CNF φ –YES: some assignment satisfies all clauses –NO: no assignment satisfies more than (1 – ε) fraction of clauses

May 25, 2004CS151 Lecture 1611 Proof systems viewpoint k-SAT NP-hard  for any language L  NP proof system of form: –given x, compute reduction to k-SAT:  x –expected proof is satisfying assignment for  x –verifier picks random clause (“local test”) and checks that it is satisfied by the assignment x  L  Pr[verifier accepts] = 1 x  L  Pr[verifier accepts] < 1

May 25, 2004CS151 Lecture 1612 Proof systems viewpoint MAX-k-SAT with gap ε NP-hard  for any language L  NP proof system of form: –given x, compute reduction to MAX-k-SAT:  x –expected proof is satisfying assignment for  x –verifier picks random clause (“local test”) and checks that it is satisfied by the assignment x  L  Pr[verifier accepts] = 1 x  L  Pr[verifier accepts] ≤ (1 – ε) –can repeat O(1/ε) times for error < ½

May 25, 2004CS151 Lecture 1613 Proof systems viewpoint can think of reduction showing k-SAT NP-hard as designing a proof system for NP in which: –verifier only performs local tests can think of reduction showing MAX-k-SAT with gap ε NP-hard as designing a proof system for NP in which: –verifier only performs local tests –invalidity of proof* evident all over: “holographic proof” and an  fraction of tests notice such invalidity

May 25, 2004CS151 Lecture 1614 PCP Probabilistically Checkable Proof (PCP) permits novel way of verifying proof: –pick random local test –query proof in specified k locations –accept iff passes test fancy name for a NP-hardness reduction

May 25, 2004CS151 Lecture 1615 PCP PCP[r(n),q(n)]: set of languages L with p.p.t. verifier V that has (r, q)-restricted access to a string “proof” –V tosses O(r(n)) coins –V accesses proof in O(q(n)) locations –(completeness) x  L   proof such that Pr[V(x, proof) accepts] = 1 –(soundness) x  L   proof* Pr[V(x, proof*) accepts]  ½

May 25, 2004CS151 Lecture 1616 PCP Two observations: –PCP[1, poly n] = NP proof? –PCP[log n, 1]  NP proof? The PCP Theorem (AS, ALMSS): PCP[log n, 1] = NP.

May 25, 2004CS151 Lecture 1617 PCP Corollary: MAX-k-SAT is NP-hard to approximate to within some constant . –using PCP[log n, 1] protocol for, say, VC –enumerate all 2 O(log n) = poly(n) sets of queries –construct a k-CNF φ i for verifier’s test on each note: k-CNF since function on only k bits –“YES” VC instance  all clauses satisfiable –“NO” VC instance  every assignment fails to satisfy at least ½ of the φ i  fails to satisfy an  = (½)2 -k fraction of clauses.

May 25, 2004CS151 Lecture 1618 The PCP Theorem Elements of proof: –arithmetization of 3-SAT we will do this –low-degree test we will state but not prove this –self-correction of low-degree polynomials we will state but not prove this –proof composition we will describe the idea

May 25, 2004CS151 Lecture 1619 The PCP Theorem Two major components: –NP  PCP[log n, polylog n] (“outer verifier”) we will prove this from scratch, assuming low- degree test, and self-correction of low-degree polynomials –NP  PCP[n 3, 1] (“inner verifier”) we will not prove

May 25, 2004CS151 Lecture 1620 Proof Composition (idea) NP  PCP[log n, polylog n] (“outer verifier”) NP  PCP[n 3, 1] (“inner verifier”) composition of verifiers: –reformulate “outer” so that it uses O(log n) random bits to make 1 query to each of 3 provers –replies r 1, r 2, r 3 have length polylog n –Key: accept/reject decision computable from r 1, r 2, r 3 by small circuit C

May 25, 2004CS151 Lecture 1621 Proof Composition (idea) NP  PCP[log n, polylog n] (“outer verifier”) NP  PCP[n 3, 1] (“inner verifier”) composition of verifiers (continued): –final proof contains proof that C(r 1, r 2, r 3 ) = 1 for inner verifier’s use –use inner verifier to verify that C(r 1,r 2,r 3 ) = 1 –O(log n)+polylog n randomness –O(1) queries –tricky issue: consistency

May 25, 2004CS151 Lecture 1622 Proof Composition (idea) NP  PCP[log n, 1] comes from –repeated composition –PCP[log n, polylog n] with PCP[log n, polylog n] yields PCP[log n, polyloglog n] –PCP[log n, polyloglog n] with PCP[n 3, 1] yields PCP[log n, 1] many details omitted…

May 25, 2004CS151 Lecture 1623 The outer verifier Theorem: NP  PCP[log n, polylog n] Proof (first steps): –define: Polynomial Constraint Satisfaction (PCS) problem –prove: PCS gap problem is NP-hard

May 25, 2004CS151 Lecture 1624 NP  PCP[log n, polylog n] MAX-k-SAT –given: k-CNF  –output: max. # of simultaneously satisfiable clauses generalization: MAX-k-CSP –given: variables x 1, x 2, …, x n taking values from set S k-ary constraints C 1, C 2, …, C t –output: max. # of simultaneously satisfiable constraints

May 25, 2004CS151 Lecture 1625 NP  PCP[log n, polylog n] algebraic version: MAX-k-PCS –given: variables x 1, x 2, …, x n taking values from field F q n = q m for some integer m k-ary constraints C 1, C 2, …, C t –assignment viewed as f:(F q ) m  F q –output: max. # of constraints simultaneously satisfiable by an assignment that has deg. ≤ d

May 25, 2004CS151 Lecture 1626 NP  PCP[log n, polylog n] MAX-k-PCS gap problem: –given: variables x 1, x 2, …, x n taking values from field F q n = q m for some integer m k-ary constraints C 1, C 2, …, C t –assignment viewed as f:(F q ) m  F q –YES: some degree d assignment satisfies all constraints –NO: no degree d assignment satisfies more than (1-  ) fraction of constraints

May 25, 2004CS151 Lecture 1627 NP  PCP[log n, polylog n] Lemma: for every constant 1 > ε > 0, the MAX-k-PCS gap problem with t k-ary constraints with k = polylog(n) field size q = polylog(n) n = q m variables with m = O(log n / loglog n) degree of assignments d = polylog(n) gap  is NP-hard.

May 25, 2004CS151 Lecture 1628 NP  PCP[log n, polylog n] t k-ary constraints with k = polylog(n) field size q = polylog(n) n = q m variables with m = O(log n / loglog n) degree of assignments d = polylog(n) check: headed in right direction –log n random bits to pick a constraint –query assignment in polylog(n) locations to determine if it is satisfied –completeness 1; soundness 1-  (if prover keeps promise to supply degree d polynomial)

May 25, 2004CS151 Lecture 1629 NP  PCP[log n, polylog n] Proof of Lemma: –reduce from 3-SAT –3-CNF φ(x 1, x 2,…, x n ) –can encode as  :[n] x [n] x [n] x {0,1} 3  {0,1} –  (i 1, i 2, i 3, b 1, b 2, b 3 ) = 1 iff φ contains clause (x i 1 b 1  x i 2 b 2  x i 3 b 3 ) –e.g. (x 3  x 5  x 2 )   (3,5,2,1,0,1) = 1

May 25, 2004CS151 Lecture 1630 NP  PCP[log n, polylog n] –pick H  F q with {0,1}  H, |H| = polylog n –pick m = O(log n/loglog n) so |H| m = n –identify [n] with H m –  :H m x H m x H m x H 3  {0,1} encodes φ –assignment a:H m  {0,1} –Key: a satisfies φ iff  i 1,i 2,i 3,b 1,b 2,b 3  (i 1,i 2,i 3,b 1,b 2,b 3 ) = 0 or a(i 1 )=b 1 or a(i 2 )=b 2 or a(i 3 )=b 3

May 25, 2004CS151 Lecture 1631 NP  PCP[log n, polylog n]  :H m x H m x H m x H 3  {0,1} encodes φ a satisfies φ iff  i 1,i 2,i 3,b 1,b 2,b 3  (i 1,i 2,i 3,b 1,b 2,b 3 ) = 0 or a(i 1 )=b 1 or a(i 2 )=b 2 or a(i 3 )=b 3 –extend  to a function  ’:(F q ) 3m+3  F q with degree at most |H| in each variable –can extend any assignment a:H m  {0,1} to a’:(F q ) m  F q with degree |H| in each variable

May 25, 2004CS151 Lecture 1632 NP  PCP[log n, polylog n]  ’:(F q ) 3m+3  F q encodes φ a’:(F q ) m  F q s.a. iff  (i 1,i 2,i 3,b 1,b 2,b 3 )  H 3m+3  (i 1,i 2,i 3,b 1,b 2,b 3 ) = 0 or a(i 1 )=b 1 or a(i 2 )=b 2 or a(i 3 )=b 3 –define: p a’ :(F q ) 3m+3  F q from a’ as follows p a’ (i 1,i 2,i 3,b 1,b 2,b 3 ) =  ’(i 1,i 2,i 3,b 1,b 2,b 3 )(a’(i 1 ) - b 1 )(a’(i 2 ) - b 2 )(a’(i 3 ) - b 3 ) –a’ s.a. iff  (i 1,i 2,i 3,b 1,b 2,b 3 )  H 3m+3 p a’ (i 1,i 2,i 3,b 1,b 2,b 3 ) = 0

May 25, 2004CS151 Lecture 1633 NP  PCP[log n, polylog n]  ’:(F q ) 3m+3  F q encodes φ a’:(F q ) m  F q s.a. iff  (i 1,i 2,i 3,b 1,b 2,b 3 )  H 3m+3 p a’ (i 1,i 2,i 3,b 1,b 2,b 3 ) = 0 –note: deg(p a’ ) ≤ 2(3m+3)|H| –start using Z as shorthand for (i 1,i 2,i 3,b 1,b 2,b 3 ) –another way to write “a’ s.a.” is: exists p 0 :(F q ) 3m+3  F q of degree ≤ 2(3m+3)|H| p 0 (Z) = p a’ (Z)  Z  (F q ) 3m+3 p 0 (Z) = 0  Z  H 3m+3

May 25, 2004CS151 Lecture 1634 NP  PCP[log n, polylog n] –Focus on “p 0 (Z) = 0  Z  H 3m+3 ” –given: p 0 :(F q ) 3m+3  F q –define: p 1 (x 1, x 2, x 3, …, x 3m+3 ) = Σ h j  H p 0 (h j, x 2, x 3, …, x 3m+3 )x 1 j –Claim: p 0 (Z)=0  Z  H 3m+3  p 1 (Z)=0  Z  F q xH 3m+3-1 –Proof (  ) for each x 2, x 3, …, x 3m+3  H 3m+3-1, resulting univariate poly in x 1 has all 0 coeffs.

May 25, 2004CS151 Lecture 1635 NP  PCP[log n, polylog n] –Focus on “p 0 (Z) = 0  Z  H 3m+3 ” –given: p 0 :(F q ) 3m+3  F q –define: p 1 (x 1, x 2, x 3, …, x 3m+3 ) = Σ h j  H p 0 (h j, x 2, x 3, …, x 3m+3 )x 1 j –Claim: p 0 (Z)=0  Z  H 3m+3  p 1 (Z)=0  Z  F q xH 3m+3-1 –Proof (  ) for each x 2, x 3, …, x 3m+3  H 3m+3-1, univariate poly in x 1 is  0  has all 0 coeffs. deg(p 1 ) ≤ deg(p 0 ) + |H|

May 25, 2004CS151 Lecture 1636 NP  PCP[log n, polylog n] –given: p 1 :(F q ) 3m+3  F q –define: p 2 (x 1, x 2, x 3, …, x 3m+3 ) = Σ h j  H p 2 (x 1, h j, x 3, x 4, …, x 3m+3 )x 2 j –Claim: p 1 (Z)=0  Z  F q x H 3m+3-1  p 2 (Z)=0  Z  (F q ) 2 x H 3m+3-2 –Proof: same. deg(p 2 ) ≤ deg(p 1 ) + |H|

May 25, 2004CS151 Lecture 1637 NP  PCP[log n, polylog n] –given: p i-1 :(F q ) 3m+3  F q –define: p i (x 1, x 2, x 3, …, x 3m+3 ) = Σ h j  H p 2 (x 1, x 2, …, x i-1, h j, x i+1, x i+2, …, x 3m+3 )x i j –Claim: p i-1 (Z)=0  Z  (F q ) i-1 x H 3m+3-(i-1)  p i (Z)=0  Z  (F q ) i x H 3m+3-i –Proof: same. deg(p i ) ≤ deg(p i-1 ) + |H|

May 25, 2004CS151 Lecture 1638 NP  PCP[log n, polylog n] –define degree 3m+3+2 poly. δ i :F q  F q so that δ i (v) = 1 if v = i δ i (v) = 0 if 0 ≤ v ≤ 3m+3+1 and v ≠ i –define Q:F q x (F q ) 3m+3  F q by: Q(v, Z) = Σ i=0…3m+3 δ i (v)p i (Z) + δ 3m+3+1 (v)a’(Z) –note: degree of Q is at most 3(3m+3)|H| + 3m < 10m|H|

May 25, 2004CS151 Lecture 1639 NP  PCP[log n, polylog n] Recall: MAX-k-PCS gap problem: –given: variables x 1, x 2, …, x n taking values from field F q n = q m for some integer m k-ary constraints C 1, C 2, …, C t –assignment viewed as f:(F q ) m  F q –YES: some degree d assignment satisfies all constraints –NO: no degree d assignment satisfies more than (1-  ) fraction of constraints

May 25, 2004CS151 Lecture 1640 NP  PCP[log n, polylog n] –Instance of MAX-k-PCS gap problem: set d = 10m|H| given assignment Q:F q x (F q ) 3m+3  F q expect it to be formed in the way we have described from an assignment a:H m  {0,1} to φ note to access a’(Z), evaluate Q(3m+3+1, Z) p a’ (Z) formed from a’ and  ’ (formed from φ) to access p i (Z), evaluate Q(i, Z)

May 25, 2004CS151 Lecture 1641 NP  PCP[log n, polylog n] –Instance of MAX-k-PCS gap problem: set d = 10m|H| given assignment Q:F q x (F q ) 3m+3  F q expect it to be formed in the way we have described from an assignment a:H m  {0,1} to φ constraints:  Z  (F q ) 3m+3 (C 0, Z ): p 0 (Z) = p a’ (Z) 0<i≤3m+2 (C i, Z ): p i (z 1, z 2, …, z i, z i+1, …, z 3m+3 ) = Σ h j  H p i-1 (z 1, z 2, …, z i-1, h j, z i+1, …, z k )z i j (C 3m+3, Z ): p 3m+3 (Z) = 0

May 25, 2004CS151 Lecture 1642 NP  PCP[log n, polylog n] given Q:F q x (F q ) 3m+3  F q of degree d = 10m|H| constraints:  Z  (F q ) 3m+3 (C 0, Z ): p 0 (Z) = p a’ (Z) (C i, Z ): p i (z 1, z 2, …, z i, z i+1, …, z 3m+3 ) = Σ h j  H p i-1 (z 1, z 2, …, z i-1, h j, z i+1, …, z k )z i j (C 3m+3, Z ): p 3m+3 (Z) = 0 –Schwartz-Zippel: if any one of these sets of constraints is violated at all then at least a (1 – 12m|H|/q) fraction in the set are violated Key: all low- degree polys

May 25, 2004CS151 Lecture 1643 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 25, 2004CS151 Lecture 1644 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