Recap CS605: The Mathematics and Theory of Computer Science.

Slides:



Advertisements
Similar presentations
Complexity Classes: P and NP
Advertisements

CS 345: Chapter 9 Algorithmic Universality and Its Robustness
The Big Picture Chapter 3. We want to examine a given computational problem and see how difficult it is. Then we need to compare problems Problems appear.
Programming Languages Wrap-up. Your Toolkit Object-oriented Imperative Functional Logic.
NP-Completeness Lecture for CS 302. Traveling Salesperson Problem You have to visit n cities You want to make the shortest trip How could you do this?
Nathan Brunelle Department of Computer Science University of Virginia Theory of Computation CS3102 – Spring 2014 A tale.
CS605 – The Mathematics and Theory of Computer Science Turing Machines.
Applied Computer Science II Chapter 3 : Turing Machines Prof. Dr. Luc De Raedt Institut für Informatik Albert-Ludwigs Universität Freiburg Germany.
CS21 Decidability and Tractability
Computability and Complexity 13-1 Computability and Complexity Andrei Bulatov The Class NP.
1 Introduction to Computability Theory Lecture14: Recap Prof. Amos Israeli.
Complexity ©D.Moshkovitz 1 Turing Machines. Complexity ©D.Moshkovitz 2 Motivation Our main goal in this course is to analyze problems and categorize them.
CS 302: Discrete Math II A Review. An alphabet Σ is a finite set (e.g., Σ = {0,1}) A string over Σ is a finite-length sequence of elements of Σ For x.
FORMAL LANGUAGES, AUTOMATA AND COMPUTABILITY Read sections 7.1 – 7.3 of the book for next time.
1 Polynomial Time Reductions Polynomial Computable function : For any computes in polynomial time.
1 Other Models of Computation. 2 Models of computation: Turing Machines Recursive Functions Post Systems Rewriting Systems.
Analysis of Algorithms CS 477/677
Automata & Formal Languages, Feodor F. Dragan, Kent State University 1 CHAPTER 5 Reducibility Contents Undecidable Problems from Language Theory.
CS21 Decidability and Tractability
Final Exam Review Cummulative Chapters 0, 1, 2, 3, 4, 5 and 7.
Remaining Topics Decidability Concept 4.1 The Halting Problem 4.2
Complexity and Computability Theory I Lecture #13 Instructor: Rina Zviel-Girshin Lea Epstein Yael Moses.
CS355 – The Mathematics and Theory of Computer Science Reducibility.
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.
חישוביות וסיבוכיות Computability and Complexity Lecture 7 TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: A AAAA.
CS355 – Theory of Computation Dr. Aidan Mooney, September 2006 National University of Ireland, Maynooth Department of Computer Science.
Complexity theory and combinatorial optimization Class #2 – 17 th of March …. where we deal with decision problems, finite automata, Turing machines pink.
Review Byron Gao. Overview Theory of computation: central areas: Automata, Computability, Complexity Computability: Is the problem solvable? –solvable.
Lecture 30. P, NP and NP Complete Problems 1. Recap Data compression is a technique to compress the data represented either in text, audio or image form.
Introduction to CS Theory Lecture 15 –Turing Machines Piotr Faliszewski
Cs3102: Theory of Computation Class 24: NP-Completeness Spring 2010 University of Virginia David Evans.
CSE 024: Design & Analysis of Algorithms Chapter 9: NP Completeness Sedgewick Chp:40 David Luebke’s Course Notes / University of Virginia, Computer Science.
Complexity Non-determinism. NP complete problems. Does P=NP? Origami. Homework: continue on postings.
CS 345: Chapter 8 Noncomputability and Undecidability Or Sometimes You Can’t Get It Done At All.
Cs3102: Theory of Computation Class 14: Turing Machines Spring 2010 University of Virginia David Evans.
CS848: Topics in Databases: Foundations of Query Optimization Topics covered  Review of complexity.
ATM, Halting Problem, P vs. NP Chapter 4, 5 & 7. Russel’s Paradox An Index is a book that lists other books in.
1Computer Sciences Department. Book: INTRODUCTION TO THE THEORY OF COMPUTATION, SECOND EDITION, by: MICHAEL SIPSER Reference 3Computer Sciences Department.
 2005 SDU Lecture13 Reducibility — A methodology for proving un- decidability.
CS355 - Theory of Computation Regular Expressions.
CS6045: Advanced Algorithms NP Completeness. NP-Completeness Some problems are intractable: as they grow large, we are unable to solve them in reasonable.
CS 3813: Introduction to Formal Languages and Automata Chapter 14 An Introduction to Computational Complexity These class notes are based on material from.
CSCI 2670 Introduction to Theory of Computing October 13, 2005.
Chapter 15 P, NP, and Cook’s Theorem. 2 Computability Theory n Establishes whether decision problems are (only) theoretically decidable, i.e., decides.
Automata & Formal Languages, Feodor F. Dragan, Kent State University 1 CHAPTER 3 The Church-Turing Thesis Contents Turing Machines definitions, examples,
NP-complete Languages
CSCI 2670 Introduction to Theory of Computing December 2, 2004.
1 CD5560 FABER Formal Languages, Automata and Models of Computation Lecture 12 Mälardalen University 2007.
Summary of Previous Class There are languages that are not decidable –(we have not proved this yet) Why not extend Turing machines just as we did with.
Computability Examples. Reducibility. NP completeness. Homework: Find other examples of NP complete problems.
CS 154 Formal Languages and Computability May 12 Class Meeting Department of Computer Science San Jose State University Spring 2016 Instructor: Ron Mak.
Computability. Turing Machines Read input letter & tape letter, write tape letter, move left or right.
Modeling Arithmetic, Computation, and Languages Mathematical Structures for Computer Science Chapter 8 Copyright © 2006 W.H. Freeman & Co.MSCS SlidesTuring.
Review : Theory of Computation. Regular Language and Finite Automata Context-free Language and Pushdown Automata Turing Machine and Recursive Enumerable.
Why Study Automata Theory and Formal Languages?
CIS Automata and Formal Languages – Pei Wang
Why Study Automata? What the Course is About Administrivia
Review : Theory of Computation
Linear Bounded Automata LBAs
Summary.
Jaya Krishna, M.Tech, Assistant Professor
Automata and Formal Languages (Final Review)
Computational Complexity
CS21 Decidability and Tractability
CS21 Decidability and Tractability
NP-completeness The Chinese University of Hong Kong Fall 2008
Decidability and Tractability
Instructor: Aaron Roth
Sub: Theoretical Foundations of Computer Sciences
Presentation transcript:

Recap CS605: The Mathematics and Theory of Computer Science

Dr. A. Mooney, Dept. of Computer Science, NUI Maynooth Course Review Mathematical Preliminaries Language Theory Regular Languages Finite State Machines/ Finite Automata – only one path of execution Nondeterministic FSM – multiple paths of execution Regular Expressions Nonregular Languages and the Pumping Lemma – can only be used non regularity

Dr. A. Mooney, Dept. of Computer Science, NUI Maynooth Course Review Context Free Languages Context Free Grammars Pushdown Automata – extra stack element over the FSM Regular Languages subset of context free languages Non-context free languages and the pumping lemma

Dr. A. Mooney, Dept. of Computer Science, NUI Maynooth Course Review David Hilbert: –Is maths complete –Is maths consistent –Is maths decidable Godel answered the first two – every sufficiently powerful formal system is either inconsistent or incomplete. Third question remained open and brought about the concept of Turing machines.

Dr. A. Mooney, Dept. of Computer Science, NUI Maynooth Course Review Turing would design machine which were unable to solve some problems – proving computation (and maths) was undecidable. Turing Machines were models of human computation, and can do anything a real computer can do. TM’s are only models and can never be built.

Dr. A. Mooney, Dept. of Computer Science, NUI Maynooth Course Review TM’s can both read and write to its tape and can also move left or right. There are three possible outcomes of a TM – accept, reject or loop. A language is Turing-recognisable if some Turing machines recognises it. A language is known as Turing-decidable if some Turing machine decides it. TM’s have the ability to inspect another machines table of behaviour and emulate it.

Dr. A. Mooney, Dept. of Computer Science, NUI Maynooth Course Review Multitape Turing have multiple tapes which they can read or write to. Every multitape TM has an equivalent single tape TM. Nondeterministic TM’s is a generalisation of the standard TM for which every configuration may yield none, or one, or more than one next configuration. Every NTM has an equivalent DTM.

Dr. A. Mooney, Dept. of Computer Science, NUI Maynooth Course Review A Universal TM is capable of simulating any other TM. An abstract machine or programming language is Turing-complete if it has the same computational power as a UTM. Church-Turing thesis states that if any mathematical construction can solve a problem then there is a TM that can solve the problem.

Dr. A. Mooney, Dept. of Computer Science, NUI Maynooth Course Review Decidability of languages. Showing that a language is decidable is the same as showing that the computational problem is decidable. The Halting Problem: Will a TM accept a given input – in other words, will it always halt? Use Diagonalisation Technique to show the Halting Problem is undecidable.

Dr. A. Mooney, Dept. of Computer Science, NUI Maynooth Course Review Reductions are a way of converting one problem to another in such a way that a solution to the second one can be used to solve the first problem. Undecidable Problems. Completeness: The concept that a solution to a problem in a set can be applied to all others in the set.

Dr. A. Mooney, Dept. of Computer Science, NUI Maynooth Course Review Time Complexity and O-Notation. Complexity Classes. PTIME (P) – class of decision problems solvable (or languages recognised) by DTM’s obeying a polynomial bound on its running time. Some problems in P: Path, hcf, … Problems for which a proof can be found in polynomial time.

Dr. A. Mooney, Dept. of Computer Science, NUI Maynooth Course Review Tractability – what is feasible with limited resources, and intractability. To place the intractable problems in a class a new class was designed – NP. NP are the class of problems for which a solution can be verified in polynomial time. Travelling salesman, Clique, Vertex- Cover, Subset-Sum… Is NP = P?

Dr. A. Mooney, Dept. of Computer Science, NUI Maynooth Course Review NP-Complete problems are the hardest in NP. Polynomial-time reductions. Proving Membership of NP- Completeness: – A language B is NP-Complete if it satisfies two conditions: 1.B is in NP 2.Every A in NP is polynomial time reducible to B.

Dr. A. Mooney, Dept. of Computer Science, NUI Maynooth Course Review SAT was proven to be NP-Complete by Cook. As 3SAT is a special case of the SAT problem it is therefore NP-Complete. We use 3SAT to prove that other problems are NP-Complete.

Dr. A. Mooney, Dept. of Computer Science, NUI Maynooth Pointers If you are asked to prove a language is regular: design a FSM to recognise it. If you are asked to prove a language is irregular: use the Pumping Lemma. If you are asked to prove a language is context free: design a PDA to recognise it. If you are asked to prove a language is not context-free: use the Pumping Lemma.

Dr. A. Mooney, Dept. of Computer Science, NUI Maynooth Pointers Decidability = can it be either accepted or rejected for every possible input on a machine? Verifiability = can we verify that a solution to the problem is correct? If you are asked to show that a problem is NP-Complete then show that a problem already shown to be in NP-Complete can be reduced to it.