# Fall 2006Costas Busch - RPI1 Time Complexity. Fall 2006Costas Busch - RPI2 Consider a deterministic Turing Machine which decides a language.

## Presentation on theme: "Fall 2006Costas Busch - RPI1 Time Complexity. Fall 2006Costas Busch - RPI2 Consider a deterministic Turing Machine which decides a language."— Presentation transcript:

Fall 2006Costas Busch - RPI1 Time Complexity

Fall 2006Costas Busch - RPI2 Consider a deterministic Turing Machine which decides a language

Fall 2006Costas Busch - RPI3 For any string the computation of terminates in a finite amount of transitions Accept or Reject Initial state

Fall 2006Costas Busch - RPI4 Accept or Reject Decision Time = #transitions Initial state

Fall 2006Costas Busch - RPI5 Consider now all strings of length = maximum time required to decide any string of length

Fall 2006Costas Busch - RPI6 Max time to accept a string of length STRING LENGTH TIME

Fall 2006Costas Busch - RPI7 Time Complexity Class: All Languages decidable by a deterministic Turing Machine in time

Fall 2006Costas Busch - RPI8 Example: This can be decided in time

Fall 2006Costas Busch - RPI9 Other example problems in the same class

Fall 2006Costas Busch - RPI10 Examples in class:

Fall 2006Costas Busch - RPI11 Examples in class: CYK algorithm Matrix multiplication

Fall 2006Costas Busch - RPI12 Polynomial time algorithms: Represents tractable algorithms: for small we can decide the result fast constant

Fall 2006Costas Busch - RPI13 It can be shown:

Fall 2006Costas Busch - RPI14 The Time Complexity Class tractable problems polynomial time algorithms Represents:

Fall 2006Costas Busch - RPI15 CYK-algorithm Class Matrix multiplication

Fall 2006Costas Busch - RPI16 Exponential time algorithms: Represent intractable algorithms: Some problem instances may take centuries to solve

Fall 2006Costas Busch - RPI17 Example: the Hamiltonian Path Problem Question: is there a Hamiltonian path from s to t? s t

Fall 2006Costas Busch - RPI18 s t YES!

Fall 2006Costas Busch - RPI19 Exponential time Intractable problem A solution: search exhaustively all paths L = { : there is a Hamiltonian path in G from s to t}

Fall 2006Costas Busch - RPI20 The clique problem Does there exist a clique of size 5?

Fall 2006Costas Busch - RPI21 The clique problem Does there exist a clique of size 5?

Fall 2006Costas Busch - RPI22 Example: The Satisfiability Problem Boolean expressions in Conjunctive Normal Form: Variables Question: is the expression satisfiable? clauses

Fall 2006Costas Busch - RPI23 Satisfiable: Example:

Fall 2006Costas Busch - RPI24 Not satisfiable Example:

Fall 2006Costas Busch - RPI25 Algorithm: search exhaustively all the possible binary values of the variables exponential

Fall 2006Costas Busch - RPI26 Non-Determinism Language class: A Non-Deterministic Turing Machine decides each string of length in time

Fall 2006Costas Busch - RPI27 Non-Deterministic Polynomial time algorithms:

Fall 2006Costas Busch - RPI28 The class Non-Deterministic Polynomial time

Fall 2006Costas Busch - RPI29 Example: The satisfiability problem Non-Deterministic algorithm: Guess an assignment of the variables Check if this is a satisfying assignment

Fall 2006Costas Busch - RPI30 Time for variables: Total time: Guess an assignment of the variables Check if this is a satisfying assignment

Fall 2006Costas Busch - RPI31 The satisfiability problem is an - Problem

Fall 2006Costas Busch - RPI32 Observation: Deterministic Polynomial Non-Deterministic Polynomial

Fall 2006Costas Busch - RPI33 Open Problem: WE DO NOT KNOW THE ANSWER

Fall 2006Costas Busch - RPI34 Example: Does the Satisfiability problem have a polynomial time deterministic algorithm? WE DO NOT KNOW THE ANSWER Open Problem:

Download ppt "Fall 2006Costas Busch - RPI1 Time Complexity. Fall 2006Costas Busch - RPI2 Consider a deterministic Turing Machine which decides a language."

Similar presentations