PCP Theorem and Hardness of Approximation

Similar documents
Advanced Algorithms (XIII) Yijia Chen Fudan University

Lecture 8 (Notes) 1. The book Computational Complexity: A Modern Approach by Sanjeev Arora and Boaz Barak;

DRAFT. PCP and Hardness of Approximation. Chapter 19

[PCP Theorem is] the most important result in complexity theory since Cook s Theorem. Ingo Wegener, 2005

1 Agenda. 2 History. 3 Probabilistically Checkable Proofs (PCPs). Lecture Notes Definitions. PCPs. Approximation Algorithms.

Lecture 16 November 6th, 2012 (Prasad Raghavendra)

Notes for Lecture 2. Statement of the PCP Theorem and Constraint Satisfaction

Lecture 18: PCP Theorem and Hardness of Approximation I

Limits to Approximability: When Algorithms Won't Help You. Note: Contents of today s lecture won t be on the exam

BCCS: Computational methods for complex systems Wednesday, 16 June Lecture 3

Complexity Classes IV

Non-Approximability Results (2 nd part) 1/19

Lecture 15: A Brief Look at PCP

Probabilistically Checkable Proofs. 1 Introduction to Probabilistically Checkable Proofs

Tool: Linearity Testing and the Walsh-Hadamard Code

Lecture Hardness of Set Cover

Solution of Exercise Sheet 12

CS151 Complexity Theory. Lecture 15 May 22, 2017

Essential facts about NP-completeness:

Complexity Theory. Jörg Kreiker. Summer term Chair for Theoretical Computer Science Prof. Esparza TU München

Complexity Classes V. More PCPs. Eric Rachlin

Lecture 22. m n c (k) i,j x i x j = c (k) k=1

DD2446 Complexity Theory: Problem Set 4

Complexity Theory. Jörg Kreiker. Summer term Chair for Theoretical Computer Science Prof. Esparza TU München

The Cook-Levin Theorem

The Complexity of Optimization Problems

Topics in Complexity Theory

Lecture 12 Scribe Notes

BBM402-Lecture 11: The Class NP

Intro to Theory of Computation

COMPUTATIONAL COMPLEXITY

Almost transparent short proofs for NP R

Lecture 10: Hardness of approximating clique, FGLSS graph

PCP Theorem And Hardness Of Approximation For MAX-SATISFY Over Finite Fields

Lecture 26. Daniel Apon

Lecture 2 (Notes) 1. The book Computational Complexity: A Modern Approach by Sanjeev Arora and Boaz Barak;

6.841/18.405J: Advanced Complexity Wednesday, April 2, Lecture Lecture 14

NP-Complete Reductions 1

Approximation Algorithms and Hardness of Approximation. IPM, Jan Mohammad R. Salavatipour Department of Computing Science University of Alberta

On the efficient approximability of constraint satisfaction problems

PCPs and Inapproximability Gap-producing and Gap-Preserving Reductions. My T. Thai

Chapter 2. Reductions and NP. 2.1 Reductions Continued The Satisfiability Problem (SAT) SAT 3SAT. CS 573: Algorithms, Fall 2013 August 29, 2013

Two Query PCP with Sub-Constant Error

SAT, NP, NP-Completeness

Lecture 19: Interactive Proofs and the PCP Theorem

CS21 Decidability and Tractability

Computability and Complexity Theory: An Introduction

CSE 555 HW 5 SAMPLE SOLUTION. Question 1.

CS151 Complexity Theory. Lecture 13 May 15, 2017

Complexity Theory VU , SS The Polynomial Hierarchy. Reinhard Pichler

CS 5114: Theory of Algorithms

Outline. Complexity Theory EXACT TSP. The Class DP. Definition. Problem EXACT TSP. Complexity of EXACT TSP. Proposition VU 181.

COP 4531 Complexity & Analysis of Data Structures & Algorithms

CMPT307: Complexity Classes: P and N P Week 13-1

1 The Low-Degree Testing Assumption

INAPPROX APPROX PTAS. FPTAS Knapsack P

6.045: Automata, Computability, and Complexity (GITCS) Class 15 Nancy Lynch

Lecture 12: Interactive Proofs

an efficient procedure for the decision problem. We illustrate this phenomenon for the Satisfiability problem.

More NP-Complete Problems

CS154, Lecture 15: Cook-Levin Theorem SAT, 3SAT

CS 5114: Theory of Algorithms. Tractable Problems. Tractable Problems (cont) Decision Problems. Clifford A. Shaffer. Spring 2014

Notes on Complexity Theory Last updated: November, Lecture 10

CSC 5170: Theory of Computational Complexity Lecture 13 The Chinese University of Hong Kong 19 April 2010

P is the class of problems for which there are algorithms that solve the problem in time O(n k ) for some constant k.

U.C. Berkeley CS278: Computational Complexity Professor Luca Trevisan August 30, Notes for Lecture 1

Theory of Computation Chapter 9

Introduction Long transparent proofs The real PCP theorem. Real Number PCPs. Klaus Meer. Brandenburg University of Technology, Cottbus, Germany

1 Probabilistically checkable proofs

2 Evidence that Graph Isomorphism is not NP-complete

2 Natural Proofs: a barrier for proving circuit lower bounds

Algorithms and Theory of Computation. Lecture 22: NP-Completeness (2)

A An Overview of Complexity Theory for the Algorithm Designer

Computational Intractability 2010/4/15. Lecture 2

Lecture 3: Boolean Functions and the Walsh Hadamard Code 1

NP-Complete Reductions 2

Today. Few Comments. PCP Theorem, Simple proof due to Irit Dinur [ECCC, TR05-046]! Based on some ideas promoted in [Dinur- Reingold 04].

Foundations of Machine Learning and Data Science. Lecturer: Avrim Blum Lecture 9: October 7, 2015

NP and Computational Intractability

Dinur s Proof of the PCP Theorem

UC Berkeley CS 170: Efficient Algorithms and Intractable Problems Handout 22 Lecturer: David Wagner April 24, Notes 22 for CS 170

2 Completing the Hardness of approximation of Set Cover

Show that the following problems are NP-complete

Introduction to Complexity Theory. Bernhard Häupler. May 2, 2006

Keywords. Approximation Complexity Theory: historical remarks. What s PCP?

Algorithm Design and Analysis

CS154, Lecture 18: 1

More Completeness, conp, FNP,etc. CS254 Chris Pollett Oct 30, 2006.

CS21 Decidability and Tractability

Correctness of Dijkstra s algorithm

CSE 421 NP-Completeness

The Class NP. NP is the problems that can be solved in polynomial time by a nondeterministic machine.

NP and Computational Intractability

Lecture 4: NP and computational intractability

Lecture 2: November 9

Notes for Lecture Notes 2

CSE 135: Introduction to Theory of Computation NP-completeness

Geometric Steiner Trees

NP-completeness. Chapter 34. Sergey Bereg

1 Computational problems

Transcription:

PCP Theorem and Hardness of Approximation An Introduction Lee Carraher and Ryan McGovern Department of Computer Science University of Cincinnati October 27, 2003

Introduction Assuming NP P, there are many problems that would take a prohibitively long amount of time to solve for a large number of inputs. Approximate solutions are adequate for many real world problems. Unfortunately, there are not many approximate solutions that are any better than the complexity of the original NP problem for most problems. Furthermore, Cook-Levin-Karp reductions of NP problems to NP problems with good approximate solutions, do not yield equivalent results for the reduced problem.

Outline Approximate Solutions Two Views of PCP Theorem Equivalence of the two Views Hardness of Approximation for Vertex Cover and Independent Set Hadamard-Walsh Transformation Quadratic Equation Proof using the Hadamard-Walsh Transform

Short Version Definition of PCP PCP - Probabilistically Checkable Proofs View. 1: constructs a locally testable proof system, that is checkable by only looking at a few of the symbols of the proof. View. 2: regarding the hardness of approximating NP-Complete optimization problems.

Approximate Solutions to NP-Hard Optimization Problems As mentioned in the introduction, if we can find approximate solutions to NP problems that are within an acceptable bound of the exact solution, then the complexity issue of NP problems would not be so bad. Also, finding the limits of these approximate algorithms, would be an interesting problem The attempt to discover the limits in turn motivated PCP Theorem Consider two NP-Hard Optimization Problems Max-3Sat Vertex Cover

Max-3-Sat Definition 11.1 (Approximation of MAX-3SAT) For every 3CNF formula ϕ, the value of ϕ, denoted by val(ϕ), is the maximum fraction of clauses that can be satisfied by any assignment to ϕ s variables. In particular, ϕ is satisfiable iff val(ϕ) = 1 For every ρ 1, an algorithm A is a ρ-approximation algorithm for MAX-3SAT if for every 3CNF formula ϕ with m clauses, A(ϕ) outputs an assignment satisfying at least ρ val(ϕ)m of ϕ s clauses.

1/2 Approximate Max-3Sat Algorithm The 1/2 Approximation algorithm for Max-3Sat is relatively trivial. Approximate Max-3Sat Algorithm for each variable v: assign v s.t. it satisfies at least 1/2 of the clauses that it appears in remove all clauses satisfied by v Naturally this results in satisfying at least half of the clauses, and therefor it is at least a 1/2 approximation of the actual solution. Another approximate algorithm utilizes techniques of semidefinite programming, in which the solution is cast as the objective function of a continuous convex optimization. The solution is then chosen as the nearest integer solution to the real convex solution.

Min Vertex Cover 6 7 5 4 1 2 3 8

Min Vertex Cover Definition a minimum vertex cover of a graph G is a set c of vertices from C, such that each edge of G is incident to at least one vertex in c. The minimum solution set m = argmin c C. The 1/2 approximate solution relaxes the minimum requirement such that the cardinality of m has to be at most 2x the optimal solution set s cardinality.

Approximate Min-Vertex-Cover Algorithm Approximate Min-Vertex-Cover S = {} while E {} pick any {u, v} E S = S {u, v} remove edges incident to either u or v

Approximate Min-Vertex-Cover Algorithm S = {} choose edge between 6 and 4 6 7 5 4 1 2 3 8 remove edges incident to 6 and 4 S = {6,4}

Approximate Min-Vertex-Cover Algorithm S = {6, 4} choose edge between 3 and 2 7 5 1 2 3 8 remove edges incident to 3 and 2 S = {6,4,3,2}

Approximate Min-Vertex-Cover Algorithm S = {6, 4, 3, 2} choose edge between 5 and 1 7 5 1 remove edges incident to 5 and 1 S = {6,4,3,2,5,1} 8

Approximate Min-Vertex-Cover Algorithm 7 S = {6, 4, 3, 2} choose edge between 5 and 1 8 We are done! S = {6,4,3,2,5,1} note the cardinality is 6, the optimal solution S = {4,1,2}, is 3 which is a 2x approximation

Can we do better? naturally the next question is, can we do better? some optimizations: choose nodes with the greatest cardinality first use Depth first search, the cover is all nodes above the lowest level This search for optimizations for both algorithms, and bounding of the approximate solution of such algorithms leads naturally into the first definition of PCP theorem.

Two Definitions of the PCP Theorem All Languages L NP have a PCP system wherein on input x 0, 1 n : Prover P writes down a poly(n)-bit-length proof. Verifier V looks at and does polynomial time deterministic computation Then V uses O(logn) bits of randomness to choose C random locations in the proof. Here C is a constant. V reads the C randomly chosen locations from the proof and performs a test on them accepting or rejecting V accepts if x L with probability 1. This is Completeness V rejects for all x L with probability at most 1/2. This is Soundness Theorem (11.5) NP = PCP(logn, C)

Two Definitions of the PCP Theorem Some false statements will be accepted No true statements will be rejected if you use O(polyn) bits instead of log you have L NEXP The 1/2 is arbitrary

3-LIN hardness The number of random bits used can be a little as three with imperfect completeness Specifically For every constant σ > 0 there is a poly-size PCP for NP that reads 3 random bits and tests their XOR it has completeness 1 σ and soundness 1/2 + σ

Two Definitions of the PCP Theorem If one NP-complete problem can produce a Polynomial Checkable Proof then by classical theory of we can create a PCP system for any NP-Complete problem This is done by doing the reduction into the first step of the verifier and the prover. Key note that PCP does not inherently reduce the time to verify a proof due to the time used in the first step

Hardness of approximation Of the two characterization of PCP theorems the Hardness of approximation results are considered more usefull The Hardness of approximation results usually use problems in terms of what is the best or minimum of normal NP problems.

Hardness of approximation A key problem is MAX-3SAT which outputs the maximum fraction of clauses in a 3CNF Formula that can be satisfied. MAX-3SAT has no Polynomial Time Approximation Scheme for any σ > 0 where σ is the approximation factor iff P NP This discovery is important because it means that approximation for some problems is not any better than solving the problem. However for other problems it is easier as there is a good approximation algorithm for the KNAPSACK problem.

Equivalence of two views The key to the proofs of the two views is a problem called CSP (Constraint Satisfaction Problems) CSP generalizes 3SAT by allowing clauses of arbitrary form CSP allows clauses that depend on more than three variables a qcsp instance is made up of m functions φ 1,..., φ m each function takes an input {0, 1} n {0, 1} and depends on at most q variables 3SAT is the sub case of qcsp where q = 3 and the constraints are OR s of the involved literals

Equivalence of two views We now define Gap (CSP) such that for every q ℵ, p 1 define p GAPqCSP to be the problem of determine for a given qcsp-instance φ weather. val(φ) = 1 in which case we say φ is a YES instance of p GAPqCSP or val(φ) < p in which case we say φ is a NO instance Completeness: x L val(f (x)) = 1 Soundness: x / L val(f (x) < p This satisfies the completeness and soundness requirements for PCP. Theorem (11.14) There exist constants q ℵ, 0 < p < 1 such that p GAPqCSP is NP-HARD

Equivalence of two views, Prove theorem 11.5 implies 11.14 Assume that NP PCP will will show that 1/2 GAPqCSP is NP-hard for some constant q. All that is needed is to reduce a NP-complete problem to 1/2 GAPqCSP for some constant q Given our assumption 3SAT has a PCP system that will make a constant number of queries C. We use q = C and r {0, 1} c log(n) Let V x,r be the function that on a input proof outputs 1 if the verifier will accept the proof on input x and coins random bits r Note that V x,r depends on at most q locations Let φ = {V x,r } r {0,1} c log(n) and see how this is a polynomial size qcsp instance This qcsp instance will work for every x {0, 1} n Since V is a valid PCP system it will satisfy for all valid proofs and reject invalid proofs with p 1/2

Equivalence of two views, Prove theorem 11.14 implies 11.5 If you assume that p GAPqCSP is NP hard for some constants q 1, p < 1 we need to only translate this into a PCP system with q quires and p soundness This can be done by simply using the assignment of variables of φ as the proof and checking a random statement It will then verify this by making q queries to the proof (which is all that is needed of a qcsp) Obviously if the proof is valid we will not say it is invalid ever However if the proof is not valid we will accept it with probability at most p

Equivalence of two views, Prove theorem 11.9 = 11.14 Since 3CNF formulas are a special case of 3CSP as stated above 11.9 implies 11.14 We must proof 11.14 implies 11.9 This is done by mapping a (1 ɛ) GAPqCSP φ to a 3SAT formula using an intermediate qcsp φ We let each constraints of φ be in CNF form of at most 2 q clauses φ is a collection of constraints where each constraint is a single clause in φ since each constraint in φ is of at most 2 q clauses then φ will have m 2 q constraints where m is the number of constraints in φ

Equivalence of two views, Prove theorem 11.9 = 11.14 Cont we now reduce φ to using the cook level reduction on each clause to 3SAT and create a new qcsp φ In this reduction we will continue and break each clause into a separate constraint leaving us with at most qm2 q constraints in φ Note that φ is a 3SAT formula Soundness holds since if φ were satisfiable φ and φ would also be satisfiable Completeness holds since at least a ɛ fraction of the constraints were invalid even more would be invalid in φ as we are creating equivalent but (polynomial) longer formulas.

Hardness of approximation for vertex cover and independent set As stated in the beginning of this talk, one of the major influences of PCP theorem is that an approximation algorithm for some NP problem is likely to not be a good approximation for another NP problem. Even though exact solutions of NP problems through Cook-Levin-Karp reductions are equivalent. this statement induces a potential hierarchy of difficulty presented by approximation algorithm solutions to NP problems. A very glaring example of this non-equivalence is evident in the approximation algorithms for Max Independent Set and Vertex Cover, as they are exact complements of one another.

Hardness of approx (conti.) Alt. Definition INDSET The Largest Independent Set is the complement of the smallest vertex cover Theorem (11.5) There is some γ < 1 such that computing a γ approximation to MIN-VERTEX-COVER is NP-Hard. For every ρ < 1, computing a ρ-approximation to INDSET is NP-Hard

Some Arithmetic with approximations VC = cardinality of the minimal vertex cover set IS = cardinality of the largest independent set VC = n IS a ρ-approximation of independent set would be of size ρ IS and Min-Vertex-Cover would be of size n ρ IS which yields an approximation ratio n p IS n IS for Min-Vertex-Cover According to Theorem 1.15 (PCP Theorem), if P NP, and using our 1 2 approximation of Min-Vertex-Cover, then INDSET does not have a ρ-approximation algorithm.

3CNF Sat to INDSET Lemma 11.16 There exists a polynomial-time computable transformation f from 3CNF formula to graphs such that for every 3CNF formula ϕ, f (ϕ) is an n-vertex graph whose largest independent set has size val(ϕ) n 7 from this we can extract the following corollary Corollary 11.17 if P NP then there are some constants ρ < 1, ρ < 1 such that the problem INDSET cannot be ρ-approximated in polynomial time and MIN-VERTEX-COVER cannot be ρ -approximated

Sketch of Proof of Corollary 11.17 Part I 1 use thm. 1.9 to show that any NP problem can be solved by MAX-3SAT 2 use the reduction lemma 1.16 on the 3CNF to reduce it to INDSET 3 compute a ρ-approximation of INDSET this implies that there is a ρ-approximation of MAX-3SAT therefor the ρ-approximation to INDSET is NP-Hard

Sketch of Proof of Corollary 11.17 Part II using the arithmetic relating the set sizes of MIN-VERTEX-COVER and INDSET we get 4 VC = n val(ϕ) n 7, where val(ϕ) is the number of satisfied 3CNFs 5 if MIN-VERTEX-COVER has a ρ -approximation where ρ = 6/(7 ρ) 6 this allows us to find a vertex cover of size 1 ρ (n n 7 ) in the case val(ϕ) = 1 7 and the size is at most n ρn/7 which allows us to distinguish between val(ϕ) = 1 and val(ϕ) < ρ which by thm. 1.9 is NP-hard

Graph Product Definition Graph Product - a binary operation on a graph such that the vertex sets of H is the product of the two graphs the vertices are connected in the resulting graph if in the original graphs they are connected, and are also connected to the vertices they form a product with.

Graph Product Example 4 7 10 13 5 8 11 14 1 2 3 6 = 9 12 15

Proof 1.15 for any n-vertex graph G, define the graph G k to be a graph on ( ) n k vertices. G k will have Subsets of G of size k. Two subsets, S 1 and S 2 are adjacent if their union in G k is an independent set. The largest independent set in G k corresponds to the largest independent set in G, and has size ( ) IS k If we use the graph produced by corollary 1.17 and take its k-wise product, then the size of the independent set differs by a factor ρ k. this allows us to choose a k such that ρ is smaller than any constant. the reduction is n k which is polynomial for any constant k

PCP from the Walsh-Hadamard Code Theorem 11.19 NP PCP(poly(n), 1)

Walsh-Hadamard Codes Definition Walsh-Hadamard Code Method for encoding bit strings of length n by linear functions in n variables over GF(2). WH : {0, 1} {0, 1} maps a string u {0, 1} n to the truth table of function x u x, where x, y {0, 1} n u x = 2n i=1 x iy i (mod2) the WH mapping can be implemented as a matrix transform following some permutations to the 1 s vector first the sequence is repeated across the column and rows next the sequence is negated on the diagonal

Walsh Code Transform ( 1 ) ( 1 1 1 1 ) 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1... do this n times to get the walsh-transform WH

Some properties of the Walsh-Hadamard Code Random Subsum Principle if u v then for 1 2 the choices of x, u x v x the Walsh-Hadamard Code is a systemic code - the original message is contained in the codeword WH(x) is the evaluation of every linear function at x since any two linear functions disagree on exactly half the set of inputs, the fraction distance of the walsh-hadamard code is 1/2. the walsh-hadamard code is a [2 k, k, 2 k 1 ]-code

Local Testing of the Walsh-Hadamard Code because the Walsh-Hadamard codes are exactly the linear functions from {0, 1} n to {0, 1} then we can test with: 11.3 f (x + y) = f (x) + f (y) however this requires reading all 2 n values of f. A natural assumption for PCP is to test x,y at random and verify (11.3) this fails however for a function f that is close to a linear function, due to testing on only a small subset of f s components will not distinguish it from the linear function that it is close too instead, propose a test that accepts if f is a linear function, and rejects if f is far from linear.

Local Testing of the Walsh-Hadamard Code (conti.) Definition 11.20 let ρ [0, 1]. We say that f, g : {0, 1} n {0, 1} are ρ-close if Pr x R {0,1} n[f (x) = g(x)] ρ. We say that if f is ρ-close to a linear function if there exists a linear function g such that f and g are ρ-close. Theorem 11.21 Linearity Testing Let f : {0, 1} n {0, 1} be such that Pr x,y R {0,1} n[f (x + y) = f (x) + f (y)] ρ for some ρ > 1 2 then f is ρ-close to a linear function

Local Decoding of the Walsh-Hadamard Code (conti.) 1 δ linearity test for every δ (0, 1 2 ) we obtain a linearity test (11.3) that with probability > 1 2 rejects every function that is not (1 δ)-close to a linear function. Repeat O(1/δ) times Local Decoding Algorithm Choose x R {0, 1} n Set x = x + x Let y = f (x ) and y = f (x ) output y + y

Self Correction of the Walsh-Hadamard Code x and x are uniformly distributed by the union bound, with probability 1 2δ we have y = f (x ) and y = f (x ), where f is a linear function near f by linearity of f : f (x) = f (x + x ) = f (x ) + f (x ) which implies that with at least probability 1 2δ, f (x) = y + y this is the local decoding of the Walsh-Hadamard Code as it corrects f, the bit corrupted codeword, to f the linear function, with only a constant number of queries.

Proof of Theorem 1.19 The proof for theorem 1.19 works by creating a Verifier for a NP complete language using an encoded version of the usual certificate To do this we will use the NP-Complete language QUADEQ Let V be a PCP(poly(n), 1) and has access to proof π {0, 1} 2n +2 n2 which we interpret as a pair of functions f : {0, 1} n {0, 1} and g {0, 1} n2 {0, 1} In a correct proof for QUADEQ f will be the Walh-Hadamard encoding for the satisfying assignment u and g will be the Waslh-Hadamard encoding for u u

Proof of Theorem 1.19 Step 1: Verify that both f and g are linear functions Step 2: Verify g encodes u u where u is the string encoded by f Step 3: Verify g encodes a satisfying assignment

Proof of Theorem 1.19 Step 1: Verify that both f and g are linear functions This is done by random sampling to verify that f and g are 0.999 close to a linear function

Proof of Theorem 1.19 Step 2: Verify g encodes u u where u is the string encoded by f We do this by verifying that f (r)f (r ) = g(r r ) ten times This will allow us to halt on an incorrect proof 1/4 of the time on each of the ten calls giving us a certainty of > 0.9 that we will halt with an incorrect proof.

Proof of Theorem 1.19 Step 3: Verify g encodes a satisfying assignment This can be done easily by checking any particular equation is satisfied by u Finally to check that u satisfies the entire system we have to make a query to g for each equation which violates the principle to fix this we use the random subsum principle and create a new quadratic equation. thus if u does not satisfy even one equation in the original then with probability at least 1/2 it will not satisfy this new equation.

References -S. Arora, B. Barak, Computational Complexity a Modern Approach, Cambridge University Press 2009 -P. Harsha, J. Grochow(scribe), PCPs, codes and inapproximability, Lecture 3: Linearity Testing,CMSC, 2007 -Guruswami O Donnel, CSE 533: The PCP Theorem, 2005 Proof of the PCP Theorem http://www.cs.washington.edu/education/courses/cse533/05au/