1 INTRODUCTION NP, NP-hardness Approximation PCP.

Slides:



Advertisements
Similar presentations
NP-complete and NP-hard problems Transitivity of polynomial-time many-one reductions Concept of Completeness and hardness for a complexity class Definition.
Advertisements

Lecture 21 NP-complete problems
Complexity class NP Is the class of languages that can be verified by a polynomial-time algorithm. L = { x in {0,1}* | there exists a certificate y with.
1 NP-Complete Problems. 2 We discuss some hard problems:  how hard? (computational complexity)  what makes them hard?  any solutions? Definitions 
Introduction to PCP and Hardness of Approximation Dana Moshkovitz Princeton University and The Institute for Advanced Study 1.
Complexity ©D.Moshkovits 1 Hardness of Approximation.
Complexity 16-1 Complexity Andrei Bulatov Non-Approximability.
CSC5160 Topics in Algorithms Tutorial 2 Introduction to NP-Complete Problems Feb Jerry Le
Complexity 15-1 Complexity Andrei Bulatov Hierarchy Theorem.
Complexity 18-1 Complexity Andrei Bulatov Probabilistic Algorithms.
Computability and Complexity 13-1 Computability and Complexity Andrei Bulatov The Class NP.
Computability and Complexity 15-1 Computability and Complexity Andrei Bulatov NP-Completeness.
NP-complete and NP-hard problems Transitivity of polynomial-time many-one reductions Definition of complexity class NP –Nondeterministic computation –Problems.
The Counting Class #P Slides by Vera Asodi & Tomer Naveh
NP-Complete Problems Reading Material: Chapter 10 Sections 1, 2, 3, and 4 only.
1 Polynomial Time Reductions Polynomial Computable function : For any computes in polynomial time.
NP-Complete Problems Problems in Computer Science are classified into
Computability and Complexity 20-1 Computability and Complexity Andrei Bulatov Class NL.
NP-complete and NP-hard problems
NP-Completeness NP-Completeness Graphs 4/17/2017 4:10 AM x x x x x x x
CS Master – Introduction to the Theory of Computation Jan Maluszynski - HT Lecture NP-Completeness Jan Maluszynski, IDA, 2007
Chapter 11: Limitations of Algorithmic Power
Toward NP-Completeness: Introduction Almost all the algorithms we studies so far were bounded by some polynomial in the size of the input, so we call them.
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.Moshkovits 1 Hardness of Approximation.
1 Slides by Asaf Shapira & Michael Lewin & Boaz Klartag & Oded Schwartz. Adapted from things beyond us.
Hardness Results for Problems
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.
Theory of Computation, Feodor F. Dragan, Kent State University 1 NP-Completeness P: is the set of decision problems (or languages) that are solvable in.
Computational Complexity Theory Lecture 2: Reductions, NP-completeness, Cook-Levin theorem Indian Institute of Science.
CSC 413/513: Intro to Algorithms NP Completeness.
CSCI 2670 Introduction to Theory of Computing November 29, 2005.
CSCI 2670 Introduction to Theory of Computing December 1, 2004.
Week 10Complexity of Algorithms1 Hard Computational Problems Some computational problems are hard Despite a numerous attempts we do not know any efficient.
CSE 024: Design & Analysis of Algorithms Chapter 9: NP Completeness Sedgewick Chp:40 David Luebke’s Course Notes / University of Virginia, Computer Science.
NP-COMPLETENESS PRESENTED BY TUSHAR KUMAR J. RITESH BAGGA.
EMIS 8373: Integer Programming NP-Complete Problems updated 21 April 2009.
CSCI 3160 Design and Analysis of Algorithms Tutorial 10 Chengyu Lin.
1 The Theory of NP-Completeness 2 Cook ’ s Theorem (1971) Prof. Cook Toronto U. Receiving Turing Award (1982) Discussing difficult problems: worst case.
1 Design and Analysis of Algorithms Yoram Moses Lecture 11 June 3, 2010
1 Chapter 34: NP-Completeness. 2 About this Tutorial What is NP ? How to check if a problem is in NP ? Cook-Levin Theorem Showing one of the most difficult.
NP-COMPLETE PROBLEMS. Admin  Two more assignments…  No office hours on tomorrow.
1. 2 Lecture outline Basic definitions: Basic definitions: P, NP complexity classes P, NP complexity classes the notion of a certificate. the notion of.
Lecture 6 NP Class. P = ? NP = ? PSPACE They are central problems in computational complexity.
Non-Approximability Results. Summary -Gap technique -Examples: MINIMUM GRAPH COLORING, MINIMUM TSP, MINIMUM BIN PACKING -The PCP theorem -Application:
Lecture 12 P and NP Introduction to intractability Class P and NP Class NPC (NP-complete)
1 How to establish NP-hardness Lemma: If L 1 is NP-hard and L 1 ≤ L 2 then L 2 is NP-hard.
CS6045: Advanced Algorithms NP Completeness. NP-Completeness Some problems are intractable: as they grow large, we are unable to solve them in reasonable.
Lecture 25 NP Class. P = ? NP = ? PSPACE They are central problems in computational complexity.
CSE 6311 – Spring 2009 ADVANCED COMPUTATIONAL MODELS AND ALGORITHMS Lecture Notes – Feb. 3, 2009 Instructor: Dr. Gautam Das notes by Walter Wilson.
Chapter 11 Introduction to Computational Complexity Copyright © 2011 The McGraw-Hill Companies, Inc. Permission required for reproduction or display. 1.
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
CSCI 2670 Introduction to Theory of Computing December 2, 2004.
CSCI 2670 Introduction to Theory of Computing December 7, 2005.
COMPLEXITY. Satisfiability(SAT) problem Conjunctive normal form(CNF): Let S be a Boolean expression in CNF. That is, S is the product(and) of several.
The NP class. NP-completeness Lecture2. The NP-class The NP class is a class that contains all the problems that can be decided by a Non-Deterministic.
NP-Completeness A problem is NP-complete if: It is in NP
The NP class. NP-completeness
P & NP.
Probabilistic Algorithms
NP-Completeness Yin Tat Lee
Computability and Complexity
Computational Complexity
Chapter 11 Limitations of Algorithm Power
NP-completeness The Chinese University of Hong Kong Fall 2008
NP-Completeness Yin Tat Lee
Lecture 23 NP-Hard Problems
Presentation transcript:

1 INTRODUCTION NP, NP-hardness Approximation PCP

2 Decision, Optimization Problems zA decision problem is a Boolean function ƒ(X), or alternatively a language L  {0, 1} * comprising all strings for which ƒ is TRUE :L = { X  {0, 1} * | ƒ(X) } zAn optimization problem is a function ƒ(X, Y) which, given X, is to be maximized (or minimized) over all possible Y’s: max y [ ƒ(X, Y) ] zA threshold version of max-ƒ(X, Y) is the language L t of all strings X for which there exists Y such that ƒ(X, Y)  t transforming an optimization problem into decision (transforming an optimization problem into decision)

3 The Class NP The classical definition of the class NP is as follows We say that a language L  {0, 1} * belongs to the class NP, if there exists a Turing machine V L [referred to as a verifier] such that X  L  there exists a witness Y such that V L (X, Y) accepts, in time |X| O(1) That is, V L can verify a membership-proof of X in L in time polynomial in the length of X

4 NP-Hardness zA language L is said to be NP-hard if an efficient (polynomial-time) procedure for L can be utilized to obtain an efficient procedure for any NP-language zThat is referred to as the more general, Cook reduction. An efficient algorithm, translating any NP problem to a single instance of L -- thereby showing L NP-hard -- is referred to as Karp reduction.

5 Motivation Proving a set L to be NP-hard implies that L, for all practical purposes, is unsolvable

6 Characterizing NP Thm [Cook, Levin]: For any L  NP there is an algorithm that, on input X, constructs in time |X| O(1), a set of Boolean functions, local-tests  L,X = {  1  l } over variables y 1,...,y m s.t.:  each of  1  l depends on o(1) variables  X  L  there exists an assignment A: { y 1,..., y m }  { 0, 1 } satisfying all    l [ note that m and l must be at most polynomial in |X| ]

7 NP-hard Problems Def: MAX-CLIQUE of a graph G - denoted  (G) - is the size of the largest complete-subgraph of G Thm[Cook, Karp]: MAX-CLIQUE is NP-hard Proof: Given  above we construct a graph G  whose MAX-CLIQUE determines whether  is satisfiable or not

8 GGGG has one vertex for each  i   and an assignment satisfying  i  1.  i..  l         All assignments to ’s variables All assignments to  i ’s variables Not satisfying Not satisfying  i Satisfying Satisfying  i

9 GGGG two vertexes connected if assignments consistent  1...  i..  l         Consistent values Different value same variable

10 Lemma:  (G  ) = l  X  L  Consider an assignment A satisfying For each i consider A's restriction to  i ‘s variables The corresponding l vertexes form a clique in G   Any clique of size m in G  implies an assignment satisfying m of  1  l

11 Approximation We’ve just seen that computing MAX-CLIQUE is NP-hard How about approximating it ?? [ I.e., coming up with a number that deviate from it by at most some specified (small as possible) factor ]

12 Strong, PCP Characterizations of NP Thm[AS,ALMSS]: For any L  NP there is a polynomial-time algorithm that, on input X, outputs  L,X = {    l } over y 1,...,y m s.t.  each of    l depends on O(1) variables  X  L  assignment A: { y 1,..., y m }  { 0, 1 } satisfying all  L,X  X  L  assignment A: { y 1,..., y m }  { 0, 1 } satisfies < ½ fraction of  L,X

13 Probabilistically-Checkable- Proofs zHence, Cook-Levin theorem states that a verifier can efficiently verify membership- proofs for any NP language zPCP characterization of NP, in contrast, states that a membership-proof can be verified probabilistically yby choosing randomly one local-test, yaccessing the small set of variables it depends on, yaccept or reject accordingly zerroneously accepting a non-member only with small probability

14 Gap Problems zA gap-problem is [can be defined similarly for minimization] a maximization [can be defined similarly for minimization] problem ƒ(X, Y), and two thresholds t 1 > t 2 X must be accepted ifmax Y [ ƒ(X, Y) ]  t 1 X must be rejected ifmax Y [ ƒ(X, Y) ]  t 2 [don’t care] other X’s may be accepted or rejected [don’t care] [almost a decision problem, relates to approximation]

15 Reducing gap-Problems to Approximation Problems zUsing an efficient approximation algorithm for ƒ(X, Y) to within a factor g, one can efficiently solve the corresponding gap problem gap-ƒ(X, Y), as long as t 1 / t 2 > g 2 zSimply run the approximation algorithm. The outcome clearly determines which side of the gap the given input falls in. [ Hence, proving a gap problem NP-hard translates to its approximation version, for appropriate factors ]

16 gap-SAT zDef: gap-SAT[D, v,  ] is as follows:  instance: a set  = {    l } of Boolean- functions (local-tests) over variables y 1,...,y m of range 2 V  locality: each of  1  l depends on at most D variables  Maximum-Satisfied-Fraction is the fraction of  satisfied by an assignment A: { y 1,..., y m }  2 v if this fraction 4 = 1  accept 8 <   reject zD, v and  may be a function of l

17 The PCP Hierarchy Def: L  PCP[ D, V,  ] if L is efficiently reducible to gap-SAT[ D, V,  ]  Thm [AS,ALMSS] NP  PCP[ O(1), 1, ½] [ The PCP characterization theorem above ]  Thm [ RaSa ] NP  PCP[ O(1), m, 2 -m ] for m  log c n for some c > 0  Thm [ DFKRS ]NP  PCP[ O(1), m, 2 -m ] for m  log c n for any c > 0  Conjecture [BGLR] NP  PCP[ O(1), m, 2 -m ] for m  log n Focus of the rest of this presentation

18 Optimal Characterization zOne cannot expect the error-probability to be less than exponentially small in the number of bits each local-test looks at ysince a random assignment would make such a fraction of the local-tests satisfied zOne cannot hope for smaller than polynomially small error-probability ysince it would imply less than one local-test satisfied, hence each local-test, being rather easy to compute, determines completely the outcome [ the BGLR conjecture is hence optimal in that respect ]

19 Approximating MAX-CLIQUE is NP-hard Apply the same reduction above from SAT to MAX-CLIQUE (yielding G  ), to the gap-SAT of any of the above theorems The outcome is a gap-CLIQUE problem, which is therefore NP-hard for the corresponding factor We may conclude that  approximating MAX-CLIQUE is NP-hard