Computability and Complexity 14-1 Computability and Complexity Andrei Bulatov Cook’s Theorem.

Slides:



Advertisements
Similar presentations
INHERENT LIMITATIONS OF COMPUTER PROGRAMS CSci 4011.
Advertisements

Variants of Turing machines
Cook’s Theorem The Foundation of NP-Completeness.
Lecture 23. Subset Sum is NPC
CSCI 4325 / 6339 Theory of Computation Zhixiang Chen.
Complexity 25-1 Complexity Andrei Bulatov #P-Completeness.
Complexity 11-1 Complexity Andrei Bulatov NP-Completeness.
Complexity 12-1 Complexity Andrei Bulatov Non-Deterministic Space.
Complexity 15-1 Complexity Andrei Bulatov Hierarchy Theorem.
Complexity 11-1 Complexity Andrei Bulatov Space Complexity.
Complexity 13-1 Complexity Andrei Bulatov Hierarchy Theorem.
Computability and Complexity 13-1 Computability and Complexity Andrei Bulatov The Class NP.
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 )
Computability and Complexity 19-1 Computability and Complexity Andrei Bulatov Non-Deterministic Space.
P, NP, PS, and NPS By Muhannad Harrim. Class P P is the complexity class containing decision problems which can be solved by a Deterministic Turing machine.
Computability and Complexity 15-1 Computability and Complexity Andrei Bulatov NP-Completeness.
FORMAL LANGUAGES, AUTOMATA AND COMPUTABILITY Read sections 7.1 – 7.3 of the book for next time.
1 Turing Machines. 2 The Language Hierarchy Regular Languages Context-Free Languages ? ?
1 Polynomial Time Reductions Polynomial Computable function : For any computes in polynomial time.
Computability and Complexity 20-1 Computability and Complexity Andrei Bulatov Class NL.
1 CSE 417: Algorithms and Computational Complexity Winter 2001 Lecture 23 Instructor: Paul Beame.
Computability and Complexity 3-1 Turing Machine Computability and Complexity Andrei Bulatov.
CS Master – Introduction to the Theory of Computation Jan Maluszynski - HT Lecture NP-Completeness Jan Maluszynski, IDA, 2007
Computability and Complexity 10-1 Computability and Complexity Andrei Bulatov Gödel’s Incompleteness Theorem.
Prof. Busch - LSU1 Turing Machines. Prof. Busch - LSU2 The Language Hierarchy Regular Languages Context-Free Languages ? ?
Restricted Satisfiability (SAT) Problem
1 The Cook-Levin Theorem Zeph Grunschlag. 2 Announcements Last HW due Thursday Please give feedback about course at oracle.seas.columbia.edu/wces oracle.seas.columbia.edu/wces.
Machines with Memory Chapter 3 (Part B). Turing Machines  Introduced by Alan Turing in 1936 in his famous paper “On Computable Numbers with an Application.
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.
Theory of Computing Lecture 17 MAS 714 Hartmut Klauck.
NP Complexity By Mussie Araya. What is NP Complexity? Formal Definition: NP is the set of decision problems solvable in polynomial time by a non- deterministic.
CSCI 2670 Introduction to Theory of Computing November 29, 2005.
Complexity 25-1 Complexity Andrei Bulatov Counting Problems.
1 P P := the class of decision problems (languages) decided by a Turing machine so that for some polynomial p and all x, the machine terminates after at.
P Vs NP Turing Machine. Definitions - Turing Machine Turing Machine M has a tape of squares Each Square is capable of storing a symbol from set Γ (including.
NP-completeness Section 7.4 Giorgi Japaridze Theory of Computability.
1 How to establish NP-hardness Lemma: If L 1 is NP-hard and L 1 ≤ L 2 then L 2 is NP-hard.
NP-completeness Class of hard problems. Jaruloj ChongstitvatanaNP-complete Problems2 Outline  Introduction  Problems and Languages Turing machines and.
Strings Basic data type in computational biology A string is an ordered succession of characters or symbols from a finite set called an alphabet Sequence.
Chapter 11 Introduction to Computational Complexity Copyright © 2011 The McGraw-Hill Companies, Inc. Permission required for reproduction or display. 1.
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.
1 Turing Machines and Equivalent Models Section 13.1 Turing Machines.
Complexity 24-1 Complexity Andrei Bulatov Interactive Proofs.
NP-complete Languages
CSCI 2670 Introduction to Theory of Computing December 2, 2004.
CSCI 2670 Introduction to Theory of Computing December 7, 2005.
CSC 3130: Automata theory and formal languages Andrej Bogdanov The Chinese University of Hong Kong NP-complete.
Given this 3-SAT problem: (x1 or x2 or x3) AND (¬x1 or ¬x2 or ¬x2) AND (¬x3 or ¬x1 or x2) 1. Draw the graph that you would use if you want to solve this.
Complexity 24-1 Complexity Andrei Bulatov Counting Problems.
Complexity ©D.Moshkovitz 1 Our First NP-Complete Problem The Cook-Levin theorem A B C.
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.
Theory of Computational Complexity Yuji Ishikawa Avis lab. M1.
1 8.4 Extensions to the Basic TM Extended TM’s to be studied: Multitape Turing machine Nondeterministic Turing machine The above extensions make no increase.
1 Design and Analysis of Algorithms Yoram Moses Lecture 13 June 17, 2010
 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
1 Turing Machines. 2 The Language Hierarchy Regular Languages Context-Free Languages ? ?
NP-Completeness A problem is NP-complete if: It is in NP
Busch Complexity Lectures: Turing Machines
Busch Complexity Lectures: Reductions
Reductions Costas Busch - LSU.
NP-complete problems The Chinese University of Hong Kong Fall 2008
Lecture 24 NP-Complete Problems
Space Complexity Costas Busch - LSU.
CS154, Lecture 13: P vs NP.
Our First NP-Complete Problem
NP and NP completeness 姚鹏晖
CSE 589 Applied Algorithms Spring 1999
Instructor: Aaron Roth
Presentation transcript:

Computability and Complexity 14-1 Computability and Complexity Andrei Bulatov Cook’s Theorem

Computability and Complexity 14-2 Cook – Levin Theorem Theorem (Cook – Levin) Satisfiability is NP-complete Theorem (Cook – Levin) Satisfiability is NP-complete Definition A language L is said to be NP -complete if L  NP and, for any A  NP, A  L Definition A language L is said to be NP -complete if L  NP and, for any A  NP, A  L

Computability and Complexity 14-3 Proof (Main Idea) Let A be a language from NP Then there is a polynomial time nondeterministic Turing Machine NT For every input x for NT, we build a propositional formula encoding the computation NT(x) such that satisfying assignments to correspond exactly to paths in NT(x) If is short enough and can be constructed in polynomial time, we get the required polynomial time reduction

Computability and Complexity 14-4 Assumptions about NT Assume that NT uses: h+1 symbols (where is the blank symbol) k+1 states (where is the accepting state) l instructions — distinct possible transitions Assume that every path in NT(x) has length (We can extend every shorter path assuming that no further action is taken. We can cut longer paths, because they make no difference whether x is going to be accepted or not) Assume that the tape head never moves to the left from the leftmost symbol of the input

Computability and Complexity 14-5 Variables We use Boolean variables to specify exactly the possible configurations of the machine at each time : is true if and only if s -th cell contains symbol at time t is true if and only if NT in state at time t is true if and only if tape head on s -th cell at time t is true if and only if the machine implements instruction at time t (there are of them)

Computability and Complexity 14-6 Formula Now we write the formula A says each cell at each time contains exactly one symbol (Remember that ) (there are clauses in A )

Computability and Complexity 14-7 B says the tape head scans exactly one cell at each time C says that NT is in exactly one state D says that NT implements exactly one instruction at each step E says that at time 1, the input x is on the first n cells of the tape, the head is at position 1, and the state is If then

Computability and Complexity 14-8 Define F, G, H and J as follows for each instruction F says that is a valid transition or equivalently in CNF G specifies the effect on the state

Computability and Complexity 14-9 H specifies that the correct symbol is written J specifies that the correct movement is made where d(L) = –1, d(R) = 1, d(S) = 0 Finally, K says that the accepting state is entered

Computability and Complexity Conclusions We can construct formula in polynomial time (Note that the construction is only possible “in principle”, since the a will not necessarily be known) If formula is satisfiable then the values of the variables specify an accepting computation for x Conversely, if there is an accepting computation for x, then the corresponding values of the variables will satisfy the formula Hence, QED