Lecture 18: PCP Theorem and Hardness of Approximation I

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

Advanced Algorithms (XIII) Yijia Chen Fudan University

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

Complexity Classes V. More PCPs. Eric Rachlin

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

Complexity Classes IV

DRAFT. PCP and Hardness of Approximation. Chapter 19

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

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

CS151 Complexity Theory. Lecture 15 May 22, 2017

Expander Graphs and Their Applications (X) Yijia Chen Shanghai Jiaotong University

Intro to Theory of Computation

Complexity Theory VU , SS The Polynomial Hierarchy. Reinhard Pichler

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

Umans Complexity Theory Lectures

Essential facts about NP-completeness:

Lecture 15: A Brief Look at PCP

PCP Theorem and Hardness of Approximation

Lecture 3: Nondeterminism, NP, and NP-completeness

Average case Complexity

CS154, Lecture 13: P vs NP

Interactive Proofs. Merlin-Arthur games (MA) [Babai] Decision problem: D;

Lecture 16 November 6th, 2012 (Prasad Raghavendra)

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

BBM402-Lecture 11: The Class NP

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

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

The Cook-Levin Theorem

Polynomial time reduction and NP-completeness. Exploring some time complexity limits of polynomial time algorithmic solutions

Lecture 20: conp and Friends, Oracles in Complexity Theory

CS21 Decidability and Tractability

Probabilistically Checkable Proofs. 1 Introduction to Probabilistically Checkable Proofs

Lecture 25: Cook s Theorem (1997) Steven Skiena. skiena

CS154, Lecture 13: P vs NP

Technische Universität München Summer term 2010 Theoretische Informatik August 2, 2010 Dr. J. Kreiker / Dr. M. Luttenberger, J. Kretinsky SOLUTION

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

CISC 4090 Theory of Computation

Chapter 34: NP-Completeness

NP-Complete Reductions 1

NP-Complete Reductions 2

CSE 105 THEORY OF COMPUTATION

Intro to Theory of Computation

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

Chapter 7: Time Complexity

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

Lecture 19: Finish NP-Completeness, conp and Friends

Lecture Notes Each circuit agrees with M on inputs of length equal to its index, i.e. n, x {0, 1} n, C n (x) = M(x).

The Polynomial Hierarchy

CSE 135: Introduction to Theory of Computation NP-completeness

CSE 105 THEORY OF COMPUTATION

Complexity (Pre Lecture)

Solution of Exercise Sheet 12

Lecture 16: Time Complexity and P vs NP

A An Overview of Complexity Theory for the Algorithm Designer

Introduction to Complexity Theory

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

CS154, Lecture 18: 1

Introduction to Advanced Results

Lecture 26. Daniel Apon

CS 320, Fall Dr. Geri Georg, Instructor 320 NP 1

Time Complexity. CS60001: Foundations of Computing Science

1 Probabilistically checkable proofs

CS Lecture 29 P, NP, and NP-Completeness. k ) for all k. Fall The class P. The class NP

Lecture 17: Cook-Levin Theorem, NP-Complete Problems

CS21 Decidability and Tractability

Algorithms and Theory of Computation. Lecture 19: Class P and NP, Reduction

Complexity Theory Final Exam

CS154, Lecture 17: conp, Oracles again, Space Complexity

INAPPROX APPROX PTAS. FPTAS Knapsack P

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

CSE 3500 Algorithms and Complexity Fall 2016 Lecture 25: November 29, 2016

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

CS5371 Theory of Computation. Lecture 19: Complexity IV (More on NP, NP-Complete)

1. Introduction Recap

Lecture 13, Fall 04/05

Almost transparent short proofs for NP R

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

CSE200: Computability and complexity Space Complexity

Correctness of Dijkstra s algorithm

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

Could we potentially place A in a smaller complexity class if we consider other computational models?

Approximation algorithm for Max Cut with unit weights

-bit integers are all in ThC. Th The following problems are complete for PSPACE NPSPACE ATIME QSAT, GEOGRAPHY, SUCCINCT REACH.

CSE 555 HW 5 SAMPLE SOLUTION. Question 1.

NP-Completeness. NP-Completeness 1

TIME COMPLEXITY AND POLYNOMIAL TIME; NON DETERMINISTIC TURING MACHINES AND NP. THURSDAY Mar 20

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

Lecture 19: Interactive Proofs and the PCP Theorem

Lecture Notes CS:5360 Randomized Algorithms Lecture 20 and 21: Nov 6th and 8th, 2018 Scribe: Qianhang Sun

Finish K-Complexity, Start Time Complexity

Theory of Computation Time Complexity

Lecture 4 : Quest for Structure in Counting Problems

HW11. Due: December 6, 2018

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

SOLUTION: SOLUTION: SOLUTION:

NP, polynomial-time mapping reductions, and NP-completeness

Lecture 59 : Instance Compression and Succinct PCP s for NP

Topics in Complexity Theory

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

NP and NP Completeness

Transcription:

Lecture 18: and Hardness of Approximation I Arijit Bishnu 26.04.2010

Outline 1 Introduction to Approximation Algorithm 2

Outline 1 Introduction to Approximation Algorithm 2

Approximation Algorithm Approximation Ratio: Minimization Problems An algorithm is r-approximate for a minimization problem if, for every input, the algorithm finds a solution whose cost is at most r times the optimum. r 1 is called the approximation ratio of the algorithm. Approximation Ratio: Maximization Problems An algorithm is r-approximate for a maximization problem if, for every input, the algorithm finds a solution whose cost is at most 1/r times the optimum. r 1 is called the approximation ratio of the algorithm. Approximation Ratio: PTAS A PTAS is an r-approximate algorithm for every r > 1.

Approximation Algorithm for Max-3SAT The Problem: Max-3SAT Max-3SAT is the problem of finding, given a 3CNF Boolean formula ϕ as input, an assignment that maximizes the number of satisfied clauses.

Approximation Algorithm for Max-3SAT The Problem: Max-3SAT Max-3SAT is the problem of finding, given a 3CNF Boolean formula ϕ as input, an assignment that maximizes the number of satisfied clauses. Approximation Algorithm

Approximation Algorithm for Max-3SAT The Problem: Max-3SAT Max-3SAT is the problem of finding, given a 3CNF Boolean formula ϕ as input, an assignment that maximizes the number of satisfied clauses. Approximation Algorithm Assign to the i-th variable, starting from the first, a boolean value that satisfies at least half of the clauses in which it appears. Remove the satisfied clauses and continue.

Approximation Algorithm for Max-3SAT The Problem: Max-3SAT Max-3SAT is the problem of finding, given a 3CNF Boolean formula ϕ as input, an assignment that maximizes the number of satisfied clauses. Approximation Algorithm Assign to the i-th variable, starting from the first, a boolean value that satisfies at least half of the clauses in which it appears. Remove the satisfied clauses and continue. Easy to see that it is a 2-factor approximation.

A Relook at Cook-Levin Reduction 3SAT What is the problem of 3SAT?

A Relook at Cook-Levin Reduction 3SAT What is the problem of 3SAT? Given any CNF expression ϕ, we want to determine whether a satisfying assignment to ϕ, i.e., whether ϕ 3SAT.

A Relook at Cook-Levin Reduction 3SAT What is the problem of 3SAT? Given any CNF expression ϕ, we want to determine whether a satisfying assignment to ϕ, i.e., whether ϕ 3SAT. Another interpretation is that we want to distinguish between satisfiable and unsatisfiable instances.

A Relook at Cook-Levin Reduction Another Problem: Vertex Cover (VC) Given an undirected graph G = (V, E) and an integer k > 0, is there a subset V V of size at most k such that each edge in E is incident to at least one vertex in V?

A Relook at Cook-Levin Reduction Polynomial Time (Cook) Reduction: 3SAT P VC.

A Relook at Cook-Levin Reduction Polynomial Time (Cook) Reduction: 3SAT P VC. Start from a 3SAT instance ϕ and construct a graph G and an integer k > 0 such that if ϕ is satisfiable then G has a vertex cover of size k.

A Relook at Cook-Levin Reduction Polynomial Time (Cook) Reduction: 3SAT P VC. Start from a 3SAT instance ϕ and construct a graph G and an integer k > 0 such that if ϕ is satisfiable then G has a vertex cover of size k. If ϕ is unsatisfiable then all vertex covers in G have size at least k + 1.

A Relook at Cook-Levin Reduction Polynomial Time (Cook) Reduction: 3SAT P VC. Start from a 3SAT instance ϕ and construct a graph G and an integer k > 0 such that if ϕ is satisfiable then G has a vertex cover of size k. If ϕ is unsatisfiable then all vertex covers in G have size at least k + 1. Consider the question of approximability of VC and the Cook Reduction.

A Relook at Cook-Levin Reduction Polynomial Time (Cook) Reduction: 3SAT P VC. Start from a 3SAT instance ϕ and construct a graph G and an integer k > 0 such that if ϕ is satisfiable then G has a vertex cover of size k. If ϕ is unsatisfiable then all vertex covers in G have size at least k + 1. Consider the question of approximability of VC and the Cook Reduction. We observe that if ϕ has an assignment that satisfies all the clauses excepting one (or c), then G has a vertex cover of size k 2 (k 2c).

A Relook at Cook-Levin Reduction Polynomial Time (Cook) Reduction: 3SAT P VC. Start from a 3SAT instance ϕ and construct a graph G and an integer k > 0 such that if ϕ is satisfiable then G has a vertex cover of size k. If ϕ is unsatisfiable then all vertex covers in G have size at least k + 1. Consider the question of approximability of VC and the Cook Reduction. We observe that if ϕ has an assignment that satisfies all the clauses excepting one (or c), then G has a vertex cover of size k 2 (k 2c). The instances that we get by such reductions are easy to approximate.

A Relook at Cook-Levin Reduction Polynomial Time (Cook) Reduction: 3SAT P VC. Start from a 3SAT instance ϕ and construct a graph G and an integer k > 0 such that if ϕ is satisfiable then G has a vertex cover of size k. If ϕ is unsatisfiable then all vertex covers in G have size at least k + 1. Consider the question of approximability of VC and the Cook Reduction. We observe that if ϕ has an assignment that satisfies all the clauses excepting one (or c), then G has a vertex cover of size k 2 (k 2c). The instances that we get by such reductions are easy to approximate. The gap between satisfiability and unsatisfiability is small.

Inapproximability: Hardness of Aproximation For finding hardness of approximation ratio of VC, the PCP theorem is used to show the following poly-time reduction. It maps an instance ϕ of SAT to a graph G = (V, E) such that

Inapproximability: Hardness of Aproximation For finding hardness of approximation ratio of VC, the PCP theorem is used to show the following poly-time reduction. It maps an instance ϕ of SAT to a graph G = (V, E) such that if ϕ is satisfiable, G has a vertex cover of size 2 3 V.

Inapproximability: Hardness of Aproximation For finding hardness of approximation ratio of VC, the PCP theorem is used to show the following poly-time reduction. It maps an instance ϕ of SAT to a graph G = (V, E) such that if ϕ is satisfiable, G has a vertex cover of size 2 3 V. if ϕ is not satisfiable, G s smallest vertex cover is of size > α 2 3 V, where α > 1 is a fixed constant.

Inapproximability: Hardness of Aproximation For finding hardness of approximation ratio of VC, the PCP theorem is used to show the following poly-time reduction. It maps an instance ϕ of SAT to a graph G = (V, E) such that if ϕ is satisfiable, G has a vertex cover of size 2 3 V. if ϕ is not satisfiable, G s smallest vertex cover is of size > α 2 3 V, where α > 1 is a fixed constant. Claim If the above reduction is doable, then there is no polynomial time algorithm for vertex cover that achieves an approximation guarantee of α, assuming P NP.

Inapproximability: Hardness of Aproximation Proof

Inapproximability: Hardness of Aproximation Proof An approximation algorithm for VC, having an approximation factor of α or better, will find a cover of size α 2 3 V when given a graph from the first class.

Inapproximability: Hardness of Aproximation Proof An approximation algorithm for VC, having an approximation factor of α or better, will find a cover of size α 2 3 V when given a graph from the first class. Thus, the approximation algorithm will be able to distinguish between the two classes of graphs, leading to a contradiction.

Inapproximability: Hardness of Aproximation Proof An approximation algorithm for VC, having an approximation factor of α or better, will find a cover of size α 2 3 V when given a graph from the first class. Thus, the approximation algorithm will be able to distinguish between the two classes of graphs, leading to a contradiction. The above reduction introduces a gap of factor α in the optimal objective function value achieved by the two classes of graphs. If α = 1, then it is the original vertex cover problem.

Inapproximability: Hardness of Aproximation Proof An approximation algorithm for VC, having an approximation factor of α or better, will find a cover of size α 2 3 V when given a graph from the first class. Thus, the approximation algorithm will be able to distinguish between the two classes of graphs, leading to a contradiction. The above reduction introduces a gap of factor α in the optimal objective function value achieved by the two classes of graphs. If α = 1, then it is the original vertex cover problem. To prove inapproximability results, we need to find a machine model for NP in which accepting computations would be far from rejecting computations.

Outline 1 Introduction to Approximation Algorithm 2

An Alternate View of NP The PCP theorem signifies a new proof system.

An Alternate View of NP The PCP theorem signifies a new proof system. For problems in NP, once a certificate is given, the entire certificate is read and checked for its membership.

An Alternate View of NP The PCP theorem signifies a new proof system. For problems in NP, once a certificate is given, the entire certificate is read and checked for its membership. PCP theorem shows that the certificate can be rewritten so that it can be verified by probabilistically selecting a constant number of locations to examine it.

An Alternate View of NP The PCP theorem signifies a new proof system. For problems in NP, once a certificate is given, the entire certificate is read and checked for its membership. PCP theorem shows that the certificate can be rewritten so that it can be verified by probabilistically selecting a constant number of locations to examine it. This verification satisfies the following condition:

An Alternate View of NP The PCP theorem signifies a new proof system. For problems in NP, once a certificate is given, the entire certificate is read and checked for its membership. PCP theorem shows that the certificate can be rewritten so that it can be verified by probabilistically selecting a constant number of locations to examine it. This verification satisfies the following condition: a correct certificate is always accepted for membership whatever be the random choices of bits of the certificate to be verified.

An Alternate View of NP The PCP theorem signifies a new proof system. For problems in NP, once a certificate is given, the entire certificate is read and checked for its membership. PCP theorem shows that the certificate can be rewritten so that it can be verified by probabilistically selecting a constant number of locations to examine it. This verification satisfies the following condition: a correct certificate is always accepted for membership whatever be the random choices of bits of the certificate to be verified. every certificate that is a wrong one is rejected with a high probability.

A Relook at NP Definition: The Class NP A language L {0, 1} is in NP if there exists a polynomial p : N N and a polynomial-time TM V s.t. for every x {0, 1}, x L π {0, 1} p( x ) such that V (x, π) = 1

A Relook at NP Definition: The Class NP A language L {0, 1} is in NP if there exists a polynomial p : N N and a polynomial-time TM V s.t. for every x {0, 1}, x L π {0, 1} p( x ) such that V (x, π) = 1 Recasting the Definition of NP A language L {0, 1} is in NP if there exists a polynomial p : N N and a polynomial-time TM V s.t. for every x {0, 1}, x L π {0, 1} p( x ) such that V π (x) = 1 x L u {0, 1} p( x ) such that V π (x) = 0 Here, V π denotes a verifier with access to certificate π which is the proof string.

A Relook at NP Changes to the Verifier

A Relook at NP Changes to the Verifier Make the verifier probabilistic.

A Relook at NP Changes to the Verifier Make the verifier probabilistic. The verifier has random access to the proof string π.

A Relook at NP Changes to the Verifier Make the verifier probabilistic. The verifier has random access to the proof string π. Each bit of the proof string can be independently queried by the verifier via a special address tape. The verifier writes i on the address tape to get the bit π[i].

A Relook at NP Changes to the Verifier Make the verifier probabilistic. The verifier has random access to the proof string π. Each bit of the proof string can be independently queried by the verifier via a special address tape. The verifier writes i on the address tape to get the bit π[i]. How big can the proof string π be?

A Relook at NP Changes to the Verifier Make the verifier probabilistic. The verifier has random access to the proof string π. Each bit of the proof string can be independently queried by the verifier via a special address tape. The verifier writes i on the address tape to get the bit π[i]. How big can the proof string π be? As the address size is logarithmic in the proof size, a poly-time verifier can check membership proofs of exponential size.

PCP Verifier Definition: PCP verifer Let L be a language and q, r : N N. We say that L has an (r(n), q(n))-pcp verifier if there is a polynomial-time probabilistic algorithm V satisfying Efficiency: On an input string x {0, 1} n and given random access to a string π {0, 1} of length at most q(n)2 r(n) (the proof), V uses at most r(n) random coins and makes at most q(n) queries, that do not depend upon the responses to any prior queries, to locations of π. Then, it outputs 1 or 0. V π (x) denotes the r.v. representing V s output on input x and with random access to π.

PCP Verifier Definition: PCP verifer Let L be a language and q, r : N N. We say that L has an (r(n), q(n))-pcp verifier if there is a polynomial-time probabilistic algorithm V satisfying Efficiency: On an input string x {0, 1} n and given random access to a string π {0, 1} of length at most q(n)2 r(n) (the proof), V uses at most r(n) random coins and makes at most q(n) queries, that do not depend upon the responses to any prior queries, to locations of π. Then, it outputs 1 or 0. V π (x) denotes the r.v. representing V s output on input x and with random access to π. Completeness: If x L, then there exists a proof π {0, 1} such that Pr[V π (x) = 1] = 1. This string π is the correct proof for x.

PCP Verifier Definition: PCP verifer Let L be a language and q, r : N N. We say that L has an (r(n), q(n))-pcp verifier if there is a polynomial-time probabilistic algorithm V satisfying Efficiency: On an input string x {0, 1} n and given random access to a string π {0, 1} of length at most q(n)2 r(n) (the proof), V uses at most r(n) random coins and makes at most q(n) queries, that do not depend upon the responses to any prior queries, to locations of π. Then, it outputs 1 or 0. V π (x) denotes the r.v. representing V s output on input x and with random access to π. Completeness: If x L, then there exists a proof π {0, 1} such that Pr[V π (x) = 1] = 1. This string π is the correct proof for x. Soundness: If x L, then for every proof π {0, 1}, Pr[V π (x) = 1] 1 2. A language L PCP(r(n), q(n)) if there are some constants c, d > 0 such that L has a (c r(n), d q(n)) PCP verifier.

Some Relations Lemma PCP(r(n), q(n)) NTIME(2 O(r(n)) q(n)).

Some Relations Lemma PCP(r(n), q(n)) NTIME(2 O(r(n)) q(n)). Proof

Some Relations Lemma PCP(r(n), q(n)) NTIME(2 O(r(n)) q(n)). Proof A NDTM can guess the proof in 2 O(r(n)) q(n) time.

Some Relations Lemma PCP(r(n), q(n)) NTIME(2 O(r(n)) q(n)). Proof A NDTM can guess the proof in 2 O(r(n)) q(n) time. For verification, deterministically run the verifier for all 2 O(r(n)) possible choices of its random coin tosses.

Some Relations Lemma PCP(r(n), q(n)) NTIME(2 O(r(n)) q(n)). Proof A NDTM can guess the proof in 2 O(r(n)) q(n) time. For verification, deterministically run the verifier for all 2 O(r(n)) possible choices of its random coin tosses. If the verifier accepts for all these possible coin tosses, then the NDTM accepts.

Some Relations Lemma PCP(r(n), q(n)) NTIME(2 O(r(n)) q(n)). Proof A NDTM can guess the proof in 2 O(r(n)) q(n) time. For verification, deterministically run the verifier for all 2 O(r(n)) possible choices of its random coin tosses. If the verifier accepts for all these possible coin tosses, then the NDTM accepts. Corollary PCP(log n, 1) NTIME(2 O(log n) ) = NP.

The PCP(log n, 1) = NP

The PCP(log n, 1) = NP The other direction The crux of the proof of PCP theorem is to show NP PCP(log n, 1).