CS151 Complexity Theory

Similar documents
1 Formulating The Low Degree Testing Problem

Randomized algorithms

(67902) Topics in Theory and Complexity Nov 2, Lecture 7

On the Unique Games Conjecture

OHJ-2306 Introduction to Theoretical Computer Science, Fall

Combinatorial PCPs with ecient veriers

Introduction to Algorithms. Part 3: P, NP Hard Problems

GREATEST COMMON DIVISOR

Linearity and Group Homomorphism Testing / Testing Hadamard Codes

Lecture 13 - Basic Number Theory.

CSC 373: Algorithm Design and Analysis Lecture 16

Guessing Game: NP-Complete?

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

Private Approximation of Clustering and Vertex Cover

Introduction to Logic in Computer Science: Autumn 2006

2.1 Complexity Classes

1 The Line vs Point Test

Lecture 7: NP-Complete Problems

8 Primes and Modular Arithmetic

Lecture 4: AC 0 lower bounds and pseudorandomness

MATH10040 Chapter 2: Prime and relatively prime numbers

Algorithm Design and Analysis

Arithmetic Coding: Introduction

I. GROUPS: BASIC DEFINITIONS AND EXAMPLES

Lecture 2: Universality

Quantum and Non-deterministic computers facing NP-completeness

1 Domain Extension for MACs

Why? A central concept in Computer Science. Algorithms are ubiquitous.

MATH10212 Linear Algebra. Systems of Linear Equations. Definition. An n-dimensional vector is a row or a column of n numbers (or letters): a 1.

Chapter. NP-Completeness. Contents

Lecture 3: Finding integer solutions to systems of linear equations

Section IV.21. The Field of Quotients of an Integral Domain

How To Find An Optimal Search Protocol For An Oblivious Cell

Borne inférieure de circuit : une application des expanders

Applied Algorithm Design Lecture 5

Lecture 5 - CPA security, Pseudorandom functions

Outline. NP-completeness. When is a problem easy? When is a problem hard? Today. Euler Circuits

Security Aspects of. Database Outsourcing. Vahid Khodabakhshi Hadi Halvachi. Dec, 2012

Page 1. CSCE 310J Data Structures & Algorithms. CSCE 310J Data Structures & Algorithms. P, NP, and NP-Complete. Polynomial-Time Algorithms

Lecture 1: Course overview, circuits, and formulas

Computational Complexity: A Modern Approach. Draft of a book: Dated January 2007 Comments welcome!

Factoring & Primality

NP-Completeness and Cook s Theorem

Quotient Rings and Field Extensions

Lecture 22: November 10

CS154. Turing Machines. Turing Machine. Turing Machines versus DFAs FINITE STATE CONTROL AI N P U T INFINITE TAPE. read write move.

A Working Knowledge of Computational Complexity for an Optimizer

9th Max-Planck Advanced Course on the Foundations of Computer Science (ADFOCS) Primal-Dual Algorithms for Online Optimization: Lecture 1

MATH 22. THE FUNDAMENTAL THEOREM of ARITHMETIC. Lecture R: 10/30/2003

Analysis of Approximation Algorithms for k-set Cover using Factor-Revealing Linear Programs

Complexity Theory. IE 661: Scheduling Theory Fall 2003 Satyaki Ghosh Dastidar

Equations, Inequalities & Partial Fractions

The Classes P and NP

it is easy to see that α = a

Computational Models Lecture 8, Spring 2009

Chapter Load Balancing. Approximation Algorithms. Load Balancing. Load Balancing on 2 Machines. Load Balancing: Greedy Scheduling

0.1 Phase Estimation Technique

Algebraic Computation Models. Algebraic Computation Models

HOMEWORK 5 SOLUTIONS. n!f n (1) lim. ln x n! + xn x. 1 = G n 1 (x). (2) k + 1 n. (n 1)!

Discuss the size of the instance for the minimum spanning tree problem.

Near Optimal Solutions

Today s Topics. Primes & Greatest Common Divisors

Study of algorithms for factoring integers and computing discrete logarithms

Breaking Generalized Diffie-Hellman Modulo a Composite is no Easier than Factoring

Load-Balanced Virtual Backbone Construction for Wireless Sensor Networks

Basics of Counting. The product rule. Product rule example. 22C:19, Chapter 6 Hantao Zhang. Sample question. Total is 18 * 325 = 5850

NOTES ON LINEAR TRANSFORMATIONS

Efficient General-Adversary Multi-Party Computation

5.1 Bipartite Matching

THE TURING DEGREES AND THEIR LACK OF LINEAR ORDER

Lecture 10: CPA Encryption, MACs, Hash Functions. 2 Recap of last lecture - PRGs for one time pads

Matrix Algebra. Some Basic Matrix Laws. Before reading the text or the following notes glance at the following list of basic matrix algebra laws.

Information Theory and Coding Prof. S. N. Merchant Department of Electrical Engineering Indian Institute of Technology, Bombay

! Solve problem to optimality. ! Solve problem in poly-time. ! Solve arbitrary instances of the problem. !-approximation algorithm.

Lecture 11: The Goldreich-Levin Theorem

CSC2420 Fall 2012: Algorithm Design, Analysis and Theory

Succinct Proofs for NP and Spooky Interactions

Tutorial 8. NP-Complete Problems

Approximation Algorithms

Integer factoring and modular square roots

3. Computational Complexity.

The Prime Numbers. Definition. A prime number is a positive integer with exactly two positive divisors.

Chair of Software Engineering. Software Verification. Assertion Inference. Carlo A. Furia

Victor Shoup Avi Rubin. Abstract

Classification - Examples

Making Argument Systems for Outsourced Computation Practical (Sometimes)

Verifiable Delegation of Computation over Large Datasets

The Complexity of Testing Monomials in Multivariate Polynomials

Catalan Numbers. Thomas A. Dowling, Department of Mathematics, Ohio State Uni- versity.

Unique Factorization

NP-complete? NP-hard? Some Foundations of Complexity. Prof. Sven Hartmann Clausthal University of Technology Department of Informatics

a 11 x 1 + a 12 x a 1n x n = b 1 a 21 x 1 + a 22 x a 2n x n = b 2.

7. Show that the expectation value function that appears in Lecture 1, namely

SYMMETRIC ENCRYPTION. Mihir Bellare UCSD 1

ALGEBRAIC APPROACH TO COMPOSITE INTEGER FACTORIZATION

1 Solving LPs: The Simplex Algorithm of George Dantzig

Notes on NP Completeness

P versus NP, and More

Single machine parallel batch scheduling with unbounded capacity

CHAPTER 5. Number Theory. 1. Integers and Division. Discussion

Transcription:

Gap producing reductions CS151 Complexity Theory Lecture 15 May 18, 2015 L 1 f L 2 (min.) rk k Main purpose: r-approximation algorithm for L 2 distinguishes between f() and f(); can use to decide L 1 NP-hard to approximate to within r L 1 f L 2 (max.) k k/r May 18, 2015 2 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: assignment satisfies more than (1 ε) fraction of clauses May 18, 2015 3 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 tice such invalidity May 18, 2015 4 PCP Probabilistically Checkable Proof (PCP) permits vel 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] ½ May 18, 2015 5 May 18, 2015 6 1

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 18, 2015 7 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 te: 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 18, 2015 8 The PCP Theorem Elements of proof: arithmetization of 3-SAT we will do this low-degree test we will state but t prove this self-correction of low-degree polymials we will state but t prove this proof composition we will describe the idea The PCP Theorem Two major components: ( outer verifier ) we will prove this from scratch, assuming lowdegree test, and self-correction of low-degree polymials NP PCP[n 3, 1] ( inner verifier ) we will t prove May 18, 2015 9 May 18, 2015 10 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 18, 2015 11 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 18, 2015 12 2

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 The inner verifier Theorem: NP PCP[n 2, 1] Proof (first steps): 1. Quadratic Equations is NP-hard 2. : 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) May 18, 2015 13 May 18, 2015 14 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 z g i z 1 z 2 g i z 1 z 2 and g out = 1 g i z = 1 g i z 1 z 2 = 0 g i (1-z 1 )(1-z 2 ) = 1 May 18, 2015 15 May 18, 2015 16 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 : F n x n! F 2 includes all quadratic fns of 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 May 18, 2015 17 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 May 18, 2015 18 3

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 May 18, 2015 19 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(±) May 18, 2015 20 Self-correction: 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) May 18, 2015 21 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) = ( ia i u i )( ib i u i ) = i,j a i b j V[i,j] = g (ab T ) May 18, 2015 22 Consistency check: given access to linear functions f = Had(u) and g = Had(V) soundness: claim that if V u u Pr[( ia i u i )( ib i u i ) = i,j a i b j V[i,j] ] 3/4 9 i,j s.t. uu T and V differ in entry (i,j); 9 i s.t. (uu T )b and pick b j last Vb differ in entry i; Pr[(uu T )b Vb] pick 1/2 a i last Pr[aT(uu T )b a T Vb] ½ ½ = ¼ May 18, 2015 23 The outer verifier Theorem: Proof (first steps): define: Polymial Constraint Satisfaction (PCS) problem prove: PCS gap problem is NP-hard May 18, 2015 24 4

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 18, 2015 25 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 18, 2015 26 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: degree d assignment satisfies more than (1- ) fraction of constraints May 18, 2015 27 Lemma: for every constant 1 > ε > 0, the MAX-k-PCS gap problem with t = poly(n) 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 18, 2015 28 t = poly(n) 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 O(log n) random bits to pick a constraint query assignment in O(polylog(n)) locations to determine if it is satisfied completeness 1; soundness 1- (if prover keeps promise to supply degree d polymial) 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 i1 b 1 xi2 b 2 xi3 b 3) e.g. (x 3 x 5 x 2 ) (3,5,2,1,0,1) = 1 May 18, 2015 29 May 18, 2015 30 5

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 :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 18, 2015 31 May 18, 2015 32 :(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 18, 2015 33 6