Programming the TM qa  (,q) (,q) q1q1 0q1q1 R q1q1 1q1q1 R q1q1  h  Qa  (,q) (,q) q1q1 0q2q2  q1q1 1q3q3  q1q1  h  q2q2 0q4q4 R q2q2 1q4q4.

Slides:



Advertisements
Similar presentations
Turing Machines Memory = an infinitely long tape Persistent storage A read/write tape head that can move around the tape Initially, the tape contains only.
Advertisements

Variants of Turing machines
Turing -Recognizable vs. -Decidable
CSCI 4325 / 6339 Theory of Computation Zhixiang Chen Department of Computer Science University of Texas-Pan American.
Foundations of (Theoretical) Computer Science Chapter 3 Lecture Notes (Section 3.2: Variants of Turing Machines) David Martin With.
Applied Computer Science II Chapter 3 : Turing Machines Prof. Dr. Luc De Raedt Institut für Informatik Albert-Ludwigs Universität Freiburg Germany.
More Turing Machines Sipser 3.2 (pages ). CS 311 Fall Multitape Turing Machines Formally, we need only change the transition function to.
1 Introduction to Computability Theory Lecture11: Variants of Turing Machines Prof. Amos Israeli.
More Turing Machines Sipser 3.2 (pages ).
Fall 2004COMP 3351 Undecidable problems for Recursively enumerable languages continued…
Courtesy Costas Busch - RPI1 A Universal Turing Machine.
Complexity ©D.Moshkovitz 1 Turing Machines. Complexity ©D.Moshkovitz 2 Motivation Our main goal in this course is to analyze problems and categorize them.
Reducibility A reduction is a way of converting one problem into another problem in such a way that a solution to the second problem can be used to solve.
1 Linear Bounded Automata LBAs. 2 Linear Bounded Automata are like Turing Machines with a restriction: The working space of the tape is the space of the.
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.
Lecture 5 Turing Machines
CHAPTER 4 Decidability Contents Decidable Languages
Fall 2004COMP 3351 Reducibility. Fall 2004COMP 3352 Problem is reduced to problem If we can solve problem then we can solve problem.
Homework #9 Solutions.
Automata & Formal Languages, Feodor F. Dragan, Kent State University 1 CHAPTER 5 Reducibility Contents Undecidable Problems from Language Theory.
Fall 2004COMP 3351 A Universal Turing Machine. Fall 2004COMP 3352 Turing Machines are “hardwired” they execute only one program A limitation of Turing.
CS21 Decidability and Tractability
Fall 2003Costas Busch - RPI1 Turing Machines (TMs) Linear Bounded Automata (LBAs)
Chapter 9 Turing Machine (TMs).
Qi Mi Computer Science Department University of Virginia 1.
AUTOMATA THEORY VIII.
INHERENT LIMITATIONS OF COMPUTER PROGRAMS CSci 4011.
CSCI 4325 / 6339 Theory of Computation Zhixiang Chen Department of Computer Science University of Texas-Pan American.
Ding-Zhu Du Office: ECSS 3-611, M 3:15-4:30 Lecture: ECSS 2.311, MW 12:30-1:45.
Review Byron Gao. Overview Theory of computation: central areas: Automata, Computability, Complexity Computability: Is the problem solvable? –solvable.
Introduction to CS Theory Lecture 15 –Turing Machines Piotr Faliszewski
Computability Construct TMs. Decidability. Preview: next class: diagonalization and Halting theorem.
1 More About Turing Machines “Programming Tricks” Restrictions Extensions Closure Properties.
Computability Chapter 5. Overview  Turing Machine (TM) considered to be the most general computational model that can be devised (Church-Turing thesis)
1 Linear Bounded Automata LBAs. 2 Linear Bounded Automata (LBAs) are the same as Turing Machines with one difference: The input string tape space is the.
1 Turing’s Thesis. 2 Turing’s thesis: Any computation carried out by mechanical means can be performed by a Turing Machine (1930)
 2005 SDU Lecture13 Reducibility — A methodology for proving un- decidability.
1Computer Sciences Department. Book: INTRODUCTION TO THE THEORY OF COMPUTATION, SECOND EDITION, by: MICHAEL SIPSER Reference 3Computer Sciences Department.
D E C I D A B I L I T Y 1. 2 Objectives To investigate the power of algorithms to solve problems. To explore the limits of algorithmic solvability. To.
CS 461 – Nov. 7 Decidability concepts –Countable = can number the elements  –Uncountable = numbering scheme impossible  –A TM undecidable –Language classes.
Turing -Recognizable vs. -Decidable
Lecture 17 Undecidability Topics:  TM variations  Undecidability June 25, 2015 CSCE 355 Foundations of Computation.
1 Section 13.1 Turing Machines A Turing machine (TM) is a simple computer that has an infinite amount of storage in the form of cells on an infinite tape.
1 Turing Machines and Equivalent Models Section 13.1 Turing Machines.
Overview of the theory of computation Episode 3 0 Turing machines The traditional concepts of computability, decidability and recursive enumerability.
Donghyun (David) Kim Department of Mathematics and Computer Science North Carolina Central University 1 Chapter 4 Decidability Some slides are in courtesy.
1 Course Overview Why this course “formal languages and automata theory?” What do computers really do? What are the practical benefits/application of formal.
Decidability Decidable/Undecidable problems. Jaruloj Chongstitvatana Decidability2 Accepting: Definition Let T = (Q, , , , s) be a TM. T accepts.
1 CD5560 FABER Formal Languages, Automata and Models of Computation Lecture 12 Mälardalen University 2007.
1 8.4 Extensions to the Basic TM Extended TM’s to be studied: Multitape Turing machine Nondeterministic Turing machine The above extensions make no increase.
The Church-Turing Thesis
Turing Machines CS 130 Theory of Computation HMU Textbook: Chap 8.
1 A Universal Turing Machine. 2 Turing Machines are “hardwired” they execute only one program A limitation of Turing Machines: Real Computers are re-programmable.
 2005 SDU Lecture14 Mapping Reducibility, Complexity.
Chapters 11 and 12 Decision Problems and Undecidability.
A Universal Turing Machine
Recursively Enumerable and Recursive Languages
ماشین های تورینگ، تشخیص پذیری و تصمیم پذیری زبان ها
Reductions Costas Busch - LSU.
Turing Machines Acceptors; Enumerators
ICS 353: Design and Analysis of Algorithms
Decidable Languages Costas Busch - LSU.
Decidability and Undecidability
ICS 353: Design and Analysis of Algorithms
CS21 Decidability and Tractability
Proposed in Turing’s 1936 paper
Formal Languages, Automata and Models of Computation
Decidability and Tractability
Variants of Turing machines
Presentation transcript:

Programming the TM qa  (,q) (,q) q1q1 0q1q1 R q1q1 1q1q1 R q1q1  h  Qa  (,q) (,q) q1q1 0q2q2  q1q1 1q3q3  q1q1  h  q2q2 0q4q4 R q2q2 1q4q4 R q2q2  q4q4 R q3q3 0q5q5 R q3q3 1q5q5 R q3q3  q5q5 R q4q4 0q2q2 0 q4q4 1q3q3 0 q4q4  h0 q5q5 0q2q2 1 q5q5 1q3q3 1 q5q5  h1

Extra Bonus +2% for Homeworks Write the TM, using the notation of the previous samples, that recognizes the language L = {a n b n c n | n  1}.

Extensions to the Standard TM Double-ended Turing Machine k-Tape Turing Machine Theorem: For each k-tape TM M k, there is a one-tape TM M 1 such that a terminating T- step computation by M k can be simulated in O(T 2 ) steps by M 1.

Extensions to the Standard TM If a nondeterministic TM, NDTM, has more than two nondeterministic choices for a particular state and letter under the tape head, we can design another NDTM that has at most two choices. –One may assume that there are either one or two next states from each state of an NDTM.

Extensions to the Standard TM Theorem: Any language accepted by a nondeterministic TM can be accepted by a deterministic TM. –This shows that the range of computations that can be performed by deterministic and nondeterministic Turing machines is the same. However, this does not mean that with identical resource bounds, (e.g. time), they compute the same set of function. Corollary: Any language accepted by a nondeterministic multi-tape TM can be accepted by a deterministic TM.

Extensions to the Standard TM The Oracle Turing machine, OTM, is a multi-tape DTM or NDTM with a special oracle tape and an associated oracle function h:    *, which need not be computable. After writing a string z on its oracle tape, the OTM signals to the oracle to replace z with the value h(z) of the oracle function.

Universal Turing Machine A Universal Turing machine is a Turing machine that can simulate the behavior of an arbitrary Turing machine –Including a universal Turing machine. –Without loss of generality, DTMs are included. Here, the inputs are data, plus a description of computation –i.e. the Universal TM is a “computer” –i.e. the Universal TM is “programmable” –A computer can emulate a Universal TM and vice versa –Hence, a computer is a Universal computing device

Universal Turing Machine Universal Turing Machine: MUniversal Input: (M,I) where M is a Turing Machine Description I is the input to the machine M Results: L(MUniversal) = ATM = {(M,I): M accepts I) If M accepts I, then MUniversal accepts (M,I) If M rejects I, then MUniversal rejects (M,I) If M does not halt on I, MUniversal does not halt on (M,I)

Encodings of Strings and TMs Lexicographic ordering of strings –Strings of length n – 1 precede strings of length n –Among strings of length n, If a and b are in the alphabet and a < b, strings starting with a precede those starting with b If the two strings have the same prefix, their order is determined by the order of the next letter (after the prefix) How can we identify the j th Universal TM? –If an encoding does not correspond to a TM, associate it with the Null TM  (s, a) = (h, a) –Each proper encoding of a TM is considered, in order.

Limits on Language Acceptance A language that is decidable (recursive) has a TM that halts on all inputs, accepting only those strings in the language. –Deterministic finite state machines, regular expressions and context-free grammars are all examples of decidable languages A language that is recursively enumerable is.... –A language is called unsolvable if it is recursively enumerable but not decidable.

A Language that is not recursively enumerable Consider L 1 = { w i | w i is not accepted by M i } –L 1 is not recursively enumerable –The complement of L 1 (called L 2 ) is an example of a recursively enumerable language that is not decidable. This comes from the fact that the complement of a decidable language is decidable.

Reducibility and Unsolvability Motivation: We have just shown that L 2 is unsolvable. Using reducibility, we will see that there are many languages that are unsolvable –Actually, we will only consider two such problems Definition: The language L a is reducible to L b if there is an algorithm computing a total [complete] function f: C *  D * that translates each string w over the alphabet C of L a into a string z = f(w) over the alphabet D of L b such that w  L a if and only if z  L b.

Reducibility and Unsolvability Lemma: Let L a be reducible to L b. If L b is decidable, L a is decidable. If L a is unsolvable, L b is also unsolvable.

Unsolvable Problems Halting Problem: –Input: An arbitrary TM M, and an arbitrary input string x. –Question: Does M halt on x? The halting problem can be characterized by the language L H = {  (M), w | M halts on input w} The halting problem is unsolvable

Unsolvable Problems Empty Tape Acceptance Problem: –Input: An arbitrary TM M –Question: Does M accept the empty string? L ET = {  (M) | L(M) contains the empty string} This problem is unsolvable