Turing machines Finite automaton no storage Pushdown automaton storage is a stack What if we give the automaton a more flexible storage?
|
|
- Dana Cole
- 6 years ago
- Views:
Transcription
1 Turing machines Finite automaton no storage Pushdown automaton storage is a stack What if we give the automaton a more flexible storage? What is the most powerful of automata? In this lecture we will introduce the Turing machine, a simple mathematical model of a computer. Despite its simplicity, the Turing machine is equivalent in computing power to the digital computer as we know it today.
2 The Turing machine model A formal model for an effective procedure should possess certain properties. 1. Each procedure should be finitely describable. 2. The procedure should consist of discrete steps, each of which can be carried out mechanically. Such a model was introduced by Alan Turing in 1936.
3 Turing machine A Turing machine (TM) is an automaton whose storage is a tape. This tape is divided into cells, each of which is capable of holding one symbol. It has a read-write head that can travel right or left and that can read and write a single symbol on each move. The TM has neither an input file nor any special output mechanism. Whatever input and output is necessary will be done on the machine s tape. Read-write head Control unit Tape
4 Turing machine Definition A Turing machine M is defined by M = (Q, Σ, Γ, δ, q 0,, F ), where Q is the set of states, Σ is the input alphabet, Γ is a finite set of symbols called the tape alphabet, δ is the transition function defined as δ : Q Γ Q Γ {L, R}, (the move symbols L, R indicate whether the read-write head moves left or right one cell after the new symbol has been written on the tape.) Γ is a special symbol called the blank, q 0 Q is the inital state, F Q is the set of final states. We assume that Σ Γ \ { }.
5 Turing machine The automaton starts in the given initial state with some information on the tape. It then goes through a sequence of steps controlled by δ. The contents of any cell on the tape may be examined and changed many times. Eventually the whole process may terminate, which is achieved by putting the TM into a halt state. A TM is said to halt whenever it reaches a configuration for which δ is not defined. We assume that no transitions are defined for any final state, so the TM will halt whenever it enters a final state.
6 Turing machine Example 1:
7 Turing machine Example 2:
8 Turing machine Summarizing the main features of our TM model: 1. The TM has a tape that is unbounded in both directions, allowing any number of left and right moves. 2. The TM is deterministic in the sense that δ defines at most one move for each configuration. 3. There is no special input file. We assume that at the inital time the tape has some specified content. 4. Similarly, there is no special output device. Whenever the machine halts, some or all of the contents of the tape may be viewed as output.
9 Turing machine The most convenient way to exhibit a sequence of configurations of a TM uses the idea of an instantaneous description. Any configuration is completely determined by the current state, the contents of the tape, and the position of the read-write head. We use the notation in which x 1 qx 2 or a 1 a 2... a k 1 qa k a k+1... a n is the instantaneous description of a machine in state q (scanning a k ).
10 Turing machine The instantaneous description gives only a finite amount of information to the right and left of the read-write head. The unspecified part of the tape is assumed to contain all blanks. If the position of blanks is relevant, the blank symbol may appear in the instantaneous description.
11 Turing machine A move from one configuration to another will be denoted by. If δ(q 1, c) = (q 2, e, R), then the move abq 1 cd abeq 2 d is made whenever the internal state is q 1, the tape contains abcd, and the read-write head is on the c. The symbol has the usual meaning of an arbitrary number of moves. We use M to distinguish between several machines.
12 Turing machine Definition Let M = (Q, Σ, Γ, δ, q 0,, F ) be a TM. Then any string a 1... a k 1 q 1 a k a k+1... a n, with a i Γ and q 1 Q is an instantaneous description of M. A move a 1... a k 1 q 1 a k a k+1... a n a 1... a k 1 bq 2 a k+1... a n is possible iff δ(q 1, a k ) = (q 2, b, R). A move a 1... a k 1 q 1 a k a k+1... a n a 1... q 2 a k 1 ba k+1... a n is possible iff δ(q 1, a k ) = (q 2, b, L).
13 Turing machine Definition (continued) M is said to halt starting from some inital configuration if x 1 q i x 2 x 1 q i x 2 y1 q j ay 2 for any q j and a, for which δ(q j, a) is undefined. The sequence of configurations leading to a halt state will be called a computation. If, from the initial configuration x 1 qx 2, the machine goes into a loop and never halts, then we write x 1 qx 2.
14 Turing machines as language acceptors A string w is written on the tape, with blanks filling out the unused portions. The machine is started in the initial state q 0 with the read-write head positioned on the leftmost symbol of w. If, after a sequence of moves, the TM enters a final state and halts, then w is considered to be accepted.
15 Turing machines as language acceptors Definition Let M = (Q, Σ, Γ, δ, q 0,, F ) be a Turing machine. The language accepted by M is L(M) = {w Σ + q 0 w x 1 q f x 2 for some q f F, x 1, x 2 Γ }. This definition tells us that the machine will halt when w L(M). When w is not in L(M) then the machine can halt in a non-final state or it can enter an infinite loop and never halt.
16 Turing machines as language acceptors Example: For Σ = {a, b}, we design a TM that accepts L = {a n b n n 1}. Intuitively, the problem is solved in the following fashion: Starting at the leftmost a we check it off by replacing it with some x aaabbb xaabbb We travel to the right to find the leftmost b, which we check off by replacing it with y. xaaybb We go left again to the leftmost a xaaybb Traveling back and forth we match each a with a corresponding b.
17 Turing machines as transducers Turing machines are not only interesting as language acceptors, they also provide us with a simple abstract model for digital computers. The primary purpose of a computer is to transform input to output, it acts as a transducer. Modeling computers using Turing machines The input for a computation will be all the nonblank symbols on the tape at the initial time. At the conclusion of the computation, the output will be whatever is then on the tape. Thus, we can view a TM transducer M as an implementation of a function f defined by ŵ = f(w), provided that q 0 w q f ŵ, for some final state q f.
18 Turing machines as transducers Definition A function f with domain D is said to be Turingcomputable or just computable if there exists some TM M = (Q, Σ, Γ, δ, q 0,, F ) such that q f F, for all w D. q 0 w q f f(w), All the common mathematical functions, no matter how complicated, are Turing-computable.
19 Turing machines as transducers Example: Given two positive integers x and y, we design a TM that computes x + y. We use unary notation to represent positive integers. Any positive integer x is represented by w(x) = {1} +, such that w(x) = x. Initially w(x) and w(y) are on the tape in unary notation, seperated by a single 0, with the read-write head on the leftmost symbol of w(x). After computation, w(x + y) in on the tape followed by a single 0, and the read-write head positioned at the left end of the result.
20 Turing machines as transducers Example (continued): We want to design a TM for performing the computation where q f is a final state. q 0 w(x)0w(y) q f w(x + y)0, All we need to do is to move the seperating 0 to the right end of w(y), so that the addition amounts to nothing more than the concatenation of the two strings. Unary notation for practical computations is cumbersome, but very convenient for programming Turing machines. The resulting programs are much shorter and simpler than binary or decimal representations.
21 Turing machines as transducers Adding numbers is one of the fundamental operations of any computer, one that plays a part in the synthesis of more complicated instructions. Other basic operations are copying strings and simple comparisons. These can also be done easily on a Turing machine.
22 Turing machines as transducers Example: Let x and y be two positive integers represented in unary notation. We construct a Turing machine that will halt in a final state q y if x y and that will halt in a non-final state q n if x < y. More precisely, the machine is to perform the computation q 0 w(x)0w(y) q y w(x)0w(y) if x y, q 0 w(x)0w(y) q n w(x)0w(y) if x < y. Instead of matching a s and b s, we match each 1 on the left of the dividing 0 with the 1 on the right.
23 Turing machines as transducers Example (continued): At the end of the matching, we will have on the tape either xx xx... x or xx... xx0xx... x11, depending on whether x > y or y > x. In the first case, when we attempt to match another 1, we encounter the blank at the right of the working space. This can be used as a signal to enter the state q y (halt in final state). In the second case, we still find a 1 on the right when all 1 s on the left have been replaced. We use this to get into the state q n (halt in non-final state). This example makes the important point that a TM can be programmed to make decisions based on arithmetic comparisons.
24 Combining TM s for complicated tasks We have shown explicitly how some important operations found in all computers can be done on a TM. Since, in digital computers, such primitive operations are the building blocks for more complex instructions, let us see how these basic operations can also be put together on a TM. We can describe TM s in several ways at a high level, namely either with pseudo code or block diagrams. In a block diagram, we encapsulate computations in boxes whose function is described, but whose interior details are not shown. By using such boxes, we implicitly claim that they can actually be constructed.
25 Combining TM s for complicated tasks Example: Designing a TM that computes the function f(x, y) = x + y if x y, = 0 if x < y. We first use a comparing machine to determine whether or not x y. If so, the comparer sends a start signal to the adder which then computes x + y. If not, the eraser is started and changes every 1 to a blank.
26 Combining TM s for complicated tasks Example (continued): The computations to be done by the Comparer C are q C,0 w(x)0w(y) q A,0 w(x)0w(y) if x y, q C,0 w(x)0w(y) q E,0 w(x)0w(y) if x < y. Computations performed by the adder A q A,0 w(x)0w(y) q A,f w(x + y)0 Computations performed by the eraser E q E,0 w(x)0w(y) q E,f 0 The result is a single TM that combines the action of C, A, and E.
27 References LINZ, P. An introduction to Formal Languages and Automata. Jones and Bartlett Learning, HOPCROFT, J. and ULLMAN, J. Introduction to Automata Theory, Languages and Computation. Addison-Wesley, 1979.
CSci 311, Models of Computation Chapter 9 Turing Machines
CSci 311, Models of Computation Chapter 9 Turing Machines H. Conrad Cunningham 29 December 2015 Contents Introduction................................. 1 9.1 The Standard Turing Machine...................
More informationTuring Machines. Wen-Guey Tzeng Computer Science Department National Chiao Tung University
Turing Machines Wen-Guey Tzeng Computer Science Department National Chiao Tung University Alan Turing One of the first to conceive a machine that can run computation mechanically without human intervention.
More informationTuring Machines. The Language Hierarchy. Context-Free Languages. Regular Languages. Courtesy Costas Busch - RPI 1
Turing Machines a n b n c The anguage Hierarchy n? ww? Context-Free anguages a n b n egular anguages a * a *b* ww Courtesy Costas Busch - PI a n b n c n Turing Machines anguages accepted by Turing Machines
More informationThe Turing Machine. CSE 211 (Theory of Computation) The Turing Machine continued. Turing Machines
The Turing Machine Turing Machines Professor Department of Computer Science and Engineering Bangladesh University of Engineering and Technology Dhaka-1000, Bangladesh The Turing machine is essentially
More informationECS 120 Lesson 15 Turing Machines, Pt. 1
ECS 120 Lesson 15 Turing Machines, Pt. 1 Oliver Kreylos Wednesday, May 2nd, 2001 Before we can start investigating the really interesting problems in theoretical computer science, we have to introduce
More informationTuring Machines Part II
Turing Machines Part II COMP2600 Formal Methods for Software Engineering Katya Lebedeva Australian National University Semester 2, 2016 Slides created by Katya Lebedeva COMP 2600 Turing Machines 1 Why
More informationPart I: Definitions and Properties
Turing Machines Part I: Definitions and Properties Finite State Automata Deterministic Automata (DFSA) M = {Q, Σ, δ, q 0, F} -- Σ = Symbols -- Q = States -- q 0 = Initial State -- F = Accepting States
More informationTheory of Computation - Module 4
Theory of Computation - Module 4 Syllabus Turing Machines Formal definition Language acceptability by TM TM as acceptors, Transducers - designing of TM- Two way infinite TM- Multi tape TM - Universal Turing
More informationMost General computer?
Turing Machines Most General computer? DFAs are simple model of computation. Accept only the regular languages. Is there a kind of computer that can accept any language, or compute any function? Recall
More informationChapter 8. Turing Machine (TMs)
Chapter 8 Turing Machine (TMs) Turing Machines (TMs) Accepts the languages that can be generated by unrestricted (phrase-structured) grammars No computational machine (i.e., computational language recognition
More informationTuring Machines. Nicholas Geis. February 5, 2015
Turing Machines Nicholas Geis February 5, 2015 Disclaimer: This portion of the notes does not talk about Cellular Automata or Dynamical Systems, it talks about turing machines, however this will lay the
More informationwhere Q is a finite set of states
Space Complexity So far most of our theoretical investigation on the performances of the various algorithms considered has focused on time. Another important dynamic complexity measure that can be associated
More information1 Unrestricted Computation
1 Unrestricted Computation General Computing Machines Machines so far: DFAs, NFAs, PDAs Limitations on how much memory they can use: fixed amount of memory plus (for PDAs) a stack Limitations on what they
More informationIntroduction to Turing Machines
Introduction to Turing Machines Deepak D Souza Department of Computer Science and Automation Indian Institute of Science, Bangalore. 12 November 2015 Outline 1 Turing Machines 2 Formal definitions 3 Computability
More informationAutomata Theory (2A) Young Won Lim 5/31/18
Automata Theory (2A) Copyright (c) 2018 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later
More informationFundamentals of Computer Science
Fundamentals of Computer Science Chapter 8: Turing machines Henrik Björklund Umeå University February 17, 2014 The power of automata Finite automata have only finite memory. They recognize the regular
More informationBusch Complexity Lectures: Turing Machines. Prof. Busch - LSU 1
Busch Complexity ectures: Turing Machines Prof. Busch - SU 1 The anguage Hierarchy a n b n c n? ww? Context-Free anguages n b n a ww egular anguages a* a *b* Prof. Busch - SU 2 a n b anguages accepted
More informationChapter 2: Finite Automata
Chapter 2: Finite Automata 2.1 States, State Diagrams, and Transitions Finite automaton is the simplest acceptor or recognizer for language specification. It is also the simplest model of a computer. A
More informationGriffith University 3130CIT Theory of Computation (Based on slides by Harald Søndergaard of The University of Melbourne) Turing Machines 9-0
Griffith University 3130CIT Theory of Computation (Based on slides by Harald Søndergaard of The University of Melbourne) Turing Machines 9-0 Turing Machines Now for a machine model of much greater power.
More informationCS5371 Theory of Computation. Lecture 10: Computability Theory I (Turing Machine)
CS537 Theory of Computation Lecture : Computability Theory I (Turing Machine) Objectives Introduce the Turing Machine (TM) Proposed by Alan Turing in 936 finite-state control + infinitely long tape A stronger
More informationCS5371 Theory of Computation. Lecture 10: Computability Theory I (Turing Machine)
CS537 Theory of Computation Lecture : Computability Theory I (Turing Machine) Objectives Introduce the Turing Machine (TM)? Proposed by Alan Turing in 936 finite-state control + infinitely long tape A
More informationTuring Machines (TM) Deterministic Turing Machine (DTM) Nondeterministic Turing Machine (NDTM)
Turing Machines (TM) Deterministic Turing Machine (DTM) Nondeterministic Turing Machine (NDTM) 1 Deterministic Turing Machine (DTM).. B B 0 1 1 0 0 B B.. Finite Control Two-way, infinite tape, broken into
More informationQ = Set of states, IE661: Scheduling Theory (Fall 2003) Primer to Complexity Theory Satyaki Ghosh Dastidar
IE661: Scheduling Theory (Fall 2003) Primer to Complexity Theory Satyaki Ghosh Dastidar Turing Machine A Turing machine is an abstract representation of a computing device. It consists of a read/write
More informationAutomata Theory - Quiz II (Solutions)
Automata Theory - Quiz II (Solutions) K. Subramani LCSEE, West Virginia University, Morgantown, WV {ksmani@csee.wvu.edu} 1 Problems 1. Induction: Let L denote the language of balanced strings over Σ =
More informationcse303 ELEMENTS OF THE THEORY OF COMPUTATION Professor Anita Wasilewska
cse303 ELEMENTS OF THE THEORY OF COMPUTATION Professor Anita Wasilewska LECTURE 13 CHAPTER 4 TURING MACHINES 1. The definition of Turing machine 2. Computing with Turing machines 3. Extensions of Turing
More informationChapter 7 Turing Machines
Chapter 7 Turing Machines Copyright 2011 The McGraw-Hill Companies, Inc. Permission required for reproduction or display. 1 A General Model of Computation Both finite automata and pushdown automata are
More informationX-machines - a computational model framework.
Chapter 2. X-machines - a computational model framework. This chapter has three aims: To examine the main existing computational models and assess their computational power. To present the X-machines as
More informationComputation Histories
208 Computation Histories The computation history for a Turing machine on an input is simply the sequence of configurations that the machine goes through as it processes the input. An accepting computation
More informationNon-emptiness Testing for TMs
180 5. Reducibility The proof of unsolvability of the halting problem is an example of a reduction: a way of converting problem A to problem B in such a way that a solution to problem B can be used to
More information7.2 Turing Machines as Language Acceptors 7.3 Turing Machines that Compute Partial Functions
CSC4510/6510 AUTOMATA 7.1 A General Model of Computation 7.2 Turing Machines as Language Acceptors 7.3 Turing Machines that Compute Partial Functions A General Model of Computation Both FA and PDA are
More informationTuring Machines Part III
Turing Machines Part III Announcements Problem Set 6 due now. Problem Set 7 out, due Monday, March 4. Play around with Turing machines, their powers, and their limits. Some problems require Wednesday's
More informationCSCC63 Worksheet Turing Machines
1 An Example CSCC63 Worksheet Turing Machines Goal. Design a turing machine, M that accepts only strings of the form {w#w w {0, 1} }. Idea. Describe in words how the machine would work. Read first symbol
More informationTheory of Computation
Theory of Computation Lecture #2 Sarmad Abbasi Virtual University Sarmad Abbasi (Virtual University) Theory of Computation 1 / 1 Lecture 2: Overview Recall some basic definitions from Automata Theory.
More informationComputability and Complexity
Computability and Complexity Lecture 5 Reductions Undecidable problems from language theory Linear bounded automata given by Jiri Srba Lecture 5 Computability and Complexity 1/14 Reduction Informal Definition
More informationLecture 14: Recursive Languages
Lecture 14: Recursive Languages Instructor: Ketan Mulmuley Scriber: Yuan Li February 24, 2015 1 Recursive Languages Definition 1.1. A language L Σ is called recursively enumerable (r. e.) or computably
More informationThe Power of One-State Turing Machines
The Power of One-State Turing Machines Marzio De Biasi Jan 15, 2018 Abstract At first glance, one state Turing machines are very weak: the Halting problem for them is decidable, and, without memory, they
More informationCSE355 SUMMER 2018 LECTURES TURING MACHINES AND (UN)DECIDABILITY
CSE355 SUMMER 2018 LECTURES TURING MACHINES AND (UN)DECIDABILITY RYAN DOUGHERTY If we want to talk about a program running on a real computer, consider the following: when a program reads an instruction,
More informationChapter 6: Turing Machines
Chapter 6: Turing Machines 6.1 The Turing Machine Definition A deterministic Turing machine (DTM) M is specified by a sextuple (Q, Σ, Γ, δ, s, f), where Q is a finite set of states; Σ is an alphabet of
More informationHomework 8. a b b a b a b. two-way, read/write
Homework 8 309 Homework 8 1. Describe a TM that accepts the set {a n n is a power of 2}. Your description should be at the level of the descriptions in Lecture 29 of the TM that accepts {ww w Σ } and the
More informationCpSc 421 Homework 9 Solution
CpSc 421 Homework 9 Solution Attempt any three of the six problems below. The homework is graded on a scale of 100 points, even though you can attempt fewer or more points than that. Your recorded grade
More informationComputability Theory. CS215, Lecture 6,
Computability Theory CS215, Lecture 6, 2000 1 The Birth of Turing Machines At the end of the 19th century, Gottlob Frege conjectured that mathematics could be built from fundamental logic In 1900 David
More informationLecture 13: Turing Machine
Lecture 13: Turing Machine Instructor: Ketan Mulmuley Scriber: Yuan Li February 19, 2015 Turing machine is an abstract machine which in principle can simulate any computation in nature. Church-Turing Thesis:
More informationIntroduction to Languages and Computation
Introduction to Languages and Computation George Voutsadakis 1 1 Mathematics and Computer Science Lake Superior State University LSSU Math 400 George Voutsadakis (LSSU) Languages and Computation July 2014
More informationTheory of Computation Turing Machine and Pushdown Automata
Theory of Computation Turing Machine and Pushdown Automata 1. What is a Turing Machine? A Turing Machine is an accepting device which accepts the languages (recursively enumerable set) generated by type
More informationTuring Machines. Lecture 8
Turing Machines Lecture 8 1 Course Trajectory We will see algorithms, what can be done. But what cannot be done? 2 Computation Problem: To compute a function F that maps each input (a string) to an output
More informationUNIT 1 TURING MACHINE
UNIT 1 TURING MACHINE Structure Page Nos. 1.0 Introduction 5 1.1 Objectives 7 1.2 Prelude to Formal Definition 7 1.3 : Formal Definition and Examples 9 1.4 Instantaneous Description and Transition Diagram
More informationLecture notes on Turing machines
Lecture notes on Turing machines Ivano Ciardelli 1 Introduction Turing machines, introduced by Alan Turing in 1936, are one of the earliest and perhaps the best known model of computation. The importance
More informationFORMAL LANGUAGES, AUTOMATA AND COMPUTATION
FORMAL LANGUAGES, AUTOMATA AND COMPUTATION DECIDABILITY ( LECTURE 15) SLIDES FOR 15-453 SPRING 2011 1 / 34 TURING MACHINES-SYNOPSIS The most general model of computation Computations of a TM are described
More informationTuring Machines (TM) The Turing machine is the ultimate model of computation.
TURING MACHINES Turing Machines (TM) The Turing machine is the ultimate model of computation. Alan Turing (92 954), British mathematician/engineer and one of the most influential scientists of the last
More informationTuring s thesis: (1930) Any computation carried out by mechanical means can be performed by a Turing Machine
Turing s thesis: (1930) Any computation carried out by mechanical means can be performed by a Turing Machine There is no known model of computation more powerful than Turing Machines Definition of Algorithm:
More informationTesting Emptiness of a CFL. Testing Finiteness of a CFL. Testing Membership in a CFL. CYK Algorithm
Testing Emptiness of a CFL As for regular languages, we really take a representation of some language and ask whether it represents φ Can use either CFG or PDA Our choice, since there are algorithms to
More informationTuring Machines. Wolfgang Schreiner
Turing Machines Wolfgang Schreiner Wolfgang.Schreiner@risc.jku.at Research Institute for Symbolic Computation (RISC) Johannes Kepler University, Linz, Austria http://www.risc.jku.at Wolfgang Schreiner
More informationAnnouncements. Problem Set 6 due next Monday, February 25, at 12:50PM. Midterm graded, will be returned at end of lecture.
Turing Machines Hello Hello Condensed Slide Slide Readers! Readers! This This lecture lecture is is almost almost entirely entirely animations that that show show how how each each Turing Turing machine
More informationThe Church-Turing Thesis
The Church-Turing Thesis Huan Long Shanghai Jiao Tong University Acknowledgements Part of the slides comes from a similar course in Fudan University given by Prof. Yijia Chen. http://basics.sjtu.edu.cn/
More informationTuring Machines, diagonalization, the halting problem, reducibility
Notes on Computer Theory Last updated: September, 015 Turing Machines, diagonalization, the halting problem, reducibility 1 Turing Machines A Turing machine is a state machine, similar to the ones we have
More informationRecap DFA,NFA, DTM. Slides by Prof. Debasis Mitra, FIT.
Recap DFA,NFA, DTM Slides by Prof. Debasis Mitra, FIT. 1 Formal Language Finite set of alphabets Σ: e.g., {0, 1}, {a, b, c}, { {, } } Language L is a subset of strings on Σ, e.g., {00, 110, 01} a finite
More informationIntroduction to Turing Machines. Reading: Chapters 8 & 9
Introduction to Turing Machines Reading: Chapters 8 & 9 1 Turing Machines (TM) Generalize the class of CFLs: Recursively Enumerable Languages Recursive Languages Context-Free Languages Regular Languages
More informationTuring Machines. 22c:135 Theory of Computation. Tape of a Turing Machine (TM) TM versus FA, PDA
Turing Machines A Turing machine is similar to a finite automaton with supply of unlimited memory. A Turing machine can do everything that any computing device can do. There exist problems that even a
More informationCSE 105 THEORY OF COMPUTATION
CSE 105 THEORY OF COMPUTATION Spring 2018 http://cseweb.ucsd.edu/classes/sp18/cse105-ab/ Today's learning goals Sipser Ch 5.1, 5.3 Define and explain core examples of computational problems, including
More informationCS21 Decidability and Tractability
CS21 Decidability and Tractability Lecture 8 January 24, 2018 Outline Turing Machines and variants multitape TMs nondeterministic TMs Church-Turing Thesis So far several models of computation finite automata
More informationCS4026 Formal Models of Computation
CS4026 Formal Models of Computation Turing Machines Turing Machines Abstract but accurate model of computers Proposed by Alan Turing in 1936 There weren t computers back then! Turing s motivation: find
More informationThe Turing machine model of computation
The Turing machine model of computation For most of the remainder of the course we will study the Turing machine model of computation, named after Alan Turing (1912 1954) who proposed the model in 1936.
More informationIV. Turing Machine. Yuxi Fu. BASICS, Shanghai Jiao Tong University
IV. Turing Machine Yuxi Fu BASICS, Shanghai Jiao Tong University Alan Turing Alan Turing (23Jun.1912-7Jun.1954), an English student of Church, introduced a machine model for effective calculation in On
More informationDecision Problems with TM s. Lecture 31: Halting Problem. Universe of discourse. Semi-decidable. Look at following sets: CSCI 81 Spring, 2012
Decision Problems with TM s Look at following sets: Lecture 31: Halting Problem CSCI 81 Spring, 2012 Kim Bruce A TM = { M,w M is a TM and w L(M)} H TM = { M,w M is a TM which halts on input w} TOTAL TM
More informationA Note on Turing Machine Design
CS103 Handout 17 Fall 2013 November 11, 2013 Problem Set 7 This problem explores Turing machines, nondeterministic computation, properties of the RE and R languages, and the limits of RE and R languages.
More informationUNIT-VIII COMPUTABILITY THEORY
CONTEXT SENSITIVE LANGUAGE UNIT-VIII COMPUTABILITY THEORY A Context Sensitive Grammar is a 4-tuple, G = (N, Σ P, S) where: N Set of non terminal symbols Σ Set of terminal symbols S Start symbol of the
More informationTWO-WAY FINITE AUTOMATA & PEBBLE AUTOMATA. Written by Liat Peterfreund
TWO-WAY FINITE AUTOMATA & PEBBLE AUTOMATA Written by Liat Peterfreund 1 TWO-WAY FINITE AUTOMATA A two way deterministic finite automata (2DFA) is a quintuple M Q,,, q0, F where: Q,, q, F are as before
More informationIntroduction to Formal Languages, Automata and Computability p.1/42
Introduction to Formal Languages, Automata and Computability Pushdown Automata K. Krithivasan and R. Rama Introduction to Formal Languages, Automata and Computability p.1/42 Introduction We have considered
More informationChapter 3: The Church-Turing Thesis
Chapter 3: The Church-Turing Thesis 1 Turing Machine (TM) Control... Bi-direction Read/Write Turing machine is a much more powerful model, proposed by Alan Turing in 1936. 2 Church/Turing Thesis Anything
More informationEquivalent Variations of Turing Machines
Equivalent Variations of Turing Machines Nondeterministic TM = deterministic TM npda = pushdown automata with n stacks 2PDA = npda = TM for all n 2 Turing machines with n tapes (n 2) and n tape heads has
More informationHIS LEGACY. 100 Years Turing celebration. Gordana Dodig Crnkovic, IDT Open Seminar. Computer Science and Network Department Mälardalen University
IDT Open Seminar AAN TUING AND HIS EGACY 00 Years Turing celebration http://www.mrtc.mdh.se/~gdc/work/turingcentenary.pdf http://www.mrtc.mdh.se/ mdh se/~gdc/work/turingmachine.pdf Gordana Dodig Crnkovic,
More informationConfusion of Memory. Lawrence S. Moss. Department of Mathematics Indiana University Bloomington, IN USA February 14, 2008
Confusion of Memory Lawrence S. Moss Department of Mathematics Indiana University Bloomington, IN 47405 USA February 14, 2008 Abstract It is a truism that for a machine to have a useful access to memory
More informationHarvard CS 121 and CSCI E-121 Lecture 14: Turing Machines and the Church Turing Thesis
Harvard CS 121 and CSCI E-121 Lecture 14: Turing Machines and the Church Turing Thesis Harry Lewis October 22, 2013 Reading: Sipser, 3.2, 3.3. The Basic Turing Machine The Basic Turing Machine a a b a
More informationjflap demo Regular expressions Pumping lemma Turing Machines Sections 12.4 and 12.5 in the text
On the menu today jflap demo Regular expressions Pumping lemma Turing Machines Sections 12.4 and 12.5 in the text 1 jflap Demo jflap: Useful tool for creating and testing abstract machines Finite automata,
More informationCPSC 421: Tutorial #1
CPSC 421: Tutorial #1 October 14, 2016 Set Theory. 1. Let A be an arbitrary set, and let B = {x A : x / x}. That is, B contains all sets in A that do not contain themselves: For all y, ( ) y B if and only
More informationCSCE 551: Chin-Tser Huang. University of South Carolina
CSCE 551: Theory of Computation Chin-Tser Huang huangct@cse.sc.edu University of South Carolina Computation History A computation history of a TM M is a sequence of its configurations C 1, C 2,, C l such
More informationFinite Automata. Mahesh Viswanathan
Finite Automata Mahesh Viswanathan In this lecture, we will consider different models of finite state machines and study their relative power. These notes assume that the reader is familiar with DFAs,
More informationCS20a: Turing Machines (Oct 29, 2002)
CS20a: Turing Machines (Oct 29, 2002) So far: DFA = regular languages PDA = context-free languages Today: Computability 1 Handicapped machines DFA limitations Tape head moves only one direction 2-way DFA
More informationCSE 105 THEORY OF COMPUTATION
CSE 105 THEORY OF COMPUTATION Fall 2016 http://cseweb.ucsd.edu/classes/fa16/cse105-abc/ Today's learning goals Sipser Ch 3 Trace the computation of a Turing machine using its transition function and configurations.
More informationTheory of Computation
Thomas Zeugmann Hokkaido University Laboratory for Algorithmics http://www-alg.ist.hokudai.ac.jp/ thomas/toc/ Lecture 12: Turing Machines Turing Machines I After having dealt with partial recursive functions,
More informationBusch Complexity Lectures: Turing s Thesis. Costas Busch - LSU 1
Busch Complexity Lectures: Turing s Thesis Costas Busch - LSU 1 Turing s thesis (1930): Any computation carried out by mechanical means can be performed by a Turing Machine Costas Busch - LSU 2 Algorithm:
More informationTuring Machines. Chapter 17
Turing Machines Chapter 17 Languages and Machines SD D Context-Free Languages Regular Languages reg exps FSMs cfgs PDAs unrestricted grammars Turing Machines Grammars, SD Languages, and Turing Machines
More informationTheory of Computation
Theory of Computation Unit 4-6: Turing Machines and Computability Decidability and Encoding Turing Machines Complexity and NP Completeness Syedur Rahman syedurrahman@gmail.com Turing Machines Q The set
More informationPost s Correspondence Problem (PCP) Is Undecidable. Presented By Bharath Bhushan Reddy Goulla
Post s Correspondence Problem (PCP) Is Undecidable Presented By Bharath Bhushan Reddy Goulla Contents : Introduction What Is PCP? Instances Of PCP? Introduction Of Modified PCP (MPCP) Why MPCP? Reducing
More informationTuring Machines and the Church-Turing Thesis
CSE2001, Fall 2006 1 Turing Machines and the Church-Turing Thesis Today our goal is to show that Turing Machines are powerful enough to model digital computers, and to see discuss some evidence for the
More informationCOMPARATIVE ANALYSIS ON TURING MACHINE AND QUANTUM TURING MACHINE
Volume 3, No. 5, May 2012 Journal of Global Research in Computer Science REVIEW ARTICLE Available Online at www.jgrcs.info COMPARATIVE ANALYSIS ON TURING MACHINE AND QUANTUM TURING MACHINE Tirtharaj Dash
More informationLecture 12: Mapping Reductions
Lecture 12: Mapping Reductions October 18, 2016 CS 1010 Theory of Computation Topics Covered 1. The Language EQ T M 2. Mapping Reducibility 3. The Post Correspondence Problem 1 The Language EQ T M The
More information6.045: Automata, Computability, and Complexity Or, Great Ideas in Theoretical Computer Science Spring, Class 8 Nancy Lynch
6.045: Automata, Computability, and Complexity Or, Great Ideas in Theoretical Computer Science Spring, 2010 Class 8 Nancy Lynch Today More undecidable problems: About Turing machines: Emptiness, etc. About
More information1 Showing Recognizability
CSCC63 Worksheet Recognizability and Decidability 1 1 Showing Recognizability 1.1 An Example - take 1 Let Σ be an alphabet. L = { M M is a T M and L(M) }, i.e., that M accepts some string from Σ. Prove
More informationTuring machines COMS Ashley Montanaro 21 March Department of Computer Science, University of Bristol Bristol, UK
COMS11700 Turing machines Department of Computer Science, University of Bristol Bristol, UK 21 March 2014 COMS11700: Turing machines Slide 1/15 Introduction We have seen two models of computation: finite
More informationSolution Scoring: SD Reg exp.: a(a
MA/CSSE 474 Exam 3 Winter 2013-14 Name Solution_with explanations Section: 02(3 rd ) 03(4 th ) 1. (28 points) For each of the following statements, circle T or F to indicate whether it is True or False.
More informationReducability. Sipser, pages
Reducability Sipser, pages 187-214 Reduction Reduction encodes (transforms) one problem as a second problem. A solution to the second, can be transformed into a solution to the first. We expect both transformations
More information(a) Definition of TMs. First Problem of URMs
Sec. 4: Turing Machines First Problem of URMs (a) Definition of the Turing Machine. (b) URM computable functions are Turing computable. (c) Undecidability of the Turing Halting Problem That incrementing
More informationTuring Machines A Turing Machine is a 7-tuple, (Q, Σ, Γ, δ, q0, qaccept, qreject), where Q, Σ, Γ are all finite
The Church-Turing Thesis CS60001: Foundations of Computing Science Professor, Dept. of Computer Sc. & Engg., Turing Machines A Turing Machine is a 7-tuple, (Q, Σ, Γ, δ, q 0, q accept, q reject ), where
More informationComplexity Theory Turing Machines
Complexity Theory Turing Machines Joseph Spring Department of Computer Science 3COM0074 - Quantum Computing / QIP QC - Lecture 2 1 Areas for Discussion Algorithms Complexity Theory and Computing Models
More informationIntroduction: Computer Science is a cluster of related scientific and engineering disciplines concerned with the study and application of computations. These disciplines range from the pure and basic scientific
More informationV Honors Theory of Computation
V22.0453-001 Honors Theory of Computation Problem Set 3 Solutions Problem 1 Solution: The class of languages recognized by these machines is the exactly the class of regular languages, thus this TM variant
More informationThe tape of M. Figure 3: Simulation of a Turing machine with doubly infinite tape
UG3 Computability and Intractability (2009-2010): Note 4 4. Bells and whistles. In defining a formal model of computation we inevitably make a number of essentially arbitrary design decisions. These decisions
More informationarxiv: v1 [cs.cc] 3 Feb 2019
Some Remarks on Real-Time Turing Machines (Preliminary Report) arxiv:1902.00975v1 [cs.cc] 3 Feb 2019 Holger Petersen Reinsburgstr. 75 70197 Stuttgart February 5, 2019 Abstract The power of real-time Turing
More informationNondeterministic Finite Automata
Nondeterministic Finite Automata Mahesh Viswanathan Introducing Nondeterminism Consider the machine shown in Figure. Like a DFA it has finitely many states and transitions labeled by symbols from an input
More information