CSC 4170 Theory of Computation The class NP Section 7.3.

Slides:



Advertisements
Similar presentations
1 Nondeterministic Space is Closed Under Complement Presented by Jing Zhang and Yingbo Wang Theory of Computation II Professor: Geoffrey Smith.
Advertisements

The class NP Section 7.3 Giorgi Japaridze Theory of Computability.
FORMAL LANGUAGES, AUTOMATA AND COMPUTABILITY
Theory of Computing Lecture 16 MAS 714 Hartmut Klauck.
INHERENT LIMITATIONS OF COMPUTER PROGRAMS CSci 4011.
NL equals coNL Section 8.6 Giorgi Japaridze Theory of Computability.
Probabilistic algorithms Section 10.2 Giorgi Japaridze Theory of Computability.
Computability and Complexity 13-1 Computability and Complexity Andrei Bulatov The Class NP.
P and NP Sipser (pages ). CS 311 Fall Polynomial time P = ∪ k TIME(n k ) … P = ∪ k TIME(n k ) … TIME(n 3 ) TIME(n 2 ) TIME(n)
NP-completeness Sipser 7.4 (pages 271 – 283). CS 311 Mount Holyoke College 2 The classes P and NP NP = ∪ k NTIME(n k ) P = ∪ k TIME(n k )
NP-completeness Sipser 7.4 (pages 271 – 283). CS 311 Fall The classes P and NP NP = ∪ k NTIME(n k ) P = ∪ k TIME(n k )
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.
Time Complexity.
CS Master – Introduction to the Theory of Computation Jan Maluszynski - HT Lecture NP-Completeness Jan Maluszynski, IDA, 2007
Complements of Languages in NP Osama Awwad Department of Computer Science Western Michigan University July 13, 2015.
INHERENT LIMITATIONS OF COMPUTER PROGRAMS CSci 4011.
INHERENT LIMITATIONS OF COMPUTER PROGRAMS CSci 4011.
MCS312: NP-completeness and Approximation Algorithms
חישוביות וסיבוכיות Computability and Complexity Lecture 7 TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: A AAAA.
CSCI 2670 Introduction to Theory of Computing November 29, 2005.
Additional NP-complete problems
1 Design and Analysis of Algorithms Yoram Moses Lecture 11 June 3, 2010
Computability Heap exercise. The class P. The class NP. Verifiers. Homework: Review RELPRIME proof. Find examples of problems in NP.
NP-completeness Section 7.4 Giorgi Japaridze Theory of Computability.
Automata & Formal Languages, Feodor F. Dragan, Kent State University 1 CHAPTER 7 Time complexity Contents Measuring Complexity Big-O and small-o notation.
CSCI 2670 Introduction to Theory of Computing November 17, 2005.
Donghyun (David) Kim Department of Mathematics and Computer Science North Carolina Central University 1 Chapter 7 Time Complexity Some slides are in courtesy.
CS 461 – Nov. 18 Section 7.1 Overview of complexity issues –“Can quickly decide” vs. “Can quickly verify” Measuring complexity Dividing decidable languages.
The Classes L and NL Section 8.4 Giorgi Japaridze Theory of Computability.
Alternation Section 10.3 Giorgi Japaridze Theory of Computability.
CSCI 2670 Introduction to Theory of Computing December 2, 2004.
CSCI 2670 Introduction to Theory of Computing December 7, 2005.
April 13 th Class Notes Hw# 5 will be worth 50 points and it will be posted tonight or tomorrow.
Introduction to NP Instructor: Neelima Gupta 1.
 2005 SDU Lecture15 P,NP,NP-complete.  2005 SDU 2 The PATH problem PATH = { | G is a directed graph that has a directed path from s to t} s t
Theory of Computational Complexity TA : Junichi Teruyama Iwama lab. D3
ICS 353: Design and Analysis of Algorithms NP-Complete Problems King Fahd University of Petroleum & Minerals Information & Computer Science Department.
NP-Completeness A problem is NP-complete if: It is in NP
The NP class. NP-completeness
NP-Completeness (2) NP-Completeness Graphs 4/13/2018 5:22 AM x x x x x
CSE 105 theory of computation
Part VI NP-Hardness.
SUBSET-SUM Instance: A set of numbers denoted S and a target number t.
Theory of Computability
Theory of Computability
CSC 4170 Theory of Computation Turing reducibility Section 6.3.
CSCI 2670 Introduction to Theory of Computing
CSCI 2670 Introduction to Theory of Computing
CS154, Lecture 16: More NP-Complete Problems; PCPs
ICS 353: Design and Analysis of Algorithms
Intro to Theory of Computation
More NP-complete Problems
Theory of Computability
Additional NP-complete problems
CSC 4170 Theory of Computation The class NP Section 7.3.
CS154, Lecture 13: P vs NP.
Theory of Computability
Theory of Computability
Theory of Computability
Time Complexity Classes
CS154, Lecture 16: More NP-Complete Problems; PCPs
Reductions Complexity ©D.Moshkovitz.
Reductions Complexity ©D.Moshkovitz.
CSE 589 Applied Algorithms Spring 1999
Instructor: Aaron Roth
Instructor: Aaron Roth
CSE 105 theory of computation
Theory of Computability
Theory of Computability
Presentation transcript:

CSC 4170 Theory of Computation The class NP Section 7.3

and target node are fixed. The HAMPATH problem 7.3.a A Hamiltonian path in a directed graph G is a directed path that goes through each node exactly once. We consider a special case of this problem where the start node and target node are fixed. HAMPATH = {<G,s,t> | G is a directed graph with a Hamiltonian path from s to t} 1 5 3  PATH? s t  HAMPATH? 4 2 6 1 5 3  HAMPATH? s t 4 2 6

Polynomial verifiability Does this graph have a Hamiltonian path? s t

The COMPOSITES problem COMPOSITES = {x | x=pq for some integers p,q>1} 15  COMPOSITES ? 17  COMPOSITES ? 77  COMPOSITES ? 10403  COMPOSITES ? 997,111,111,911,111,119,131,119,871  COMPOSITES ? COMPOSITES is very easily seen to be verifiable in polynomial time. But only a few years ago it was proven that it is also decidable in polynomial time. The same question, however, remains open for HAMPATH --- one of the seven $1,000,000 questions!

NP in terms of nondeterministic Turing machines Giorgi Japaridze Theory of Computability Definition NP is the class of languages decided by some nondeterministic polynomial time Turing machine.

A k-clique in an undirected graph is a subgraph The CLIQUE problem 7.3.e Giorgi Japaridze Theory of Computability A k-clique in an undirected graph is a subgraph with k nodes, wherein every two nodes are connected by an edge. On the right we see a 5-clique CLIQUE = {<G,k> | G is an undirected graph with a k-clique} Theorem 7.24 CLIQUENP. Proof. Here is a polynomial time NTM N deciding CLIQUE: N = “On input <G,k>: 1. Nondeterministically select a subset c of k nodes of G. 2. Test whether G contains all edges connecting nodes in c. 3. If yes, accept; otherwise reject.”

The SUBSET-SUM problem 7.3.f Giorgi Japaridze Theory of Computability SUBSET-SUM = {<S,t> | S is a multiset of integers and, for some RS, the sum of all elements of R equals t} Theorem 7.25 SUBSET-SUMNP. Proof. Here is a polynomial time NTM N deciding SUBSET-SUM: N = “On input <S,t>: 1. Nondeterministically select a subset c of S. 2. Test whether the elements of c sum up to t. 3. If yes, accept; otherwise reject.”

P vs. NP vs. coNP vs. EXPTIME 7.3.g Giorgi Japaridze Theory of Computability Definitions coNP = {L | L is the complement of some language in NP} EXPTIME = TIME(2n1)  TIME(2n2)  TIME(2n3)  … This is what we know: P NP coNP EXPTIME NP  coNP ≠ EXPTIME P: membership can be decided quickly NP: membership can be verified quickly coNP: membership can be refuted quickly EXPTIME: none of the above This is what we do not know: P = NP? NP = coNP? P = NP  coNP?