CS151 Complexity Theory. Lecture 15 May 22, 2017

Similar documents
Umans Complexity Theory Lectures

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

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

Complexity Classes IV

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

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

CS21 Decidability and Tractability

Essential facts about NP-completeness:

CS151 Complexity Theory. Lecture 13 May 15, 2017

Advanced Algorithms (XIII) Yijia Chen Fudan University

Lecture 15: A Brief Look at PCP

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

PCP Theorem and Hardness of Approximation

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

Hardness of Approximation

Lecture Hardness of Set Cover

Lecture 19: Interactive Proofs and the PCP Theorem

CS 151 Complexity Theory Spring Solution Set 5

Complexity Classes V. More PCPs. Eric Rachlin

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

CS154, Lecture 18: 1

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

15-451/651: Design & Analysis of Algorithms October 31, 2013 Lecture #20 last changed: October 31, 2013

NP-Complete Reductions 1

INAPPROX APPROX PTAS. FPTAS Knapsack P

NP-Completeness. Andreas Klappenecker. [based on slides by Prof. Welch]

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

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

NP-Complete problems

Easy Problems vs. Hard Problems. CSE 421 Introduction to Algorithms Winter Is P a good definition of efficient? The class P

1 The Low-Degree Testing Assumption

NP-Complete Reductions 2

Probabilistically Checkable Proofs. 1 Introduction to Probabilistically Checkable Proofs

CS151 Complexity Theory. Lecture 14 May 17, 2017

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

Lecture 18: More NP-Complete Problems

1 Probabilistically checkable proofs

Lecture 16 November 6th, 2012 (Prasad Raghavendra)

CS151 Complexity Theory. Lecture 6 April 19, 2017

Lecture 10: Hardness of approximating clique, FGLSS graph

Approximation Preserving Reductions

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

CS21 Decidability and Tractability

Welcome to... Problem Analysis and Complexity Theory , 3 VU

DRAFT. PCP and Hardness of Approximation. Chapter 19

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

Approximating MAX-E3LIN is NP-Hard

Introduction to Complexity Theory

1. Introduction Recap

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

1 Randomized Computation

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

CSC 5170: Theory of Computational Complexity Lecture 9 The Chinese University of Hong Kong 15 March 2010

BBM402-Lecture 11: The Class NP

Combinatorial Optimization

Solution of Exercise Sheet 12

PCP Course; Lectures 1, 2

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

A An Overview of Complexity Theory for the Algorithm Designer

Lecture 13, Fall 04/05

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

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

Knapsack. Bag/knapsack of integer capacity B n items item i has size s i and profit/weight w i

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

Polynomial-time reductions. We have seen several reductions:

Lecture 12 Scribe Notes

NP-completeness. Chapter 34. Sergey Bereg

DD2446 Complexity Theory: Problem Set 4

Intro to Theory of Computation

Lecture 15 - NP Completeness 1

CS151 Complexity Theory

NP-Completeness. ch34 Hewett. Problem. Tractable Intractable Non-computable computationally infeasible super poly-time alg. sol. E.g.

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

Lecture 18: Inapproximability of MAX-3-SAT

NP-Completeness. Subhash Suri. May 15, 2018

Almost transparent short proofs for NP R

NP-Completeness. NP-Completeness 1

Topics in Complexity

Lecture 17 November 8, 2012

CS Fall 2011 P and NP Carola Wenk

Umans Complexity Theory Lectures

SAT, NP, NP-Completeness

1 Primals and Duals: Zero Sum Games

1 Reductions and Expressiveness

NP-Completeness I. Lecture Overview Introduction: Reduction and Expressiveness

Lecture 11 October 7, 2013

Basic Probabilistic Checking 3

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

Correctness of Dijkstra s algorithm

Time and space classes

Introduction. Pvs.NPExample

Lecture 20: conp and Friends, Oracles in Complexity Theory

Chapter 34: NP-Completeness

Design and Analysis of Algorithms

Lecture 18: P & NP. Revised, May 1, CLRS, pp

NP-COMPLETE PROBLEMS. 1. Characterizing NP. Proof

Lecture 26: Arthur-Merlin Games

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

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

Transcription:

CS151 Complexity Theory Lecture 15

New topic(s) Optimization problems, Approximation Algorithms, and Probabilistically Checkable Proofs

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

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

Approximation Algorithms Example approximation algorithm: Recall: Vertex Cover (VC): given a graph G, what is the smallest subset of vertices that touch every edge? NP-complete

Approximation Algorithms Approximation algorithm for VC: pick an edge (x, y), add vertices x and y to VC discard edges incident to x or y; repeat. Claim: approximation ratio is 2. Proof: an optimal VC must include at least one endpoint of each edge considered therefore 2*opt actual

Approximation Algorithms diverse array of ratios achievable some examples: (min) Vertex Cover: 2 MAX-3-SAT (find assignment satisfying largest # clauses): 8/7 (min) Set Cover: ln n (max) Clique: n/log 2 n (max) Knapsack: (1 + ε) for any ε > 0

Approximation Algorithms (max) Knapsack: (1 + ε) for any ε > 0 called Polynomial Time Approximation Scheme (PTAS) algorithm runs in poly time for every fixed ε>0 poor dependence on ε allowed If all NP optimization problems had a PTAS, almost like P = NP (!)

Approximation Algorithms A job for complexity: How to explain failure to do better than ratios on previous slide? just like: how to explain failure to find polytime algorithm for SAT... first guess: probably NP-hard what is needed to show this? gap-producing reduction from NPcomplete problem L 1 to L 2

Approximation Algorithms gap-producing reduction from NPcomplete problem L 1 to L 2 no yes f rk k opt L 1 L 2 (min. problem)

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)

Gap producing reductions no yes L 1 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 f L 2 (min.) no yes rk k yes no L 1 f L 2 (max.) yes no k k/r

Gap preserving reductions gap-producing reduction difficult (more later) but gap-preserving reductions easier yes Warning: many reductions not gap-preserving yes rk f r k k k no no L 1 (min.) L 2 (min.)

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 constants PTAS for MAXSNP-complete problem iff PTAS for all problems in MAXSNP

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

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

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 < ½

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

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

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] ½

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.

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.

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

The PCP Theorem Two major components: NP PCP[log n, polylog n] ( outer verifier ) we will prove this from scratch, assuming lowdegree test, and self-correction of low-degree polynomials NP PCP[n 3, 1] ( inner verifier ) we will not prove

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

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

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 many details omitted PCP[log n, 1]

The inner verifier Theorem: NP PCP[n 2, 1] Proof (first steps): 1. Quadratic Equations is NP-hard 2. PCP for QE: proof = all quadratic functions of a soln. x verification = check that a random linear combination of equations is satisfied by x (if prover keeps promise to supply all quadratic fns of x)

Quadratic Equations quadratic equation over F 2 : i<j a i,j X i X j + i b i X i + c = 0 language QUADRATIC EQUATIONS (QE) = { systems of quadratic equations over F 2 that have a solution (assignment to the X variables) }

Quadratic Equations Lemma: QE is NP-complete. Proof: clearly in NP; reduce from CIRCUIT SAT circuit C an instance of CIRCUIT SAT QE variables = variables + gate variables g i g i g i and g out = 1 z z 1 z 2 z 1 z 2 g i z = 1 g i z 1 z 2 = 0 g i (1-z 1 )(1-z 2 ) = 1

Quadratic Functions Code intended proof: F the field with 2 elements given x 2 F n, a solution to instance of QE f x : F n! F 2 all linear functions of x f x (a) = i a i x i g x : F n x n! F 2 includes all quadratic fns of x g x (A) = i, j A[i,j]x i x j KEY: can evaluate any quadratic function of x with a single evaluation of f x and g x

PCP for QE If prover keeps promise to supply all quadratic fns of x, a solution of QE instance Verifier s action: query a random linear combination R of the equations of the QE instance Completeness: obvious Soundness: x fails to satisfy some equation; imagine picking coeff. for this one last Pr[x satisfies R] = 1/2

PCP for QE x 2 F n soln f x (a) = i a i x i Had(x) g x (A) = i, j A[i,j]x i x j Had(x x) To enforce promise, verifier needs to perform: linearity test: verify f, g are (close to) linear self-correction: access the linear f, g that are close to f, g [so f = Had(u) and g = Had(V)] consistency check: verify V = u u

PCP for QE x 2 F n soln f x (a) = i a i x i Had(x) g x (A) = i, j A[i,j]x i x j Had(x x) Linearity test: given access to h:f m! F pick random a,b; check if h(a) + h(b) = h(a+b); repeat O(1) times do this for functions f and g supplied by prover Theorem [BLR]: h linear)prob. success = 1; prob. success 1 ± ) 9 linear h s.t. Pr a [h (a) = h(a)] 1 O(±)

Self-correction: PCP for QE x 2 F n soln f x (a) = i a i x i Had(x) g x (A) = i, j A[i,j]x i x j Had(x x) given access to h:f m!f close to linear h ; i.e., Pr a [h (a) = h(a)] 1 O(±) to access h (a), pick random b; compute h(b) + h(a+b) with prob. at least 1 2 O(±), h(b) = h (b) and h(a+b) = h (a+b); hence we compute h (a)

PCP for QE x 2 F n soln f x (a) = i a i x i Had(x) g x (A) = i, j A[i,j]x i x j Had(x x) Consistency check: given access to linear functions f = Had(u) and g = Had(V) pick random a, b 2 F n ; check that f (a)f (b) = g (ab T ) completeness: if V = u u f (a)f (b) = ( i a i u i )( i b i u i ) = i,j a i b j V[i,j] = g (ab T )

PCP for QE x 2 F n soln f x (a) = i a i x i Had(x) Consistency check: given access to linear functions f = Had(u) and g = Had(V) soundness: claim that if V u u g x (A) = i, j A[i,j]x i x j Had(x x) Pr[( i a i u i )( i b i u i ) = i,j a i b j V[i,j] ] 3/4 Pr[(uu T )b Vb] 1/2 9 i,j s.t. uu T and V differ in entry (i,j); 9 i s.t. (uu pick b j last T )b and Vb differ in entry i; pick a i last Pr[aT(uu T )b a T Vb] ½ ½ = ¼