By John E. Hopcroft, Rajeev Motwani and Jeffrey D. Ullman

Slides:



Advertisements
Similar presentations
By John E. Hopcroft, Rajeev Motwani and Jeffrey D. Ullman
Advertisements

Source of slides: Introduction to Automata Theory, Languages and Computation.
By John E. Hopcroft, Rajeev Motwani and Jeffrey D. Ullman
CS 208: Computing Theory Assoc. Prof. Dr. Brahim Hnich Faculty of Computer Sciences Izmir University of Economics.
THE CHURCH-TURING T H E S I S “ TURING MACHINES” Pages COMPUTABILITY THEORY.
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.
Turing’s Thesis Fall 2006 Costas Busch - RPI.
1 Turing Machines. 2 The Language Hierarchy Regular Languages Context-Free Languages ? ?
Courtesy Costas Busch - RPI1 Turing’s Thesis. Courtesy Costas Busch - RPI2 Turing’s thesis: Any computation carried out by mechanical means can be performed.
Lecture 5 Turing Machines
Turing Machines.
1 Variations of the Turing Machine part2. 2 Standard Machine--Multiple Track Tape track 1 track 2 one symbol.
1 Turing Machines. 2 The Language Hierarchy Regular Languages Context-Free Languages ? ?
Finite State Machines Data Structures and Algorithms for Information Processing 1.
1.Defs. a)Finite Automaton: A Finite Automaton ( FA ) has finite set of ‘states’ ( Q={q 0, q 1, q 2, ….. ) and its ‘control’ moves from state to state.
Fall 2004COMP 3351 Turing’s Thesis. Fall 2004COMP 3352 Turing’s thesis: Any computation carried out by mechanical means can be performed by a Turing Machine.
Grammars, Languages and Finite-state automata Languages are described by grammars We need an algorithm that takes as input grammar sentence And gives a.
1 Non-Deterministic Finite Automata. 2 Alphabet = Nondeterministic Finite Automaton (NFA)
1 Turing Machines. 2 A Turing Machine Tape Read-Write head Control Unit.
AUTOMATA THEORY VIII.
CONVERTING TO CHOMSKY NORMAL FORM
Introduction to the Theory of Computation
© M. Winter COSC/MATH 4P61 - Theory of Computation COSC/MATH 4P61 Theory of Computation Michael Winter –office: J323 –office hours: Mon & Fri, 10:00am-noon.
Complexity theory and combinatorial optimization Class #2 – 17 th of March …. where we deal with decision problems, finite automata, Turing machines pink.
Introduction to CS Theory Lecture 15 –Turing Machines Piotr Faliszewski
THE CHURCH-TURING T H E S I S “ TURING MACHINES” Part 1 – Pages COMPUTABILITY THEORY.
Basics of Computation Theory. What is "abstraction"? Abstraction unifies multiple and different objects into one concept  describes the common properties.
1Computer Sciences Department. Book: INTRODUCTION TO THE THEORY OF COMPUTATION, SECOND EDITION, by: MICHAEL SIPSER Reference 3Computer Sciences Department.
CSC 3130: Automata theory and formal languages Andrej Bogdanov The Chinese University of Hong Kong Turing Machines.
Theory of computing, part 4. 1Introduction 2Theoretical background Biochemistry/molecular biology 3Theoretical background computer science 4History of.
Costas Busch - LSU1 Turing’s Thesis. Costas Busch - LSU2 Turing’s thesis (1930): Any computation carried out by mechanical means can be performed by a.
CSCI 3130: Automata theory and formal languages Andrej Bogdanov The Chinese University of Hong Kong Pushdown.
1 IDT Open Seminar ALAN TURING AND HIS LEGACY 100 Years Turing celebration Gordana Dodig Crnkovic, Computer Science and Network Department Mälardalen University.
Automata & Formal Languages, Feodor F. Dragan, Kent State University 1 CHAPTER 3 The Church-Turing Thesis Contents Turing Machines definitions, examples,
1 Introduction to Turing Machines
1 CD5560 FABER Formal Languages, Automata and Models of Computation Lecture 12 Mälardalen University 2007.
1 Turing Machines. 2 The Language Hierarchy Regular Languages Context-Free Languages ? ?
The Church-Turing Thesis
1 Turing Machines. 2 The Language Hierarchy Regular Languages Context-Free Languages ? ?
Theory of Computational Complexity TA : Junichi Teruyama Iwama lab. D3
Introduction to Automata Theory Theory of Computation Lecture 5 Tasneem Ghnaimat.
Introduction to Automata Theory Theory of Computation Lecture 3 Tasneem Ghnaimat.
Turing’s Thesis.
Turing’s Thesis Costas Busch - LSU.
8. Introduction to Turing Machines
CSCI 2670 Introduction to Theory of Computing
COSC 3340: Introduction to Theory of Computation
CS21 Decidability and Tractability
AUTOMATA THEORY VI.
CSCI 2670 Introduction to Theory of Computing
COSC 3340: Introduction to Theory of Computation
OTHER MODELS OF TURING MACHINES
Turing’s Thesis Costas Busch - RPI.
Chapter 3: The CHURCH-Turing thesis
فصل سوم The Church-Turing Thesis
Intro to Theory of Computation
Theory of Computation Turing Machines.
8. Introduction to Turing Machines
Computing Functions with Turing Machines
The Off-Line Machine Input File read-only (once) Input string
CS21 Decidability and Tractability
Variations of the Turing Machine
COSC 3340: Introduction to Theory of Computation
Decidability and Tractability
Pushdown automata The Chinese University of Hong Kong Fall 2011
NP and NP completeness 姚鹏晖
Formal Definitions for Turing Machines
Hopcroft, Motawi, Ullman, Chap 8
Presentation transcript:

By John E. Hopcroft, Rajeev Motwani and Jeffrey D. Ullman Theory of Computation Turing Machine Source of Slides: Introduction to Automata Theory, Languages, and Computation By John E. Hopcroft, Rajeev Motwani and Jeffrey D. Ullman Prof. Muhammad Saeed

Dept. of Computer Science & IT, FUUAST Theory of Computation Turing Machine Church-Turing’s Thesis Any mathematical problem solving that can be described by an algorithm can be modeled by a Turing Machine. Dept. of Computer Science & IT, FUUAST Theory of Computation

Dept. of Computer Science & IT, FUUAST Theory of Computation Turing Machine Types of Turing Machine 1) Multiple track 2) Shift over Turing Machine 3) Nondeterministic 4) Two way Turing Machine 5) Multitape Turing Machine 6) Multidimensional Turing Machine 7) Composite Turing Machine 8) Universal Turing Machine Dept. of Computer Science & IT, FUUAST Theory of Computation

Dept. of Computer Science & IT, FUUAST Theory of Computation Turing Machine Formal Definition Dept. of Computer Science & IT, FUUAST Theory of Computation

Dept. of Computer Science & IT, FUUAST Theory of Computation Turing Machine Dept. of Computer Science & IT, FUUAST Theory of Computation

Dept. of Computer Science & IT, FUUAST Theory of Computation Turing Machine Steps Start in state q0 Read symbol under head Write new symbol Shift left/right Enter new state qj Dept. of Computer Science & IT, FUUAST Theory of Computation

Dept. of Computer Science & IT, FUUAST Theory of Computation Turing Machine Notational Conventions For Turing Machines Dept. of Computer Science & IT, FUUAST Theory of Computation

Dept. of Computer Science & IT, FUUAST Theory of Computation Turing Machine A Turing Machine M that accepts the language { 0n1n | n ≥0 } Dept. of Computer Science & IT, FUUAST Theory of Computation

Dept. of Computer Science & IT, FUUAST Theory of Computation Turing Machine Moves for input 0011: Moves for input 0010: Dept. of Computer Science & IT, FUUAST Theory of Computation

Dept. of Computer Science & IT, FUUAST Theory of Computation Turing Machine Transition Diagram for 0011 input Dept. of Computer Science & IT, FUUAST Theory of Computation

Dept. of Computer Science & IT, FUUAST Theory of Computation Pushdown Automata A Turing Machine M computes a function ( proper subtraction) for 0m10n on the tape. means if m ≥ n then m - n else if m < n then 0 Dept. of Computer Science & IT, FUUAST Theory of Computation

Dept. of Computer Science & IT, FUUAST Theory of Computation Turing Machine Evaluating function Dept. of Computer Science & IT, FUUAST Theory of Computation

Dept. of Computer Science & IT, FUUAST Theory of Computation Turing Machine Evaluating function Dept. of Computer Science & IT, FUUAST Theory of Computation

Dept. of Computer Science & IT, FUUAST Theory of Computation Turing Machine Transition Table for the function Dept. of Computer Science & IT, FUUAST Theory of Computation

Dept. of Computer Science & IT, FUUAST Theory of Computation Turing Machine Transition Diagram for Dept. of Computer Science & IT, FUUAST Theory of Computation

Dept. of Computer Science & IT, FUUAST Theory of Computation Turing Machine Transition Table for the function Transition Diagram for Dept. of Computer Science & IT, FUUAST Theory of Computation

Dept. of Computer Science & IT, FUUAST Theory of Computation Turing Machine A Turing Machine M that accepts the language { 0n1n | n ≥0 } 0 0 1 1 B B q0 Dept. of Computer Science & IT, FUUAST Theory of Computation

Dept. of Computer Science & IT, FUUAST Theory of Computation Turing Machine A Turing Machine M that accepts the language { 0n1n | n ≥0 } X 0 1 1 B B q1 Dept. of Computer Science & IT, FUUAST Theory of Computation

Dept. of Computer Science & IT, FUUAST Theory of Computation Turing Machine A Turing Machine M that accepts the language { 0n1n | n ≥0 } X 0 1 1 B B q1 Dept. of Computer Science & IT, FUUAST Theory of Computation

Dept. of Computer Science & IT, FUUAST Theory of Computation Turing Machine A Turing Machine M that accepts the language { 0n1n | n ≥0 } X 0 Y 1 B B q2 Dept. of Computer Science & IT, FUUAST Theory of Computation

Dept. of Computer Science & IT, FUUAST Theory of Computation Turing Machine A Turing Machine M that accepts the language { 0n1n | n ≥0 } X 0 Y 1 B B q2 Dept. of Computer Science & IT, FUUAST Theory of Computation

Dept. of Computer Science & IT, FUUAST Theory of Computation Turing Machine A Turing Machine M that accepts the language { 0n1n | n ≥0 } X 0 Y 1 B B q0 Dept. of Computer Science & IT, FUUAST Theory of Computation

Dept. of Computer Science & IT, FUUAST Theory of Computation Turing Machine A Turing Machine M that accepts the language { 0n1n | n ≥0 } X 0 Y 1 B B q0 Dept. of Computer Science & IT, FUUAST Theory of Computation

Dept. of Computer Science & IT, FUUAST Theory of Computation Turing Machine A Turing Machine M that accepts the language { 0n1n | n ≥0 } X X Y 1 B B q1 Dept. of Computer Science & IT, FUUAST Theory of Computation

Dept. of Computer Science & IT, FUUAST Theory of Computation Turing Machine A Turing Machine M that accepts the language { 0n1n | n ≥0 } X X Y 1 B B q1 Dept. of Computer Science & IT, FUUAST Theory of Computation

Dept. of Computer Science & IT, FUUAST Theory of Computation Turing Machine A Turing Machine M that accepts the language { 0n1n | n ≥0 } X X Y Y B B q2 Dept. of Computer Science & IT, FUUAST Theory of Computation

Dept. of Computer Science & IT, FUUAST Theory of Computation Turing Machine A Turing Machine M that accepts the language { 0n1n | n ≥0 } X X Y Y B B q2 Dept. of Computer Science & IT, FUUAST Theory of Computation

Dept. of Computer Science & IT, FUUAST Theory of Computation Turing Machine A Turing Machine M that accepts the language { 0n1n | n ≥0 } X X Y Y B B q0 Dept. of Computer Science & IT, FUUAST Theory of Computation

Dept. of Computer Science & IT, FUUAST Theory of Computation Turing Machine A Turing Machine M that accepts the language { 0n1n | n ≥0 } X X Y Y B B q0 Dept. of Computer Science & IT, FUUAST Theory of Computation

Dept. of Computer Science & IT, FUUAST Theory of Computation Turing Machine A Turing Machine M that accepts the language { 0n1n | n ≥0 } X X Y Y B B q3 Dept. of Computer Science & IT, FUUAST Theory of Computation

Dept. of Computer Science & IT, FUUAST Theory of Computation Turing Machine A Turing Machine M that accepts the language { 0n1n | n ≥0 } X X Y Y B B q3 Dept. of Computer Science & IT, FUUAST Theory of Computation

Dept. of Computer Science & IT, FUUAST Theory of Computation Turing Machine A Turing Machine M that accepts the language { 0n1n | n ≥0 } X X Y Y B B q4 Dept. of Computer Science & IT, FUUAST Theory of Computation

Dept. of Computer Science & IT, FUUAST Theory of Computation Turing Machine End of Simulation Dept. of Computer Science & IT, FUUAST Theory of Computation

Dept. of Computer Science & IT, FUUAST Theory of Computation Turing Machine Evaluating function 0 0 0 0 0 1 0 0 0 B B q0 Dept. of Computer Science & IT, FUUAST Theory of Computation

Dept. of Computer Science & IT, FUUAST Theory of Computation Turing Machine Evaluating function B 0 0 0 0 1 0 0 0 B B q1 Dept. of Computer Science & IT, FUUAST Theory of Computation

Dept. of Computer Science & IT, FUUAST Theory of Computation Turing Machine Evaluating function B 0 0 0 0 1 0 0 0 B B q1 Dept. of Computer Science & IT, FUUAST Theory of Computation

Dept. of Computer Science & IT, FUUAST Theory of Computation Turing Machine Evaluating function B 0 0 0 0 1 0 0 0 B B q1 Dept. of Computer Science & IT, FUUAST Theory of Computation

Dept. of Computer Science & IT, FUUAST Theory of Computation Turing Machine Evaluating function B 0 0 0 0 1 0 0 0 B B q1 Dept. of Computer Science & IT, FUUAST Theory of Computation

Dept. of Computer Science & IT, FUUAST Theory of Computation Turing Machine Evaluating function B 0 0 0 0 1 0 0 0 B B q1 Dept. of Computer Science & IT, FUUAST Theory of Computation

Dept. of Computer Science & IT, FUUAST Theory of Computation Turing Machine Evaluating function B 0 0 0 0 1 0 0 0 B B q2 Dept. of Computer Science & IT, FUUAST Theory of Computation

Dept. of Computer Science & IT, FUUAST Theory of Computation Turing Machine Evaluating function B 0 0 0 0 1 1 0 0 B B q3 Dept. of Computer Science & IT, FUUAST Theory of Computation

Dept. of Computer Science & IT, FUUAST Theory of Computation Turing Machine Evaluating function B 0 0 0 0 1 1 0 0 B B q3 Dept. of Computer Science & IT, FUUAST Theory of Computation

Dept. of Computer Science & IT, FUUAST Theory of Computation Turing Machine Evaluating function B 0 0 0 0 1 1 0 0 B B q3 Dept. of Computer Science & IT, FUUAST Theory of Computation

Dept. of Computer Science & IT, FUUAST Theory of Computation Turing Machine Evaluating function B 0 0 0 0 1 1 0 0 B B q3 Dept. of Computer Science & IT, FUUAST Theory of Computation

Dept. of Computer Science & IT, FUUAST Theory of Computation Turing Machine Evaluating function B 0 0 0 0 1 1 0 0 B B q3 Dept. of Computer Science & IT, FUUAST Theory of Computation

Dept. of Computer Science & IT, FUUAST Theory of Computation Turing Machine Evaluating function B 0 0 0 0 1 1 0 0 B B q3 Dept. of Computer Science & IT, FUUAST Theory of Computation

Dept. of Computer Science & IT, FUUAST Theory of Computation Turing Machine Evaluating function B 0 0 0 0 1 1 0 0 B B q0 Dept. of Computer Science & IT, FUUAST Theory of Computation

Dept. of Computer Science & IT, FUUAST Theory of Computation Turing Machine Evaluating function B B 0 0 0 1 1 0 0 B B q1 Dept. of Computer Science & IT, FUUAST Theory of Computation

Dept. of Computer Science & IT, FUUAST Theory of Computation Turing Machine Evaluating function B B 0 0 0 1 1 0 0 B B q1 Dept. of Computer Science & IT, FUUAST Theory of Computation

Dept. of Computer Science & IT, FUUAST Theory of Computation Turing Machine Evaluating function B B 0 0 0 1 1 0 0 B B q1 Dept. of Computer Science & IT, FUUAST Theory of Computation

Dept. of Computer Science & IT, FUUAST Theory of Computation Turing Machine Evaluating function B B 0 0 0 1 1 0 0 B B q1 Dept. of Computer Science & IT, FUUAST Theory of Computation

Dept. of Computer Science & IT, FUUAST Theory of Computation Turing Machine Evaluating function B B 0 0 0 1 1 0 0 B B q2 Dept. of Computer Science & IT, FUUAST Theory of Computation

Dept. of Computer Science & IT, FUUAST Theory of Computation Turing Machine Evaluating function B B 0 0 0 1 1 0 0 B B q2 Dept. of Computer Science & IT, FUUAST Theory of Computation

Dept. of Computer Science & IT, FUUAST Theory of Computation Turing Machine Evaluating function B B 0 0 0 1 1 0 0 B B q2 Dept. of Computer Science & IT, FUUAST Theory of Computation

Dept. of Computer Science & IT, FUUAST Theory of Computation Turing Machine Evaluating function B B 0 0 0 1 1 1 0 B B q3 Dept. of Computer Science & IT, FUUAST Theory of Computation

Dept. of Computer Science & IT, FUUAST Theory of Computation Turing Machine Evaluating function B B 0 0 0 1 1 1 0 B B q3 Dept. of Computer Science & IT, FUUAST Theory of Computation

Dept. of Computer Science & IT, FUUAST Theory of Computation Turing Machine Evaluating function B B 0 0 0 1 1 1 0 B B q3 Dept. of Computer Science & IT, FUUAST Theory of Computation

Dept. of Computer Science & IT, FUUAST Theory of Computation Turing Machine Evaluating function B B 0 0 0 1 1 1 0 B B q3 Dept. of Computer Science & IT, FUUAST Theory of Computation

Dept. of Computer Science & IT, FUUAST Theory of Computation Turing Machine Evaluating function B B 0 0 0 1 1 1 0 B B q3 Dept. of Computer Science & IT, FUUAST Theory of Computation

Dept. of Computer Science & IT, FUUAST Theory of Computation Turing Machine Evaluating function B B 0 0 0 1 1 1 0 B B q0 Dept. of Computer Science & IT, FUUAST Theory of Computation

Dept. of Computer Science & IT, FUUAST Theory of Computation Turing Machine Evaluating function B B B 0 0 1 1 1 0 B B q1 Dept. of Computer Science & IT, FUUAST Theory of Computation

Dept. of Computer Science & IT, FUUAST Theory of Computation Turing Machine Evaluating function B B B 0 0 1 1 1 0 B B q1 Dept. of Computer Science & IT, FUUAST Theory of Computation

Dept. of Computer Science & IT, FUUAST Theory of Computation Turing Machine Evaluating function B B B 0 0 1 1 1 0 B B q1 Dept. of Computer Science & IT, FUUAST Theory of Computation

Dept. of Computer Science & IT, FUUAST Theory of Computation Turing Machine Evaluating function B B B 0 0 1 1 1 0 B B q2 Dept. of Computer Science & IT, FUUAST Theory of Computation

Dept. of Computer Science & IT, FUUAST Theory of Computation Turing Machine Evaluating function B B B 0 0 1 1 1 0 B B q2 Dept. of Computer Science & IT, FUUAST Theory of Computation

Dept. of Computer Science & IT, FUUAST Theory of Computation Turing Machine Evaluating function B B B 0 0 1 1 1 0 B B q2 Dept. of Computer Science & IT, FUUAST Theory of Computation

Dept. of Computer Science & IT, FUUAST Theory of Computation Turing Machine Evaluating function B B B 0 0 1 1 1 1 B B q3 Dept. of Computer Science & IT, FUUAST Theory of Computation

Dept. of Computer Science & IT, FUUAST Theory of Computation Turing Machine Evaluating function B B B 0 0 1 1 1 1 B B q3 Dept. of Computer Science & IT, FUUAST Theory of Computation

Dept. of Computer Science & IT, FUUAST Theory of Computation Turing Machine Evaluating function B B B 0 0 1 1 1 1 B B q3 Dept. of Computer Science & IT, FUUAST Theory of Computation

Dept. of Computer Science & IT, FUUAST Theory of Computation Turing Machine Evaluating function B B B 0 0 1 1 1 1 B B q3 Dept. of Computer Science & IT, FUUAST Theory of Computation

Dept. of Computer Science & IT, FUUAST Theory of Computation Turing Machine Evaluating function B B B 0 0 1 1 1 1 B B q3 Dept. of Computer Science & IT, FUUAST Theory of Computation

Dept. of Computer Science & IT, FUUAST Theory of Computation Turing Machine Evaluating function B B B 0 0 1 1 1 1 B B q3 Dept. of Computer Science & IT, FUUAST Theory of Computation

Dept. of Computer Science & IT, FUUAST Theory of Computation Turing Machine Evaluating function B B B 0 0 1 1 1 1 B B q0 Dept. of Computer Science & IT, FUUAST Theory of Computation

Dept. of Computer Science & IT, FUUAST Theory of Computation Turing Machine Evaluating function B B B B 0 1 1 1 1 B B q1 Dept. of Computer Science & IT, FUUAST Theory of Computation

Dept. of Computer Science & IT, FUUAST Theory of Computation Turing Machine Evaluating function B B B B 0 1 1 1 1 B B q1 Dept. of Computer Science & IT, FUUAST Theory of Computation

Dept. of Computer Science & IT, FUUAST Theory of Computation Turing Machine Evaluating function B B B B 0 1 1 1 1 B B q2 Dept. of Computer Science & IT, FUUAST Theory of Computation

Dept. of Computer Science & IT, FUUAST Theory of Computation Turing Machine Evaluating function B B B B 0 1 1 1 1 B B q2 Dept. of Computer Science & IT, FUUAST Theory of Computation

Dept. of Computer Science & IT, FUUAST Theory of Computation Turing Machine Evaluating function B B B B 0 1 1 1 1 B B q2 Dept. of Computer Science & IT, FUUAST Theory of Computation

Dept. of Computer Science & IT, FUUAST Theory of Computation Turing Machine Evaluating function B B B B 0 1 1 1 1 B B q2 Dept. of Computer Science & IT, FUUAST Theory of Computation

Dept. of Computer Science & IT, FUUAST Theory of Computation Turing Machine Evaluating function B B B B 0 1 1 1 1 B B q4 Dept. of Computer Science & IT, FUUAST Theory of Computation

Dept. of Computer Science & IT, FUUAST Theory of Computation Turing Machine Evaluating function B B B B 0 1 1 1 B B B q4 Dept. of Computer Science & IT, FUUAST Theory of Computation

Dept. of Computer Science & IT, FUUAST Theory of Computation Turing Machine Evaluating function B B B B 0 1 1 B B B B q4 Dept. of Computer Science & IT, FUUAST Theory of Computation

Dept. of Computer Science & IT, FUUAST Theory of Computation Turing Machine Evaluating function B B B B 0 1 B B B B B q4 Dept. of Computer Science & IT, FUUAST Theory of Computation

Dept. of Computer Science & IT, FUUAST Theory of Computation Turing Machine Evaluating function B B B B 0 B B B B B B q4 Dept. of Computer Science & IT, FUUAST Theory of Computation

Dept. of Computer Science & IT, FUUAST Theory of Computation Turing Machine Evaluating function B B B B 0 B B B B B B q4 Dept. of Computer Science & IT, FUUAST Theory of Computation

Dept. of Computer Science & IT, FUUAST Theory of Computation Turing Machine Evaluating function B B B 0 0 B B B B B B q6 Final State Dept. of Computer Science & IT, FUUAST Theory of Computation

Dept. of Computer Science & IT, FUUAST Theory of Computation Turing Machine End of Simulation Dept. of Computer Science & IT, FUUAST Theory of Computation

Dept. of Computer Science & IT, FUUAST Theory of Computation Turing Machine Multiplication 0m10n1 Dept. of Computer Science & IT, FUUAST Theory of Computation

Dept. of Computer Science & IT, FUUAST Theory of Computation Turing Machine Multiplication 0m10n1 Dept. of Computer Science & IT, FUUAST Theory of Computation

Dept. of Computer Science & IT, FUUAST Theory of Computation END Dept. of Computer Science & IT, FUUAST Theory of Computation