CSE 105 Theory of Computation Alexander Tsiatas Spring 2012 Theory of Computation Lecture Slides by Alexander Tsiatas is licensed under a Creative Commons.

Slides:



Advertisements
Similar presentations
David Evans cs302: Theory of Computation University of Virginia Computer Science Lecture 17: ProvingUndecidability.
Advertisements

CS 345: Chapter 9 Algorithmic Universality and Its Robustness
CSE 105 Theory of Computation Alexander Tsiatas Spring 2012 Theory of Computation Lecture Slides by Alexander Tsiatas is licensed under a Creative Commons.
CSE 105 Theory of Computation Alexander Tsiatas Spring 2012 Theory of Computation Lecture Slides by Alexander Tsiatas is licensed under a Creative Commons.
CS 461 – Nov. 9 Chomsky hierarchy of language classes –Review –Let’s find a language outside the TM world! –Hints: languages and TM are countable, but.
Class 39: Universality cs1120 Fall 2009 David Evans University of Virginia.
Nathan Brunelle Department of Computer Science University of Virginia Theory of Computation CS3102 – Spring 2014 A tale.
INHERENT LIMITATIONS OF COMPUTER PROGRAMS CSci 4011.
Complexity 7-1 Complexity Andrei Bulatov Complexity of Problems.
Applied Computer Science II Chapter 3 : Turing Machines Prof. Dr. Luc De Raedt Institut für Informatik Albert-Ludwigs Universität Freiburg Germany.
CS5371 Theory of Computation Lecture 11: Computability Theory II (TM Variants, Church-Turing Thesis)
Complexity 5-1 Complexity Andrei Bulatov Complexity of Problems.
Lecture 5 Turing Machines
CIS 197 Computers in Society Professor John Peterson Philosophy Week!
November 3, 2009Introduction to Cognitive Science Lecture 15: Theory of Computation II 1 Languages Accepted by Turing Machines Example 2: Language L =
Automata & Formal Languages, Feodor F. Dragan, Kent State University 1 CHAPTER 5 Reducibility Contents Undecidable Problems from Language Theory.
1 Foundations of Software Design Fall 2002 Marti Hearst Lecture 29: Computability, Turing Machines, Can Computers Think?
Computability and Complexity 3-1 Turing Machine Computability and Complexity Andrei Bulatov.
1 CSE 417: Algorithms and Computational Complexity Winter 2001 Lecture 18 Instructor: Paul Beame.
January 28, 2015CS21 Lecture 101 CS21 Decidability and Tractability Lecture 10 January 28, 2015.
Turing Machines CS 105: Introduction to Computer Science.
Theory of Computation. Computation Computation is a general term for any type of information processing that can be represented as an algorithm precisely.
Cs3102: Theory of Computation Class 20: Busy Beavers Spring 2010 University of Virginia David Evans Office hours: I am not able to hold my Thursday morning.
Theory of Computation 1 Theory of Computation Peer Instruction Lecture Slides by Dr. Cynthia Lee, UCSD are licensed under a Creative Commons Attribution-NonCommercial-ShareAlike.
INHERENT LIMITATIONS OF COMPUTER PROGRAMS CSci 4011.
More Theory of Computing
Remaining Topics Decidability Concept 4.1 The Halting Problem 4.2
CSE 105 Theory of Computation Alexander Tsiatas Spring 2012 Theory of Computation Lecture Slides by Alexander Tsiatas is licensed under a Creative Commons.
CSCI 4325 / 6339 Theory of Computation Zhixiang Chen.
Cs3102: Theory of Computation Class 18: Proving Undecidability Spring 2010 University of Virginia David Evans.
Announcements Homework – HW8 due Tues 5/29 11am – HW5 grades are out Monday is Memorial Day; no office hours, etc. – Go see a parade, or some fireworks,
The Church-Turing Thesis Lecture by H. Munoz-Avila.
CSE 105 Theory of Computation Alexander Tsiatas Spring 2012 Theory of Computation Lecture Slides by Alexander Tsiatas is licensed under a Creative Commons.
Introduction to CS Theory Lecture 15 –Turing Machines Piotr Faliszewski
CSE 105 Theory of Computation Alexander Tsiatas Spring 2012 Theory of Computation Lecture Slides by Alexander Tsiatas is licensed under a Creative Commons.
CSE 105 Theory of Computation Alexander Tsiatas Spring 2012 Theory of Computation Lecture Slides by Alexander Tsiatas is licensed under a Creative Commons.
Tutorial: Reduction from A TM Proofs Dr. Cynthia Lee CSE 105, UCSD Spring 2011 Theory of Computation Peer Instruction Lecture Slides by Dr. Cynthia Lee,
Halting Problem Introduction to Computing Science and Programming I.
CSE 311 Foundations of Computing I Lecture 26 Computability: Turing machines, Undecidability of the Halting Problem Spring
CSE 311 Foundations of Computing I Lecture 29 Computability: Turing machines, Undecidability of the Halting Problem Autumn 2012 CSE 3111.
CSE 105 Theory of Computation Alexander Tsiatas Spring 2012 Theory of Computation Lecture Slides by Alexander Tsiatas is licensed under a Creative Commons.
Turing Machines and the Halting Problem This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported License. To.
CSE 105 Theory of Computation Alexander Tsiatas Spring 2012 Theory of Computation Lecture Slides by Alexander Tsiatas is licensed under a Creative Commons.
Computer Science 101 Theory of Computing. Computer Science is... The study of algorithms, with respect to –their formal properties –their linguistic realizations.
CSE 105 Theory of Computation Alexander Tsiatas Spring 2012 Theory of Computation Lecture Slides by Alexander Tsiatas is licensed under a Creative Commons.
CSCI 2670 Introduction to Theory of Computing October 12, 2005.
 2005 SDU Lecture13 Reducibility — A methodology for proving un- decidability.
CSE 311 Foundations of Computing I Lecture 26 Cardinality, Countability & Computability Autumn 2011 CSE 3111.
CS 208: Computing Theory Assoc. Prof. Dr. Brahim Hnich
Fundamentals of Informatics Lecture 12 The Halting Problem Bas Luttik.
Automata & Formal Languages, Feodor F. Dragan, Kent State University 1 CHAPTER 3 The Church-Turing Thesis Contents Turing Machines definitions, examples,
Umans Complexity Theory Lectures Lecture 1b: Turing Machines & Halting Problem.
CSE 105 Theory of Computation Alexander Tsiatas Spring 2012 Theory of Computation Lecture Slides by Alexander Tsiatas is licensed under a Creative Commons.
Undecidability and The Halting Problem
CSE 105 Theory of Computation Alexander Tsiatas Spring 2012 Theory of Computation Lecture Slides by Alexander Tsiatas is licensed under a Creative Commons.
The Church-Turing Thesis
The Church-Turing Thesis Chapter Are We Done? FSM  PDA  Turing machine Is this the end of the line? There are still problems we cannot solve:
MA/CSSE 474 Theory of Computation Universal Turing Machine Church-Turing Thesis (Winter 2016, these slides were also used for Day 33)
Fall 2014 Lecture 29: Turing machines and more decidability CSE 311: Foundations of Computing.
Fall 2013 Lecture 27: Turing machines and decidability CSE 311: Foundations of Computing.
Recursively Enumerable and Recursive Languages
CSE 105 Theory of Computation
CSE 311 Foundations of Computing I
Reductions Costas Busch - LSU.
Busch Complexity Lectures: Undecidable Problems (unsolvable problems)
Chapter 3: The CHURCH-Turing thesis
Decidable Languages Costas Busch - LSU.
CS154, Lecture 12: Time Complexity
2. Turing’s Thesis Continued The Halting Problem
The Church-Turing Thesis and Turing-completeness
Presentation transcript:

CSE 105 Theory of Computation Alexander Tsiatas Spring 2012 Theory of Computation Lecture Slides by Alexander Tsiatas is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported License. Based on a work at Permissions beyond the scope of this license may be available at

WHY DO WE CARE ABOUT TURING MACHINES? Alan Turing was a genius and all, but… 2

Why do we care about Turing Machines? All modern computers follow the Turing Machine model – CPU = TM control – Memory = TM tape – This division seems obvious now, but is the core of Turing’s model Our memory isn’t infinite  – Theoretical analysis of TMs answers the question: what kinds of problems could we solve (or can’t we solve), if we didn’t have to worry about memory limitations (sometimes with computing “cloud” it feels like we’re almost to that point!) “Memory” can include all levels of the memory hierarchy (more about this in CSE 141): RAM, disk, etc 3 Alan Turing was a genius and all, but…

Church-Turing Thesis Alonzo Church devised a λ-calculus definition of algorithms – Basis for programming languages like O’Caml Alan Turing proposed a Turing Machine definition of algorithms It is shown that these two independent approaches are equivalent in power

Another reason why we care about TM’s Show that language L is decidable. – Translation: Show that it is possible to write a program that determines if a string is in L or not. – Give a TM that decides language L OR – Give a Java function (with no infinite loops!) or Python script public static boolean isAPowerOfTwo(String w) { int i = Integer.parseInt(w); … } The Java function is easier to do, no?

Another reason why we care about TM’s Show that language L is NOT decidable. – PROVE that there is NO Java function or Python script (that always halts) that can decide if a string is in L or not. public boolean doesThisFunctionHalt(String w) { Function p = interpretAsFunction(w); … } Could you do this? Could I do this…?

Proofs using TM’s It is easier to prove theorems about Turing machines than Java programs because they are: a)Less powerful b)Less complicated c)Both

Proofs using TM’s We care about proving theorems about Turing machines because they are: a)Equivalent to statements about Java programs b)Required for CSE 105 c)Both

AND NOW…. MORE TURING MACHINE CONSTRUCTION EXAMPLES!!!!!!111

L = {1 n | n is a Fibonacci number} I promised this on Tuesday, didn’t I?

L = {w | w does NOT contain twice as many 0’s as 1’s}

L = {1 n | n is a prime number}