1 The PCP Theorem via gap amplification Irit Dinur Presentation by Michal Rosen & Adi Adiv.

Slides:



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

Inapproximability of Hypergraph Vertex-Cover. A k-uniform hypergraph H= : V – a set of vertices E - a collection of k-element subsets of V Example: k=3.
Theory of Computing Lecture 18 MAS 714 Hartmut Klauck.
MaxClique Inapproximability Seminar on HARDNESS OF APPROXIMATION PROBLEMS by Dr. Irit Dinur Presented by Rica Gonen.
NP-Completeness: Reductions
1 The TSP : Approximation and Hardness of Approximation All exact science is dominated by the idea of approximation. -- Bertrand Russell ( )
Department of Computer Science & Engineering
NP-complete and NP-hard problems Transitivity of polynomial-time many-one reductions Concept of Completeness and hardness for a complexity class Definition.
1 NP-Complete Problems. 2 We discuss some hard problems:  how hard? (computational complexity)  what makes them hard?  any solutions? Definitions 
Theory of Computing Lecture 16 MAS 714 Hartmut Klauck.
Probabilistically Checkable Proofs (and inapproximability) Irit Dinur, Weizmann open day, May 1 st 2009.
The PCP Theorem via gap amplification Irit Dinur Hebrew University.
Complexity ©D.Moshkovits 1 Hardness of Approximation.
Umans Complexity Theory Lectures Lecture 15: Approximation Algorithms and Probabilistically Checkable Proofs (PCPs)
CSC5160 Topics in Algorithms Tutorial 2 Introduction to NP-Complete Problems Feb Jerry Le
Complexity 26-1 Complexity Andrei Bulatov Interactive Proofs.
Complexity 18-1 Complexity Andrei Bulatov Probabilistic Algorithms.
1 Adapted from Oded Goldreich’s course lecture notes.
NP-complete and NP-hard problems Transitivity of polynomial-time many-one reductions Definition of complexity class NP –Nondeterministic computation –Problems.
1 COMPOSITION PCP proof by Irit Dinur Presentation by Guy Solomon.
CSE 326: Data Structures NP Completeness Ben Lerner Summer 2007.
NP-complete and NP-hard problems
EXPANDER GRAPHS Properties & Applications. Things to cover ! Definitions Properties Combinatorial, Spectral properties Constructions “Explicit” constructions.
1 CSE 417: Algorithms and Computational Complexity Winter 2001 Lecture 23 Instructor: Paul Beame.
1 Graph Powering Cont. PCP proof by Irit Dinur Presented by Israel Gerbi.
Analysis of Algorithms CS 477/677
Computational Complexity, Physical Mapping III + Perl CIS 667 March 4, 2004.
CSE 421 Algorithms Richard Anderson Lecture 27 NP Completeness.
CS151 Complexity Theory Lecture 15 May 18, CS151 Lecture 152 Outline IP = PSPACE Arthur-Merlin games –classes MA, AM Optimization, Approximation,
1 CSE 417: Algorithms and Computational Complexity Winter 2001 Lecture 22 Instructor: Paul Beame.
Complexity 1 Hardness of Approximation. Complexity 2 Introduction Objectives: –To show several approximation problems are NP-hard Overview: –Reminder:
Complexity ©D.Moshkovitz 1 Paths On the Reasonability of Finding Paths in Graphs.
Clique Cover Cook’s Theorem 3SAT and Independent Set
Undirected ST-Connectivity In Log Space
1 Slides by Asaf Shapira & Michael Lewin & Boaz Klartag & Oded Schwartz. Adapted from things beyond us.
Undirected ST-Connectivity In Log Space Omer Reingold Slides by Sharon Bruckner.
1 Joint work with Shmuel Safra. 2 Motivation 3 Motivation.
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.
Products of Functions, Graphs, Games & Problems Irit Dinur Weizmann.
Sub-Constant Error Low Degree Test of Almost-Linear Size Dana Moshkovitz Weizmann Institute Ran Raz Weizmann Institute.
Tonga Institute of Higher Education Design and Analysis of Algorithms IT 254 Lecture 8: Complexity Theory.
Lecture 22 More NPC problems
Prabhas Chongstitvatana1 NP-complete proofs The circuit satisfiability proof of NP- completeness relies on a direct proof that L  p CIRCUIT-SAT for every.
CSCI 2670 Introduction to Theory of Computing November 29, 2005.
NP-COMPLETENESS PRESENTED BY TUSHAR KUMAR J. RITESH BAGGA.
EMIS 8373: Integer Programming NP-Complete Problems updated 21 April 2009.
Techniques for Proving NP-Completeness Show that a special case of the problem you are interested in is NP- complete. For example: The problem of finding.
1 Design and Analysis of Algorithms Yoram Moses Lecture 11 June 3, 2010
NP-Complete Problems. Running Time v.s. Input Size Concern with problems whose complexity may be described by exponential functions. Tractable problems.
NP-COMPLETE PROBLEMS. Admin  Two more assignments…  No office hours on tomorrow.
NP-Complete problems.
CSE 589 Part V One of the symptoms of an approaching nervous breakdown is the belief that one’s work is terribly important. Bertrand Russell.
Unique Games Approximation Amit Weinstein Complexity Seminar, Fall 2006 Based on: “Near Optimal Algorithms for Unique Games" by M. Charikar, K. Makarychev,
CS6045: Advanced Algorithms NP Completeness. NP-Completeness Some problems are intractable: as they grow large, we are unable to solve them in reasonable.
1 CPSC 320: Intermediate Algorithm Design and Analysis July 30, 2014.
NPC.
1 2 Introduction In this lecture we’ll cover: Definition of PCP Prove some classical hardness of approximation results Review some recent ones.
CSC 413/513: Intro to Algorithms
Introduction to NP-Completeness Tahir Azim. The Downside of Computers Many problems can be solved in linear time or polynomial time But there are also.
Complexity 24-1 Complexity Andrei Bulatov Interactive Proofs.
CSE 421 Algorithms Richard Anderson Lecture 27 NP-Completeness Proofs.
Robust Graph Coloring on Paths Ralf Ollig. ROBUST GRAPH COLORING PROBLEM Undirected Graph G =(V,E) Undirected Graph G =(V,E) Positive integer k ≥ χ(G)
COSC 3101A - Design and Analysis of Algorithms 14 NP-Completeness.
CS151 Complexity Theory Lecture 15 May 18, Gap producing reductions Main purpose: –r-approximation algorithm for L 2 distinguishes between f(yes)
 2005 SDU Lecture15 P,NP,NP-complete.  2005 SDU 2 The PATH problem PATH = { | G is a directed graph that has a directed path from s to t} s t
P & NP.
Prabhas Chongstitvatana
Interactive Proofs Adapted from Oded Goldreich’s course lecture notes.
Presentation transcript:

1 The PCP Theorem via gap amplification Irit Dinur Presentation by Michal Rosen & Adi Adiv

2 The PCP Theorem NP = PCP ½ [log(n),O(1)] What does it mean?

3 Definitions NP L  NP if there is a protocol : L  NP if there is a protocol : p – prover has infinite running time. v – verifier has O(poly(n)) running time. s.t. if x  L if x  L if x  L  π v(π) = 1  π v(π) = 0

4 Definitions NP-Complete L  NPC if L  NP and if for  A  NP A ≤ p L. if for  A  NP A ≤ p L. We saw that SAT, 3-Col, Ham… Are in NPC

5 PCP Prover: gives a proof: Hide it, and gives it to the verifier Verifier: picks constant number of cells randomly Accept/reject according the check

6 Definitions PCP  [r,q] LЄPCP  [r,q] if there is a protocol : s.t. if x  L if x  L if x  L r – how many coins does v need for checking π q – the number of places v samples π The probability upon the random coins  π Pr[v accepts π] = 1  π Pr[v accepts π] ≤ 

7 Example -3-col P: gives a proof (coloring): ∑ = {0,1,2} V: choose an edge randomly and check it 2001 u yx v u x v y V accepts V regects

8 Example 3-col 3-Col Prover – Verifier – q = r =  = = = = gives a coloring of G. chooses edge (u,v) randomly, checks u and v have different colors. O(1) 1-1/m O(log(n)) r – how many coins does v need for checking π q – the number of places v samples π  – if x  L  π Pr[v accepts π] ≤ 

9 PCP Theorem NP = PCP ½ [log(n),O(1)] If x  L  π Pr[v accepts π] = 1 If x  L  π Pr[v accepts π] ≤ ½. r = log(n) - how many coins does v need for checking π q = O(1) - the number of places v samples π

10 What is it good for? NP = PCP ½ [log(n),O(1)]  Gap3-SAT[ ,1]  NP-Hard PCP is very important for approximate problems

11 History AS92: defining PCP ALMSS92: the PCP theorem Long and complicated proof Uses heavily algebraic tools Not good parameters BGLR93, RS97,AS97…: Better parameters but even more complicated D06: simple combinatorial proof STOC’06 best paper

12 Main Goal We will show an overview of the proof Gap3-SAT[ ,1]  NP-Hard Actually we will prove hardness of hardness of a problem, a problem, Which has an easy reduction to Gap3-SAT Remember: NP = PCP ½ [log(n),O(1)]  Gap3-SAT[c,1]  NP-Hard

13 Constraint Graph (CG) Input: : G = (V,E) undirected graph, ∑ alphabet, C constraints where for every e  E, C e  ∑х∑. Example: ∑ = {0,1,2} U V C u,v = {(2,1), (1,0)} U = 1 v = 0 U = 2

14 Constraint Graph (CG) Goal: Find σ:V->∑ that satisfied all edges (u,v)  E s.t. (σ(u),σ(v))  C u,v wU V C u,v = {(1,1)} C v,w = {(0,0),(1,1)}σ(u)=1 σ σ(v)=1 σ σ(w)=1 σ σ(u)=0

15 CG  NPC CG  NP CG  NP We’ll show reduction We’ll show reduction 3-Col ≤ CG ∑ = {0,1,2} For every edge (u,v)  E, C u,v = u ≠ v

16 GapCG[α,β] Definition: CG is a constraint graph (like before) YES: there exists σ :V->∑ s.t. #satisfied edges ≥ β. NO: for any σ:V->∑ #satisfied edges ≤ .

17 GapCG[α,β] Notice: if G  CG then in every assignment there is at least one edge that is not satisfied In this case: GapCG[1-1/m,1] = CG (m = |E|)

18 UNSAT(CG) UNSAT(CG) = the smallest number of: # unsatisfied edges #all edges #all edges UNSAT(CG) = min σ (|{C u,v : (σ(u),σ(v))  C(u,v)}|/m)

19 UNSAT(CG) Remember: if G  CG then in every assignment there is at least one edge that is not satisfied Therefore: UNSAT(G) m = |E| # “bad” edges # all edges m 1 ≥=

20 UNSAT(CG) So what do we know? It is NP-Hard to distinguish between UNSAT(G) = 0 to UNSAT(G) ≥ 1/m So what do we need? It is NP-Hard to distinguish between UNSAT(G) = 0 to UNSAT(G) ≥ 

21 UNSAT(CG) why? => GapCG[1- ,1]  NP-Hard => GapCG[1- ,1] ≤ p Gap3-SAT[c,1] => Gap3-SAT[c,1]  NP-Hard => PCP theorem!!! Remember: NP = PCP ½ [log(n),O(1)]  Gap3-SAT[c,1]  NP-Hard

22 GOAL UNSAT(G) ≥ 1/m is not enough. We want constant  !!! => UNSAT(G) ≥  How can we increase the percentage of the “bad” edges?

23 How? G i  G i+1 |∑(G i )| = |∑(G i+1 )| ּ UNSAT(G i+1 ) > 2 ּ UNSAT(G i ) |G i+1 | ~ kּ |G i | (k is a constant) Degree(G i+1 ) = constant

24 Road Map  Preparation:  Degree reduction- G i  G i 1 d-regular graph  Expandering- G i 1  G i 2  Powering- G i 2  G i 3 increase UNSAT(G i 2 ).  ∑ -reduce- G i 3  G i+1 back to original ∑.

25 Preparation After the preparations the graph becomes d-regular expander. We’ll see later how to do it. UNSAT(G)|G|Deg(G)|∑| Constant factor d-regular No change

26 Powering - overview Result: UNSAT(G t ) ≥ β ּ √t ּ UNSAT(G) Problem: |∑| becomes |∑| d^t UNSAT(G)|G|Deg(G)|∑| Constant factor goes up goes up (problem!!!)

27 Powering Let G = a constraint graph. Let G = a constraint graph. We define G t = : V’ = V V’ = V E’: there are k edges between u and v iff there are exactly k different t-step paths between them in G. E’: there are k edges between u and v iff there are exactly k different t-step paths between them in G.

28 Powering ∑ d^t : every u  V’ has information of it’s t-step neighbors. ∑ d^t : every u  V’ has information of it’s t-step neighbors. Constraints: (u,v)  E’ will be satisfied if- Constraints: (u,v)  E’ will be satisfied if- u and v assignment agree about all the shared “neighbors”.u and v assignment agree about all the shared “neighbors”. The assignment satisfies all the shared constraints in the original graph G.The assignment satisfies all the shared constraints in the original graph G.

29 Powering Example: t = 2 powering  GtGt xwyz G ? uxwyzu ? ? ? ? ? ?

30 Powering t = 1 : Assignment Does it satisfie? xwyz y=1x=1w=0 y=1x=1 xwyz C={(1,1)} C={(0,2)} C={(1,0)} powering  G GtGt

31 Powering Lemma (amplification lemma)  β > 0,  G = - d-regular-CG UNSAT(G t ) ≥ β√tּmin(UNSAT(G),1/t) UNSAT(G t ) ≥ 2ּUNSAT(G) or 1/t (constant) Example: If we ’ ll take t ≥4/β 2 then

32 Powering What does it give us? UNSAT(G) = 1/m  2/m  2 2 /m  …  2 O(log(m)) /m =  We need to repeat the procedure O(log(m)) times

33 Powering - Summary Result: UNSAT(G t ) ≥ β ּ √t ּ UNSAT(G) Problem: |∑| becomes |∑| d^t UNSAT(G)|G|Deg(G)|∑| Constant factor goes up goes up (problem!!!)

34 Reduce ∑ Problem: ∑ is exponential in n - ∑ d^log(n). The reduction won’t be polynomial. Solution: There is a code that reduce ∑ UNSAT(G)|G|Deg(G)|∑| no change by constant back to usual

35 Summary In each iteration (3 steps combined) Preparations, Powering and Reduce ∑ Doubles UNSAT Doubles UNSAT Increases |G| by constant factor. Increases |G| by constant factor. Increases degree. Increases degree. Doesn’t change ∑. Doesn’t change ∑.

36 More about Degree Reduction Lemma 3.2 (constant degree) Any G =, CG can be transformed to d-regular-CG G’ = d-regular-CG G’ = s.t. aּUNSAT(G) ≤ UNSAT(G’) for d > 0, a > 0.

37 Degree Reduction - Proof What is our goal? To make the graph d-regular aּUNSAT(G) ≤ UNSAT(G’) for a > 0

38 Degree Reduction - Proof For every u  V we add k new vertices u i, when u appears k times in the constraints. k = degree(v) uwzxy  u1u1 u2u2 u3u3 u4u4 wzyx

39 Degree Reduction - Proof What should be the constrains between the u i ? For any i ≠ j the constrains are- u i = u j How will we do it?

40 Degree Reduction - Proof First try Connect them all as a clique!!! What’s the problem? We have n 2 “good” edges so the UNSAT(G) is very small Not good for us!!! u4u4 u3u3 u2u2 u1u1

41 Degree Reduction - Proof Second try Connect them all in a line What’s the problem? The UNSAT is still getting smaller! uwzxy  u4u4 wu3u3 zu2u2 yu1u1 x

42 Degree Reduction - Proof Example uwz x y..... C={(0,1)} C={(1,1)} C={(0,1)} σ(x)=1 σ(y)=1 σ(z)=1 σ(u)=0  σ(w)=1 unun wU i+1 zuiui yu1u1 x.. σ(x)=1 σ(y)=1 σ(z)=1 C={(1,1)} C={(0,1)} σ(u n )=0 σ(u i+1 )=0 σ(u i )=1 σ(u 1 )=1 UNSAT=1/3 UNSAT= 1 (m+(n-1)).

43 Degree Reduction - Proof Third and last try Connect them all in an Expander!!! Reminder: Expander a ּ |S|≤E(S,S’) where a>1.

44 Degree Reduction - Proof Can we build an Expander? Theorem:  n vertices we can build a d-1 regular expander with a > 0 and #edges lּn (linear in n)

45 Degree Reduction - Proof Why is Expander good? u3u3 u4u4 u2u2 unun u7u7 u1u1 u6u6 u5u5 S A set |S| ≤ |V|·½ S There is Expander between the U i: c∙|S|≤|E(S,S’)|

46 Degree Reduction - Proof u3u3 u4u4 u2u2 unun u7u7 u1u1 u6u6 u5u5 If the “bad” guy takes a set S of u i and “cheat” The number of unsatisfiededges Will grow S z x y Edges outside the Expander

47 More about Expandering Problem: what if we have this graph? F – satisfied edges S – unsatisfied edges C – the edges between T to S S F C U V 1 0 C u.v = {(1,0)} U V 0 0

48 More about Expandering What will happen To Gt (powering)? UNSAT(Gt) might be smaller than UNSAT(G) Solution: expander!! (*last week…) S F C

49 More about Expandering Definition: G is expander if for every S in V s.t. |S| ≤ |V|/2, denote E(S,S’) as the number of edges between S to V/S (=S’), aּ|S| ≤ E(S,S’), where a > 1.

50 More about Expandering Why is expander a solution? Denote S as the “bad” edges (unsatisfied edges). In every power iteration S multiplies itself in a constant > 1. S  (1+a/d)S  (1+a/d) 2 S  …  (1+a/d) O(log(m)) S ≈ m So after O(log(m)) iterations we get to all the edges.

51 Preparation - summary After the preparations the graph becomes d-regular expander. We’ll see later how to do it. UNSAT(G)|G|Deg(G)|∑| Constant factor d-regular No change

52 summary CGNPC CG = GapCG[1-1/m,1] GapCG[1- 1/m,1] p(polytime) GapCG[,1] GapCG[,1]NP-Hard GapCG[,1] ≤p Gap3-SAT[’,1] Gap3-SAT[’,1]NP-Hard PCP theorem!!!