11. Tractability and Decidability
|
|
- Eugene Haynes
- 6 years ago
- Views:
Transcription
1 11. Tractability and Decidability Frank Stephan April 1, 2014
2 Introduction Computational Complexity In 1844 Gabriel Lamé studied and analysed the running time of Euclid s algorithm. In 1982, Stephen Cook received the Turing Award for his contribution to complexity of computation. In 1985 Richard Karp received the Turing Award for his contributions to the theory of algorithms.
3 Introduction Complexity Theory The foundations [for complexity theory] were laid in the 1930s by a group of logicians, including Alan Turing, who were concerned with the existence or nonexistence of automatic procedures for deciding whether mathematical statements were true or false. Karp s Turing Award Lecture, Combinatorics, Complexity, and Randomness (
4 R Decidability A problem is decidable if there exists an algorithm that can solve all instances of the problem. We call R the class of all decidable problems. Undecidability A problem is undecidable if there does not exist an algorithm that can solve all instances of the problem. There are many more Problems than Algorithms Most problems are undecidable.
5 R Problems R
6 R Cardinality The set has 0 elements. The set {Cantor} and the set {Turing} have 1 element. The set {Cantor, Hilbert, Gödel} and the set {Turing, VonNeumann, Karp} have 3 elements. Natural Numbers N = {0, 1, 2, 3, 4, } is the set of possible cardinalities of finite sets.
7 R Infinity There are infinitely many natural numbers. The number of natural numbers is a not a natural number. There are ℵ 0 (pronounce aleph-naught, aleph-null, or aleph-zero) (countably many, countably infinite) natural numbers (they are countable). ℵ 0
8 R Countability The set of odd natural numbers is {1, 3, 5, 7, }. There are as many odd numbers as there are natural numbers. There are ℵ 0 (countably many) natural numbers. Countability m odd = 2 n + 1 The set of rational numbers is {0, 1 3, 1 2, 1, 5 4, }. There are as many rational numbers as there are natural numbers. There are ℵ 0 (countably many) natural numbers.
9 R
10 R Sets of Sets The set {1, 2, 3} contains 2 3 = 8 subsets of numbers:, {1}, {2}, {3}, {1, 2}, {1, 3}, {2, 3}, {1, 2, 3} Sets of Natural Numbers How many sets of natural numbers are there? 2 ℵ 0 2 ℵ 0 = ℵ 1? (Continuum Hypothesis)
11 R Sets of Natural Numbers Let us represent a set of natural number as a (infinite) vector. =< 0, 0, 0, 0, 0, 0, 0,... > {0, 1} =< 1, 1, 0, 0, 0, 0, 0,... > {2, 4, 5} =< 0, 0, 1, 0, 1, 1, 0,... >
12 R set /number {0} {1, 2} {4} {0, 1}
13 R set /number {0} {1, 2} {4} {0, 1}
14 R Diagonal Argument Let us select a set A which differs from the diagonal everywhere: < 0, 0, 1, 0,, > A =< 1, 1, 0, 1,, > The new set A is distinct from all rows. Proof If there was a row identical to A, say the n th row, then the n th entry of A would be identical to the n th entry in the n th row, although A differs at the n th entry from the n th entry of the diagonal. Thus A does not occur in the list.
15 R Algorithms are Countable An algorithm can be represented by pseudo-code, by a program in JavaScript, by the program input to a universal Turing machine, namely, by a finite string of 1s and 0s. An algorithm is a natural number. Problems are Uncountable A decision problem is a function from a set of inputs to the set {yes, no}. There are ℵ 0 possible inputs and 2 ℵ 0 many possible answer-vectors to these inputs. A decision problem is the subset of those possible inputs which have yes as an answer. There are 2 ℵ 0 problems. There are 2 ℵ 0 problems, 2 ℵ 0 subsets of N and 2 ℵ 0 real numbers.
16 R Example: Primality The primality problem seeks to decide whether a natural number is a prime number. An algorithm is a natural number: it can be represented by the finite sequence of bits of its JavaScript code. < 1, 1, 0, 1, 1, 0, 0, 1, 1, 0,, 1, 0 > A problem is a real number: for each natural number, the following infinite vector indicates whether it is a prime or not. < 0, 0, 1, 1, 0, 1, 0, 1, 0, 0, 0, >
17 R Do we Know Undecidable Problems? The halting problem, Post correspondence problem, Wang tiles, Diophantine equations, etc.
18 R The Halting Problem is Undecidable There is no algorithm that can decide whether an algorithm halts on every input. Proof (by Turing) Assume that there exists a function Halt(F, i) that decides whether the function F halts on input i. It returns 1 if F halts on input i, and 0 otherwise. Let us consider the function X below. If we call X(X), the call will loop forever if and only if Halt says that X with input X halts. This is a contradiction. 1 f u n c t i o n X( i ) { 2 i f ( H a l t ( i, i ) == 0) then r e t u r n 0 ; 3 e l s e l o o p f o r e v e r ; }
19 R Post Correspondence Problem Given a finite list of pairs of words, is there a sequence of any length of these pairs possibly repeated that yields the same sentence on the first and second line? ( ) ( ) ( ) ( ) ( ) ( ) s Amer a ic il l Po Pos wa an s t ( ) ( ) ( ) ( ) ( ) Em Emi t was n an A l merican logici og
20 R Wang Tiles A Wang tile is square split into four equilateral triangles painted in colors. As proposed by Wang Hao in 1961, the Wang tiles problem is the question whether a finite set of tiles can tile the plane such that adjacent triangles from different tiles have the same color. Wang thought the problem was decidable. In 1966, Robert Berger proved the problem is undecidable.
21 R Diophantine equations A Diophantine equation is a multivariable polynomial equation whose solutions should be integers. Deciding whether any given Diophantine equation has a solution is David Hilbert s tenth problem. In 1970, Yuri Matiyasevich proved that it is undecidable. Fermat s Last Theorem Andrew Wiles proved in 1995, as Pierre de Fermat suspected in 1637, that there is no positive integer solution to x n + y n = z n except for n = 1 and for n = 2 (Pythagorean triples).
22 R Is everything solvable? Time (1984): Put the right kind of software into a computer and it will do whatever you want it to. There may be limits on what you can do with the machines themselves but there are no limits on what you can do with software. David Harel (1993 and 2012): Bullshit!
23 P Karps Turing Award Citation For his continuing contributions to the theory of algorithms including the development of efficient algorithms for network flow and other combinatorial optimization problems, the identification of polynomial-time computability with the intuitive notion of algorithmic efficiency
24 P P P is the set of problems that can be solved in polynomial time (O(p(n)) where p(n) is a polynomial). Examples Searching a list, finding peaks, computing the maximum, sorting, Euclid algorithm, primality testing (2004 by Manindra Agrawal Neeraj Kayal and Nitin Saxena), circuit value problem, context-free grammar membership (membership in a language recognised by some push down automaton), some famous data-compression algorithms (Lempel-Ziv-Welch, 1978 and 1984).
25 P Problems R P
26 P Tractability The Cobham thesis proposes to call the problems in P tractable and the others untractable. Alan Cobham discussed the concept of the complexity class P in a 1965 paper.
27 EXP Combinatorial Explosion The input to the program was a set of Boolean formulas specifying how the outputs of the circuit were to depend on the inputs: the program was supposed to generate a circuit to do the job using a minimum number of logic gates. [...] The number of circuits that the program had to comb through grew at a furious rate as the number of input variables increased Combinatorial Explosion and Disillusionment Today, our optimism in even trying an enumerative approach may seem utterly naive [...] with an initial surge of excitement as toy problems were successfully solved, followed by disillusionment as the full seriousness of the combinatorial explosion phenomenon became apparent.
28 EXP EXP EXP is the set of problems that can be solved in exponential time (O(2 p(n) ) where p(n) is a polynomial). Examples Deciding if a position in chess, checkers, or Go, is a winning position (with an infinite board).
29 EXP n n Chess The n n Chess problem seeks to decide whether a given configuration on a n n chess board wins.
30 EXP Problems R EXP P
31 NP NP NP is the set of problems whose solutions can be verified in polynomial time. Examples Prime factorization, minimum circuit size, satisfiability of Boolean expressions, Sudoku, Tetris, Minesweeper, Nonograms, Eternity II, Traveling Salesman Problem, etc. Let us play Tetris (Can you survive versus can you die)
32 NP NP NP is the set of problems that can be solved in polynomial time (O(p(n)) where p(n) is a polynomial) by a non-deterministic Turing machine. NP stands for non-deterministic polynomial time. ( ;1;R) start q 0 q 1 ( ;0;R) ( ; ; ) ( ; ; ) ( ; ; ) ( ; ; ) q 2
33 NP SAT Satisfiability seeks to decide whether a given Boolean formula can be true. p q r (p q) (r q) true true true false true true false true true false true true true false false false false true true false false true false true false false true true false false false true SAT is not known to be in P.
34 NP Problems R EXP NP P
35 NP NP-hard A problem is NP-hard if it is at least as hard as any problem in NP. NP-complete A problem is NP-complete if it is in NP and NP-hard. SAT NPC Stephen Cook proved that SAT is NP-complete in 1971 (Cook-Levin theorem, also known as Cook s theorem). Cook Turing Award Citation For his advancement of our understanding of the complexity of computation in a significant and profound way.
36 NP Reduction A reduction is an algorithm for transforming one problem into another problem. A many-one reduction is an algorithm for transforming one decision problem into another decision problem.
37 NP NP-complete Problems Richard Karp, in 1972, proved the NP-completeness of 21 problems by showing a polynomial time many-one reduction of SAT to each of these problems. Karps Turing Award Citation most notably, [for his] contributions to the theory of NP-completeness. Karp introduced the now standard methodology for proving problems to be NP-complete which has led to the identification of many theoretical and practical problems as being computationally difficult.
38 NP DNF A Boolean formula is in disjunctive normal form if and only if it is a disjunction of conjunctions of propositions and their negation. ( p q) (r q) (q r) CNF A Boolean formula is in conjunctive normal form if and only if it is a conjunction of disjunctions (called clauses) of propositions and their negation. ( p q r) ( q r)
39 NP 3-SAT 3-SAT is the special case in which a Boolean formula in CNF has at most three variables per clause. ( p q r) ( q r s) ( q r s) 3SAT NPC 3-SAT is NP-complete.
40 NP Proof Sketch We rewrite any k-sat formula into a 3-SAT one. (x 1 x 2 ) becomes (x 1 x 2 x new ) (x 1 x 2 x new ) (x 1 ) becomes (x 1 x new1 x new2 ) (x 1 x new1 x new2 ) (x 1 x new1 x new2 ) (x 1 x new1 x new2 ) (x 1 x k ) becomes (x 1 x 2 x new1 ) (x 3 x new1 x new2 ) (x 4 x new2 x new3 )... (x k 1 x k x newk 3 ) This transformation is polynomial. (x 1 x 2 x 3 x 4 ) (x 1 x 2 x new1 ) (x 3 x 4 x new1 )
41 NP Now we Use 3-SAT Now we can prove that an NP problem is NP-complete by reducing 3-SAT to it.
42 NP 2SAT P 2-SAT is in P. ( p q) ( q r) ( p r)
43 NP The Exponential Time Hypothesis The (unproven) exponential time hypothesis, by Russell Impagliazzo and Ramamohan Paturi (1999), proposes that NP-complete problems cannot be solved in subexponential time (faster than polynomial but slower than exponential) in the worst case. NPI Prime factorization and minimum circuit size are candidate to be NP-intermediate, that is NP, not in P and not NP-complete.
44 NP Problems R EXP NP P NPI? NPC
45 Conclusion Complexity Classes There are 495 classes and counting in the complexity zoo. What do we Know? There are problems which can be solved in exponential time but cannot be solved in polynomial time. If P NP then NPI, NPC and P are three disjoint nonempty classes. All regular languages are solvable in polynomial time, but not vice versa; the set of all natural numbers with as many digits 1 as digits 2 as digits 3 can be decided in polynomial time but is not regular.
46 Conclusion P=NP? The question whether P=NP is one of the six remaining Millennium Prize Problems. Millennium Prize The Millennium Prize problems are seven problems proposed by the Clay Mathematics Institute in There is a one million US dollars prize for being the first one solving any one of these problems.
47 Conclusion Stories... As of today, six of the Millennium Prize problems remain unsolved. The Poincaré conjecture was solved by Grigori Perelman. Grigori Perelman thought that his proof owed much to Richard Hamilton s work and declined the price. Richard Hamilton did not get Millennium Prize but he got half of the one million US dollar Shaw Prize. The Shaw Prize is a prize by the Shaw Prize Foundation. The prize is named after Sir Run Run Shaw who, with his brother, created the Shaw Organisation in Singapore.
48 Conclusion And more Stories Logicomix: An Epic Search for Truth is a comics by Apostolos Doxiad and Christos Papadimitriou. It tells the story of Cantor, Hilbert, Gödel, Turing and infinity, logic, the Entscheindung problem and many other things.
49 Attribution Attribution The images and media files used in this presentation are either in the public domain or are licensed under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation, the Creative Commons Attribution-Share Alike 3.0 Unported license or the Creative Commons Attribution-Share Alike 2.5 Generic, 2.0 Generic and 1.0 Generic license.
Limitations of Algorithm Power
Limitations of Algorithm Power Objectives We now move into the third and final major theme for this course. 1. Tools for analyzing algorithms. 2. Design strategies for designing algorithms. 3. Identifying
More information1.1 P, NP, and NP-complete
CSC5160: Combinatorial Optimization and Approximation Algorithms Topic: Introduction to NP-complete Problems Date: 11/01/2008 Lecturer: Lap Chi Lau Scribe: Jerry Jilin Le This lecture gives a general introduction
More informationThe P-vs-NP problem. Andrés E. Caicedo. September 10, 2011
The P-vs-NP problem Andrés E. Caicedo September 10, 2011 This note is based on lecture notes for the Caltech course Math 6c, prepared with A. Kechris and M. Shulman. 1 Decision problems Consider a finite
More informationSAT, NP, NP-Completeness
CS 473: Algorithms, Spring 2018 SAT, NP, NP-Completeness Lecture 22 April 13, 2018 Most slides are courtesy Prof. Chekuri Ruta (UIUC) CS473 1 Spring 2018 1 / 57 Part I Reductions Continued Ruta (UIUC)
More informationCOP 4531 Complexity & Analysis of Data Structures & Algorithms
COP 4531 Complexity & Analysis of Data Structures & Algorithms Lecture 18 Reductions and NP-completeness Thanks to Kevin Wayne and the text authors who contributed to these slides Classify Problems According
More informationChapter 2. Reductions and NP. 2.1 Reductions Continued The Satisfiability Problem (SAT) SAT 3SAT. CS 573: Algorithms, Fall 2013 August 29, 2013
Chapter 2 Reductions and NP CS 573: Algorithms, Fall 2013 August 29, 2013 2.1 Reductions Continued 2.1.1 The Satisfiability Problem SAT 2.1.1.1 Propositional Formulas Definition 2.1.1. Consider a set of
More informationCOMP Analysis of Algorithms & Data Structures
COMP 3170 - Analysis of Algorithms & Data Structures Shahin Kamali Computational Complexity CLRS 34.1-34.4 University of Manitoba COMP 3170 - Analysis of Algorithms & Data Structures 1 / 50 Polynomial
More informationIntro to Theory of Computation
Intro to Theory of Computation LECTURE 25 Last time Class NP Today Polynomial-time reductions Adam Smith; Sofya Raskhodnikova 4/18/2016 L25.1 The classes P and NP P is the class of languages decidable
More informationCHAPTER 3 FUNDAMENTALS OF COMPUTATIONAL COMPLEXITY. E. Amaldi Foundations of Operations Research Politecnico di Milano 1
CHAPTER 3 FUNDAMENTALS OF COMPUTATIONAL COMPLEXITY E. Amaldi Foundations of Operations Research Politecnico di Milano 1 Goal: Evaluate the computational requirements (this course s focus: time) to solve
More informationNP and Computational Intractability
NP and Computational Intractability 1 Review Basic reduction strategies. Simple equivalence: INDEPENDENT-SET P VERTEX-COVER. Special case to general case: VERTEX-COVER P SET-COVER. Encoding with gadgets:
More informationComputability and Complexity Theory: An Introduction
Computability and Complexity Theory: An Introduction meena@imsc.res.in http://www.imsc.res.in/ meena IMI-IISc, 20 July 2006 p. 1 Understanding Computation Kinds of questions we seek answers to: Is a given
More informationCSE 135: Introduction to Theory of Computation NP-completeness
CSE 135: Introduction to Theory of Computation NP-completeness Sungjin Im University of California, Merced 04-15-2014 Significance of the question if P? NP Perhaps you have heard of (some of) the following
More informationNP and NP Completeness
CS 374: Algorithms & Models of Computation, Spring 2017 NP and NP Completeness Lecture 23 April 20, 2017 Chandra Chekuri (UIUC) CS374 1 Spring 2017 1 / 44 Part I NP Chandra Chekuri (UIUC) CS374 2 Spring
More informationPolynomial-Time Reductions
Reductions 1 Polynomial-Time Reductions Classify Problems According to Computational Requirements Q. Which problems will we be able to solve in practice? A working definition. [von Neumann 1953, Godel
More informationCS 583: Algorithms. NP Completeness Ch 34. Intractability
CS 583: Algorithms NP Completeness Ch 34 Intractability Some problems are intractable: as they grow large, we are unable to solve them in reasonable time What constitutes reasonable time? Standard working
More informationUndecidable Problems. Z. Sawa (TU Ostrava) Introd. to Theoretical Computer Science May 12, / 65
Undecidable Problems Z. Sawa (TU Ostrava) Introd. to Theoretical Computer Science May 12, 2018 1/ 65 Algorithmically Solvable Problems Let us assume we have a problem P. If there is an algorithm solving
More informationCSC 1700 Analysis of Algorithms: P and NP Problems
CSC 1700 Analysis of Algorithms: P and NP Problems Professor Henry Carter Fall 2016 Recap Algorithmic power is broad but limited Lower bounds determine whether an algorithm can be improved by more than
More informationUndecidability COMS Ashley Montanaro 4 April Department of Computer Science, University of Bristol Bristol, UK
COMS11700 Undecidability Department of Computer Science, University of Bristol Bristol, UK 4 April 2014 COMS11700: Undecidability Slide 1/29 Decidability We are particularly interested in Turing machines
More information8. INTRACTABILITY I. Lecture slides by Kevin Wayne Copyright 2005 Pearson-Addison Wesley. Last updated on 2/6/18 2:16 AM
8. INTRACTABILITY I poly-time reductions packing and covering problems constraint satisfaction problems sequencing problems partitioning problems graph coloring numerical problems Lecture slides by Kevin
More informationU.C. Berkeley CS278: Computational Complexity Professor Luca Trevisan August 30, Notes for Lecture 1
U.C. Berkeley CS278: Computational Complexity Handout N1 Professor Luca Trevisan August 30, 2004 Notes for Lecture 1 This course assumes CS170, or equivalent, as a prerequisite. We will assume that the
More information} } } Lecture 23: Computational Complexity. Lecture Overview. Definitions: EXP R. uncomputable/ undecidable P C EXP C R = = Examples
Lecture 23 Computational Complexity 6.006 Fall 2011 Lecture 23: Computational Complexity Lecture Overview P, EXP, R Most problems are uncomputable NP Hardness & completeness Reductions Definitions: P =
More informationLecture 4: NP and computational intractability
Chapter 4 Lecture 4: NP and computational intractability Listen to: Find the longest path, Daniel Barret What do we do today: polynomial time reduction NP, co-np and NP complete problems some examples
More informationAlgorithm Design and Analysis
Algorithm Design and Analysis LECTURE 31 P and NP Self-reducibility NP-completeness Adam Smith 12/1/2008 S. Raskhodnikova; based on slides by K. Wayne Central ideas we ll cover Poly-time as feasible most
More informationNP-Completeness. Subhash Suri. May 15, 2018
NP-Completeness Subhash Suri May 15, 2018 1 Computational Intractability The classical reference for this topic is the book Computers and Intractability: A guide to the theory of NP-Completeness by Michael
More informationCS 350 Algorithms and Complexity
CS 350 Algorithms and Complexity Winter 2019 Lecture 15: Limitations of Algorithmic Power Introduction to complexity theory Andrew P. Black Department of Computer Science Portland State University Lower
More informationPrinciples of Computing, Carnegie Mellon University. The Limits of Computing
The Limits of Computing Intractability Limits of Computing Announcement Final Exam is on Friday 9:00am 10:20am Part 1 4:30pm 6:10pm Part 2 If you did not fill in the course evaluations please do it today.
More informationEssential facts about NP-completeness:
CMPSCI611: NP Completeness Lecture 17 Essential facts about NP-completeness: Any NP-complete problem can be solved by a simple, but exponentially slow algorithm. We don t have polynomial-time solutions
More informationCS 350 Algorithms and Complexity
1 CS 350 Algorithms and Complexity Fall 2015 Lecture 15: Limitations of Algorithmic Power Introduction to complexity theory Andrew P. Black Department of Computer Science Portland State University Lower
More informationENEE 459E/CMSC 498R In-class exercise February 10, 2015
ENEE 459E/CMSC 498R In-class exercise February 10, 2015 In this in-class exercise, we will explore what it means for a problem to be intractable (i.e. it cannot be solved by an efficient algorithm). There
More informationAlgorithms Design & Analysis. Approximation Algorithm
Algorithms Design & Analysis Approximation Algorithm Recap External memory model Merge sort Distribution sort 2 Today s Topics Hard problem Approximation algorithms Metric traveling salesman problem A
More informationNP Completeness and Approximation Algorithms
Winter School on Optimization Techniques December 15-20, 2016 Organized by ACMU, ISI and IEEE CEDA NP Completeness and Approximation Algorithms Susmita Sur-Kolay Advanced Computing and Microelectronic
More informationChapter 2 Algorithms and Computation
Chapter 2 Algorithms and Computation In this chapter, we first discuss the principles of algorithm and computation in general framework, common both in classical and quantum computers, then we go to the
More informationTractability. Some problems are intractable: as they grow large, we are unable to solve them in reasonable time What constitutes reasonable time?
Tractability Some problems are intractable: as they grow large, we are unable to solve them in reasonable time What constitutes reasonable time?» Standard working definition: polynomial time» On an input
More informationNP Complete Problems. COMP 215 Lecture 20
NP Complete Problems COMP 215 Lecture 20 Complexity Theory Complexity theory is a research area unto itself. The central project is classifying problems as either tractable or intractable. Tractable Worst
More information8.1 Polynomial-Time Reductions. Chapter 8. NP and Computational Intractability. Classify Problems
Chapter 8 8.1 Polynomial-Time Reductions NP and Computational Intractability Slides by Kevin Wayne. Copyright 2005 Pearson-Addison Wesley. All rights reserved. 1 Classify Problems According to Computational
More informationDesign and Analysis of Algorithms
Design and Analysis of Algorithms CSE 5311 Lecture 25 NP Completeness Junzhou Huang, Ph.D. Department of Computer Science and Engineering CSE5311 Design and Analysis of Algorithms 1 NP-Completeness Some
More informationHarvard CS 121 and CSCI E-121 Lecture 22: The P vs. NP Question and NP-completeness
Harvard CS 121 and CSCI E-121 Lecture 22: The P vs. NP Question and NP-completeness Harry Lewis November 19, 2013 Reading: Sipser 7.4, 7.5. For culture : Computers and Intractability: A Guide to the Theory
More informationComputational Complexity and Intractability: An Introduction to the Theory of NP. Chapter 9
1 Computational Complexity and Intractability: An Introduction to the Theory of NP Chapter 9 2 Objectives Classify problems as tractable or intractable Define decision problems Define the class P Define
More information7.8 Intractability. Overview. Properties of Algorithms. Exponential Growth. Q. What is an algorithm? A. Definition formalized using Turing machines.
Overview 7.8 Intractability Q. What is an algorithm? A. Definition formalized using Turing machines. Q. Which problems can be solved on a computer? A. Computability. Q. Which algorithms will be useful
More informationHandouts. CS701 Theory of Computation
Handouts CS701 Theory of Computation by Kashif Nadeem VU Student MS Computer Science LECTURE 01 Overview In this lecturer the topics will be discussed including The Story of Computation, Theory of Computation,
More informationINTRO TO COMPUTATIONAL COMPLEXITY
MA/CSSE 473 Day 38 Problems Decision Problems P and NP Polynomial time algorithms INTRO TO COMPUTATIONAL COMPLEXITY 1 The Law of the Algorithm Jungle Polynomial good, exponential bad! The latter is obvious,
More informationCSE 105 THEORY OF COMPUTATION
CSE 105 THEORY OF COMPUTATION "Winter" 2018 http://cseweb.ucsd.edu/classes/wi18/cse105-ab/ Today's learning goals Sipser Ch 7 Define NP-completeness Give examples of NP-complete problems Use polynomial-time
More informationGiving a step-by-step reduction from SAT to TSP and giving some remarks on Neil Tennant's Changes of Mind
Faculty of Mathematics and Natural Sciences Giving a step-by-step reduction from SAT to TSP and giving some remarks on Neil Tennant's Changes of Mind Bachelor Thesis Mathematics July 2014 Student: M.M.
More informationP, NP, NP-Complete, and NPhard
P, NP, NP-Complete, and NPhard Problems Zhenjiang Li 21/09/2011 Outline Algorithm time complicity P and NP problems NP-Complete and NP-Hard problems Algorithm time complicity Outline What is this course
More informationAlgorithm Design and Analysis
Algorithm Design and Analysis LECTURE 26 Computational Intractability Polynomial Time Reductions Sofya Raskhodnikova S. Raskhodnikova; based on slides by A. Smith and K. Wayne L26.1 What algorithms are
More informationAlgorithm Design and Analysis
Algorithm Design and Analysis LECTURES 30-31 NP-completeness Definition NP-completeness proof for CIRCUIT-SAT Adam Smith 11/3/10 A. Smith; based on slides by E. Demaine, C. Leiserson, S. Raskhodnikova,
More informationAlgorithms: COMP3121/3821/9101/9801
NEW SOUTH WALES Algorithms: COMP3121/3821/9101/9801 Aleks Ignjatović School of Computer Science and Engineering University of New South Wales LECTURE 9: INTRACTABILITY COMP3121/3821/9101/9801 1 / 29 Feasibility
More informationArtificial Intelligence. 3 Problem Complexity. Prof. Dr. Jana Koehler Fall 2016 HSLU - JK
Artificial Intelligence 3 Problem Complexity Prof. Dr. Jana Koehler Fall 2016 Agenda Computability and Turing Machines Tractable and Intractable Problems P vs. NP Decision Problems Optimization problems
More informationSummer School on Introduction to Algorithms and Optimization Techniques July 4-12, 2017 Organized by ACMU, ISI and IEEE CEDA.
Summer School on Introduction to Algorithms and Optimization Techniques July 4-12, 2017 Organized by ACMU, ISI and IEEE CEDA NP Completeness Susmita Sur-Kolay Advanced Computing and Microelectronics Unit
More informationAutomata Theory CS Complexity Theory I: Polynomial Time
Automata Theory CS411-2015-17 Complexity Theory I: Polynomial Time David Galles Department of Computer Science University of San Francisco 17-0: Tractable vs. Intractable If a problem is recursive, then
More informationCSCI3390-Lecture 6: An Undecidable Problem
CSCI3390-Lecture 6: An Undecidable Problem September 21, 2018 1 Summary The language L T M recognized by the universal Turing machine is not decidable. Thus there is no algorithm that determines, yes or
More informationNondeterministic Turing Machines
Nondeterministic Turing Machines Remarks. I The complexity class P consists of all decision problems that can be solved by a deterministic Turing machine in polynomial time. I The complexity class NP consists
More informationData Structures and Algorithms
Data Structures and Algorithms Session 21. April 13, 2009 Instructor: Bert Huang http://www.cs.columbia.edu/~bert/courses/3137 Announcements Homework 5 due next Monday I m out of town Wed to Sun for conference
More informationAbout the impossibility to prove P NP or P = NP and the pseudo-randomness in NP
About the impossibility to prove P NP or P = NP and the pseudo-randomness in NP Prof. Marcel Rémon 1 arxiv:0904.0698v3 [cs.cc] 24 Mar 2016 Abstract The relationship between the complexity classes P and
More informationan efficient procedure for the decision problem. We illustrate this phenomenon for the Satisfiability problem.
1 More on NP In this set of lecture notes, we examine the class NP in more detail. We give a characterization of NP which justifies the guess and verify paradigm, and study the complexity of solving search
More information17.1 The Halting Problem
CS125 Lecture 17 Fall 2016 17.1 The Halting Problem Consider the HALTING PROBLEM (HALT TM ): Given a TM M and w, does M halt on input w? Theorem 17.1 HALT TM is undecidable. Suppose HALT TM = { M,w : M
More informationAnnouncements. Friday Four Square! Problem Set 8 due right now. Problem Set 9 out, due next Friday at 2:15PM. Did you lose a phone in my office?
N P NP Completeness Announcements Friday Four Square! Today at 4:15PM, outside Gates. Problem Set 8 due right now. Problem Set 9 out, due next Friday at 2:15PM. Explore P, NP, and their connection. Did
More informationNP-Completeness. Andreas Klappenecker. [based on slides by Prof. Welch]
NP-Completeness Andreas Klappenecker [based on slides by Prof. Welch] 1 Prelude: Informal Discussion (Incidentally, we will never get very formal in this course) 2 Polynomial Time Algorithms Most of the
More informationNP-Complete Reductions 1
x x x 2 x 2 x 3 x 3 x 4 x 4 CS 4407 2 22 32 Algorithms 3 2 23 3 33 NP-Complete Reductions Prof. Gregory Provan Department of Computer Science University College Cork Lecture Outline x x x 2 x 2 x 3 x 3
More informationCorrectness of Dijkstra s algorithm
Correctness of Dijkstra s algorithm Invariant: When vertex u is deleted from the priority queue, d[u] is the correct length of the shortest path from the source s to vertex u. Additionally, the value d[u]
More informationLecture 19: Finish NP-Completeness, conp and Friends
6.045 Lecture 19: Finish NP-Completeness, conp and Friends 1 Polynomial Time Reducibility f : Σ* Σ* is a polynomial time computable function if there is a poly-time Turing machine M that on every input
More informationHilbert s problems, Gödel, and the limits of computation
Hilbert s problems, Gödel, and the limits of computation Logan Axon Gonzaga University November 14, 2013 Hilbert at the ICM At the 1900 International Congress of Mathematicians in Paris, David Hilbert
More informationCITS2211 Discrete Structures (2017) Cardinality and Countability
CITS2211 Discrete Structures (2017) Cardinality and Countability Highlights What is cardinality? Is it the same as size? Types of cardinality and infinite sets Reading Sections 45 and 81 84 of Mathematics
More informationNotes for Lecture Notes 2
Stanford University CS254: Computational Complexity Notes 2 Luca Trevisan January 11, 2012 Notes for Lecture Notes 2 In this lecture we define NP, we state the P versus NP problem, we prove that its formulation
More informationconp, Oracles, Space Complexity
conp, Oracles, Space Complexity 1 What s next? A few possibilities CS161 Design and Analysis of Algorithms CS254 Complexity Theory (next year) CS354 Topics in Circuit Complexity For your favorite course
More informationFriday Four Square! Today at 4:15PM, Outside Gates
P and NP Friday Four Square! Today at 4:15PM, Outside Gates Recap from Last Time Regular Languages DCFLs CFLs Efficiently Decidable Languages R Undecidable Languages Time Complexity A step of a Turing
More informationDefinition: conp = { L L NP } What does a conp computation look like?
Space Complexity 28 Definition: conp = { L L NP } What does a conp computation look like? In NP algorithms, we can use a guess instruction in pseudocode: Guess string y of x k length and the machine accepts
More informationP P P NP-Hard: L is NP-hard if for all L NP, L L. Thus, if we could solve L in polynomial. Cook's Theorem and Reductions
Summary of the previous lecture Recall that we mentioned the following topics: P: is the set of decision problems (or languages) that are solvable in polynomial time. NP: is the set of decision problems
More informationCS151 Complexity Theory. Lecture 1 April 3, 2017
CS151 Complexity Theory Lecture 1 April 3, 2017 Complexity Theory Classify problems according to the computational resources required running time storage space parallelism randomness rounds of interaction,
More informationCS3719 Theory of Computation and Algorithms
CS3719 Theory of Computation and Algorithms Any mechanically (automatically) discretely computation of problem solving contains at least three components: - problem description - computational tool - analysis
More informationAnalysis of Algorithms. Unit 5 - Intractable Problems
Analysis of Algorithms Unit 5 - Intractable Problems 1 Intractable Problems Tractable Problems vs. Intractable Problems Polynomial Problems NP Problems NP Complete and NP Hard Problems 2 In this unit we
More informationCS6901: review of Theory of Computation and Algorithms
CS6901: review of Theory of Computation and Algorithms Any mechanically (automatically) discretely computation of problem solving contains at least three components: - problem description - computational
More information15-251: Great Theoretical Ideas in Computer Science Fall 2016 Lecture 6 September 15, Turing & the Uncomputable
15-251: Great Theoretical Ideas in Computer Science Fall 2016 Lecture 6 September 15, 2016 Turing & the Uncomputable Comparing the cardinality of sets A B if there is an injection (one-to-one map) from
More informationWelcome to... Problem Analysis and Complexity Theory , 3 VU
Welcome to... Problem Analysis and Complexity Theory 716.054, 3 VU Birgit Vogtenhuber Institute for Software Technology email: bvogt@ist.tugraz.at office: Inffeldgasse 16B/II, room IC02044 slides: http://www.ist.tugraz.at/pact17.html
More informationIntroduction to Complexity Theory
Introduction to Complexity Theory Read K & S Chapter 6. Most computational problems you will face your life are solvable (decidable). We have yet to address whether a problem is easy or hard. Complexity
More information1 Computational Problems
Stanford University CS254: Computational Complexity Handout 2 Luca Trevisan March 31, 2010 Last revised 4/29/2010 In this lecture we define NP, we state the P versus NP problem, we prove that its formulation
More informationECE 695 Numerical Simulations Lecture 2: Computability and NPhardness. Prof. Peter Bermel January 11, 2017
ECE 695 Numerical Simulations Lecture 2: Computability and NPhardness Prof. Peter Bermel January 11, 2017 Outline Overview Definitions Computing Machines Church-Turing Thesis Polynomial Time (Class P)
More informationThe P versus NP Problem. Ker-I Ko. Stony Brook, New York
The P versus NP Problem Ker-I Ko Stony Brook, New York ? P = NP One of the seven Millenium Problems The youngest one A folklore question? Has hundreds of equivalent forms Informal Definitions P : Computational
More informationAutomata & languages. A primer on the Theory of Computation. Laurent Vanbever. ETH Zürich (D-ITET) October,
Automata & languages A primer on the Theory of Computation Laurent Vanbever www.vanbever.eu ETH Zürich (D-ITET) October, 19 2017 Part 5 out of 5 Last week was all about Context-Free Languages Context-Free
More informationSpring Lecture 21 NP-Complete Problems
CISC 320 Introduction to Algorithms Spring 2014 Lecture 21 NP-Complete Problems 1 We discuss some hard problems: how hard? (computational complexity) what makes them hard? any solutions? Definitions Decision
More informationCantor and sets: La diagonale du fou
Judicaël Courant 2011-06-17 Lycée du Parc (moving to Lycée La Martinière-Monplaisir) Outline 1 Cantor s paradise 1.1 Introduction 1.2 Countable sets 1.3 R is not countable 1.4 Comparing sets 1.5 Cardinals
More informationLecture 2 (Notes) 1. The book Computational Complexity: A Modern Approach by Sanjeev Arora and Boaz Barak;
Topics in Theoretical Computer Science February 29, 2016 Lecturer: Ola Svensson Lecture 2 (Notes) Scribes: Ola Svensson Disclaimer: These notes were written for the lecturer only and may contain inconsistent
More informationECS 120 Lesson 18 Decidable Problems, the Halting Problem
ECS 120 Lesson 18 Decidable Problems, the Halting Problem Oliver Kreylos Friday, May 11th, 2001 In the last lecture, we had a look at a problem that we claimed was not solvable by an algorithm the problem
More informationNP-Completeness. Until now we have been designing algorithms for specific problems
NP-Completeness 1 Introduction Until now we have been designing algorithms for specific problems We have seen running times O(log n), O(n), O(n log n), O(n 2 ), O(n 3 )... We have also discussed lower
More informationCSCI3390-Lecture 18: Why is the P =?NP Problem Such a Big Deal?
CSCI3390-Lecture 18: Why is the P =?NP Problem Such a Big Deal? The conjecture that P is different from NP made its way on to several lists of the most important unsolved problems in Mathematics (never
More informationNP-Complete and Non-Computable Problems. COMP385 Dr. Ken Williams
NP-Complete and Non-Computable Problems COMP385 Dr. Ken Williams Start by doing what s necessary; then do what s possible; and suddenly you are doing the impossible. Francis of Assisi Our Goal Define classes
More informationProblems and Solutions. Decidability and Complexity
Problems and Solutions Decidability and Complexity Algorithm Muhammad bin-musa Al Khwarismi (780-850) 825 AD System of numbers Algorithm or Algorizm On Calculations with Hindu (sci Arabic) Numbers (Latin
More informationThe Mathematical Story. Computation: Christos H. Papadimitriou. UC Berkeley
Computation: The Mathematical Story Christos H. Papadimitriou UC Berkeley christos Outline The Foundational Crisis in Math (1900 31) How it Led to the Computer (1931 46) And to P vs NP (1946 72) The prehistory
More informationPolynomial-time Reductions
Polynomial-time Reductions Disclaimer: Many denitions in these slides should be taken as the intuitive meaning, as the precise meaning of some of the terms are hard to pin down without introducing the
More informationRecap from Last Time
NP-Completeness Recap from Last Time Analyzing NTMs When discussing deterministic TMs, the notion of time complexity is (reasonably) straightforward. Recall: One way of thinking about nondeterminism is
More informationChapter 8. NP and Computational Intractability. CS 350 Winter 2018
Chapter 8 NP and Computational Intractability CS 350 Winter 2018 1 Algorithm Design Patterns and Anti-Patterns Algorithm design patterns. Greedy. Divide-and-conquer. Dynamic programming. Duality. Reductions.
More informationNP-Completeness. Algorithmique Fall semester 2011/12
NP-Completeness Algorithmique Fall semester 2011/12 1 What is an Algorithm? We haven t really answered this question in this course. Informally, an algorithm is a step-by-step procedure for computing a
More information2 P vs. NP and Diagonalization
2 P vs NP and Diagonalization CS 6810 Theory of Computing, Fall 2012 Instructor: David Steurer (sc2392) Date: 08/28/2012 In this lecture, we cover the following topics: 1 3SAT is NP hard; 2 Time hierarchies;
More informationNotes for Lecture 21
U.C. Berkeley CS170: Intro to CS Theory Handout N21 Professor Luca Trevisan November 20, 2001 Notes for Lecture 21 1 Tractable and Intractable Problems So far, almost all of the problems that we have studied
More informationIntroduction to Computational Complexity
Introduction to Computational Complexity Jiyou Li lijiyou@sjtu.edu.cn Department of Mathematics, Shanghai Jiao Tong University Sep. 24th, 2013 Computation is everywhere Mathematics: addition; multiplication;
More informationNP-complete problems. CSE 101: Design and Analysis of Algorithms Lecture 20
NP-complete problems CSE 101: Design and Analysis of Algorithms Lecture 20 CSE 101: Design and analysis of algorithms NP-complete problems Reading: Chapter 8 Homework 7 is due today, 11:59 PM Tomorrow
More informationTheory of Computation CS3102 Spring 2014 A tale of computers, math, problem solving, life, love and tragic death
Theory of Computation CS3102 Spring 2014 A tale of computers, math, problem solving, life, love and tragic death Nathan Brunelle Department of Computer Science University of Virginia www.cs.virginia.edu/~njb2b/theory
More informationCS154, Lecture 15: Cook-Levin Theorem SAT, 3SAT
CS154, Lecture 15: Cook-Levin Theorem SAT, 3SAT Definition: A language B is NP-complete if: 1. B NP 2. Every A in NP is poly-time reducible to B That is, A P B When this is true, we say B is NP-hard On
More information4/22/12. NP and NP completeness. Efficient Certification. Decision Problems. Definition of P
Efficient Certification and completeness There is a big difference between FINDING a solution and CHECKING a solution Independent set problem: in graph G, is there an independent set S of size at least
More information