© Egon Börger: Turing Machine 1 Turing Machine ASM Instruction (q1,a)  (q2,b,-1) aaa q1 aab q2 Signature Q with q,  with Blank Int with +1 and –1,0,1,h.

Slides:



Advertisements
Similar presentations
Variants of Turing machines
Advertisements

CS 461 – Oct. 21 Begin chapter 3 We need a better (more encompassing) model of computation. Ex. { 1 n 2 n 3 n } couldn’t be accepted by PDA. –How could.
Simulating a modern computer by a Turing machine and vice versa CS 6800 Instructor: Dr. Elise de Doncker By Shweta Gowda Saikiran Ponnam.
Reducibility 2 Theorem 5.1 HALT TM is undecidable.
Asynchronous ASMs Network Leader Election Egon Börger Dipartimento di Informatica, Universita di Pisa
More Turing Machines Sipser 3.2 (pages ). CS 311 Fall Multitape Turing Machines Formally, we need only change the transition function to.
Fall 2004COMP 3351 Recursively Enumerable and Recursive Languages.
FORMAL LANGUAGES, AUTOMATA AND COMPUTABILITY
Asynchronous ASMs Ring Load Balance Egon Börger Dipartimento di Informatica, Universita di Pisa
Asynchronous ASMs Master/Slave Agreement Egon Börger Dipartimento di Informatica, Universita di Pisa
Computability and Complexity 7-1 Computability and Complexity Andrei Bulatov Recursion Theorem.
Recursively Enumerable and Recursive Languages
Turing Machines from “On Computable Numbers” Jerry Grochowski – CS 4800.
1 Lecture 16 FSA’s –Defining FSA’s –Computing with FSA’s Defining L(M) –Defining language class LFSA –Comparing LFSA to set of solvable languages (REC)
CHAPTER 4 Decidability Contents Decidable Languages
1 Lecture 13 Turing machine model of computation –Sequential access memory (tape) –Limited data types and instructions –Graphical representation –Formal.
Homework #9 Solutions.
Asynchronous ASMs Phase Synchronization on Undirected Trees Egon Börger Dipartimento di Informatica, Universita di Pisa
Automata & Formal Languages, Feodor F. Dragan, Kent State University 1 CHAPTER 5 Reducibility Contents Undecidable Problems from Language Theory.
CS5371 Theory of Computation Lecture 10: Computability Theory I (Turing Machine)
1 Lecture 13 Turing machine model of computation –Sequential access memory (tape) –Limited data types and instructions –Formal Definition –Equivalence.
Turing Machines CS 105: Introduction to Computer Science.
AUTOMATA THEORY VIII.
© Egon Börger: Clock and Stopwatch ASM 1 Illustrating the ASM Function Classification A real-time CLOCK: –Monitored: CurrTime: Real (supposed to be increasing.
Lab Session 1 Turing Machines. Install Download and unzip TM.zip on the desktop Start the “Turing Machine” executable File>machine>load COPYING.TM File>tape>load.
INHERENT LIMITATIONS OF COMPUTER PROGRAMS CSci 4011.
Turing Machines Chapter Plan Turing Machines(TMs) – Alan Turing Church-Turing Thesis – Definitions Computation Configuration Recognizable vs. Decidable.
Randomized Turing Machines
Transparency No. P3C1-1 Turing Machines PART III Turing Machines and Effective Computability.
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.
Lecture 9  2010 SDU Lecture9: Turing Machine.  2010 SDU 2 Historical Note Proposed by Alan Turing in 1936 in: On Computable Numbers, with an application.
Theorem: Turing decidable languages are closed under intersection.
1 Turing machines Chapter 4, Smith and Kimber. A Turing machine is an abstraction of a human “computer”. Consists of - control, in the form of states -
Alternation Section 10.3 Giorgi Japaridze Theory of Computability.
Recursively Enumerable and Recursive Languages
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.
Transparency No. P3C2-1 Formal Language and Automata Theory PART III Chapter 2 Other Equivalent models of Standard Turing machine.
Automata & Formal Languages, Feodor F. Dragan, Kent State University 1 CHAPTER 3 The Church-Turing Thesis Contents Turing Machines definitions, examples,
Donghyun (David) Kim Department of Mathematics and Computer Science North Carolina Central University 1 Chapter 5 Reducibility Some slides are in courtesy.
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.
Turing Machines Sections 17.6 – The Universal Turing Machine Problem: All our machines so far are hardwired. ENIAC
CS 154 Formal Languages and Computability April 12 Class Meeting Department of Computer Science San Jose State University Spring 2016 Instructor: Ron Mak.
Recall last lecture and Nondeterministic TMs Ola Svensson.
Asynchronous ASMs Echo Algorithm Egon Börger Dipartimento di Informatica, Universita di Pisa
Chapter 9 Turing Machines What would happen if we change the stack in Pushdown Automata into some other storage device? Truing Machines, which maintains.
Turing Machine Model Are there computations that no “reasonable” computing machine can perform? –the machine should not store the answer to all possible.
Turing Machines CS 130 Theory of Computation HMU Textbook: Chap 8.
FORMAL LANGUAGES, AUTOMATA, AND COMPUTABILITY * Read chapter 4 of the book for next time * Lecture9x.ppt.
Theory of Computation Automata Theory Dr. Ayman Srour.
1 Recursively Enumerable and Recursive Languages.
CSE202: Introduction to Formal Languages and Automata Theory
Turing Machines Finite State Machines.
Busch Complexity Lectures: Reductions
Reductions Costas Busch - LSU.
Turing Machines Acceptors; Enumerators
Undecidable Problems (unsolvable problems)
Turing acceptable languages and Enumerators
Chapter 3: The CHURCH-Turing thesis
4b Lexical analysis Finite Automata
Cpt S 317: Spring 2009 Sampath Kumar S, AP/CSE, SECE
Turing acceptable languages and Enumerators
Computability and Complexity
Formal Languages, Automata and Models of Computation
4b Lexical analysis Finite Automata
Computability Catch up last lecture. Turing machines. Variations
CSCI 2670 Introduction to Theory of Computing
Automata, Grammars and Languages
 Is a machine that is able to take information (input), do some work on (process), and to make new information (output) COMPUTER.
Presentation transcript:

© Egon Börger: Turing Machine 1 Turing Machine ASM Instruction (q1,a)  (q2,b,-1) aaa q1 aab q2 Signature Q with q,  with Blank Int with +1 and –1,0,1,h T = Int   (a.e. Blank) P : Q    Q    {-1,0,1} gives three funs F 1, F 2, F 3 The program q := F 1 (q,T(h)) T(h):= F 2 (q,T(h)) h := h + F 3 (q,T(h))

© Egon Börger: Turing Machine 2 Refining Turing Machine ASM to FSM ASM program : q := F 1 (q,T(h)) T(h) := F 2 (q,T(h)) h := h + F 3 (q,T(h)) Instruction (q1,a)  (q2,b,-1) aaa q1 output aaa q2 output := b Writing only as output one-way/two-way FSM depending on whether besides +1 also –1 is allowed in instructions

© Egon Börger: Turing Machine 3 Extending Turing Machine to Alternating TM Alternating TMs are –focussed to either accept or reject the initial tape –permitted to invoke TM-subcomputations explore whether some or all subcomputations accept or reject their input normal execution states with program TM(Nxtctl,Write,Move): control := Nxtctl(control, tape(head)) tape(head) := Write(control, tape(head)) head := head + Move(control, tape(head)) enriched by –control states which simply accept or reject –existential control states which accept/reject in case some/every subcomputation accepts/rejects –universal control states which accept/reject in case every/some subcomputation accepts/rejects

© Egon Börger: Turing Machine 4 Alternating Turing automata AlternatingTm(Nxtctl,Write,Move) = IF type(SELF.ctlstate)=normal THEN TM(Nxtctl,Write,Move)(SELF) IF type(SELF.ctlstate)  {existential,universal} THEN AltTmSpawn(SELF) TmYieldExistential(SELF) TmYieldUniversal(SELF) IF type(SELF.ctlstate)  {accept,reject} THEN yield(SELF):= type(SELF.ctlstate) When in an existential or universal control state subcomputations are created to be run (AltTmSpawn), the invoking computation becomes idle to observe whether the yield of the subcomputations switches from undef to either accept or reject and to define its own yield correspondingly

© Egon Börger: Turing Machine 5 Alternating Turing automata AltTmSpawn(a) = IF a.mode = running THEN LET j_1,…,j_k = Nxtctl(a.ctlstate, a.tape(a.head)) LET a_1,…,a_k = new(Agent) FORALL i  {1,…, k} Activate(a_i,a,j_i) parent(a_i) := a a.mode := idle Activate(b,a,j) = StartSubComp(b,a,j), b.mode := running, b.yield:=undef StartSubComp(b,a,j) = b.ctlstate:=j b.head:=a.head FORALL pos  domain(a.tape) DO b.tape(pos):=a.tape(pos)

© Egon Börger: Turing Machine 6 Alternating Turing automata TmYieldExistential(a) = IF a.mode = idle AND type(a.ctlstate) = existential THEN IF forall c  children(a) yield(c)=reject THEN yield(a) := reject IF exists c  children(a) yield(c)=accept THEN yield(a) := accept TmYieldUniversal(a) = IF a.mode = idle AND type(a.ctlstate) = universal THEN IF forall c  children(a) yield(c)=accept THEN yield(a) := accept IF exists c  children(a) yield(c)=reject THEN yield(a) := reject

© Egon Börger: Turing Machine 7 References E. Börger, R. Stärk: Abstract State Machines. A Method for High-Level System Design and Analysis Springer-Verlag 2003, Chapter 7 –see