1212 Models of Computation: Automata and Processes Jos Baeten.

Slides:



Advertisements
Similar presentations
Lecture 24 MAS 714 Hartmut Klauck
Advertisements

Pushdown Automata Chapter 12. Recognizing Context-Free Languages Two notions of recognition: (1) Say yes or no, just like with FSMs (2) Say yes or no,
Pushdown Automata Part II: PDAs and CFG Chapter 12.
CFG => PDA Sipser 2 (pages ). CS 311 Fall Formally… A pushdown automaton is a sextuple M = (Q, Σ, Γ, δ, q 0, F), where – Q is a finite set.
1 … NPDAs continued. 2 Pushing Strings Input symbol Pop symbol Push string.
1 Normal Forms for Context-free Grammars. 2 Chomsky Normal Form All productions have form: variable and terminal.
Foundations of (Theoretical) Computer Science Chapter 2 Lecture Notes (Section 2.2: Pushdown Automata) Prof. Karen Daniels, Fall 2009 with acknowledgement.
CS 490: Automata and Language Theory Daniel Firpo Spring 2003.
Normal forms for Context-Free Grammars
Prof. Busch - LSU1 Linear Grammars Grammars with at most one variable at the right side of a production Examples:
Fall 2003Costas Busch - RPI1 Turing Machines (TMs) Linear Bounded Automata (LBAs)
Grammars, Languages and Finite-state automata Languages are described by grammars We need an algorithm that takes as input grammar sentence And gives a.
1212 Models of Computation: Automata and Processes Jos Baeten.
Finite State Machines Data Structures and Algorithms for Information Processing 1.
Final Exam Review Cummulative Chapters 0, 1, 2, 3, 4, 5 and 7.
Fall 2003Costas Busch - RPI1 Linear Grammars Grammars with at most one variable at the right side of a production Examples:
Mathematical Operational Semantics and Finitary System Behaviour Stefan Milius, Marcello Bonsangue, Robert Myers, Jurriaan Rot.
1 CD5560 FABER Formal Languages, Automata and Models of Computation Lecture 8 Mälardalen University 2010.
A summary of our activities about WSI Philippe Giabbanelli CMPT 894 – Spring 2008.
Pushdown Automata (PDA) Part 2 While I am distributing graded exams: Design a PDA to accept L = { a m b n : m  n; m, n > 0} MA/CSSE 474 Theory of Computation.
1 Theory of Computation 計算理論 2 Instructor: 顏嗣鈞 Web: Time: 9:10-12:10 PM, Monday Place: BL 103.
::ICS 804:: Theory of Computation - Ibrahim Otieno SCI/ICT Building Rm. G15.
CS355 – Theory of Computation Dr. Aidan Mooney, September 2006 National University of Ireland, Maynooth Department of Computer Science.
© 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.
Theory of Languages and Automata
Mathematical Operational Semantics and Finitary System Behaviour Stefan Milius, Marcello Bonsangue, Robert Myers, Jurriaan Rot.
Pushdown Automata (PDAs)
1 INFO 2950 Prof. Carla Gomes Module Modeling Computation: Language Recognition Rosen, Chapter 12.4.
Saeid Pashzadeh Jan 2009 Theory of Computation 1.
9.7: Chomsky Hierarchy.
CS 208: Computing Theory Assoc. Prof. Dr. Brahim Hnich Faculty of Computer Sciences Izmir University of Economics.
Foundations of (Theoretical) Computer Science Chapter 2 Lecture Notes (Section 2.2: Pushdown Automata) Prof. Karen Daniels, Fall 2010 with acknowledgement.
Grammars A grammar is a 4-tuple G = (V, T, P, S) where 1)V is a set of nonterminal symbols (also called variables or syntactic categories) 2)T is a finite.
September1999 CMSC 203 / 0201 Fall 2002 Week #15 – 2/4/6 December 2002 Prof. Marie desJardins.
1 Pushdown Automata There are context-free languages that are not regular. Finite automata cannot recognize all context-free languages.
Regular Grammars Reading: 3.3. What we know so far…  FSA = Regular Language  Regular Expression describes a Regular Language  Every Regular Language.
Algorithms for hard problems Automata and tree automata Juris Viksna, 2015.
Grammar Set of variables Set of terminal symbols Start variable Set of Production rules.
1 CD5560 FABER Formal Languages, Automata and Models of Computation Lecture 12 Mälardalen University 2007.
Costas Busch - LSU1 Linear Grammars Grammars with at most one variable at the right side of a production Examples:
1 Introduction to the Theory of Computation Regular Expressions.
Copyright © Curt Hill Other Automata Pushdown through Turing machines.
Pushdown Automata Chapter 12. Recognizing Context-Free Languages Two notions of recognition: (1) Say yes or no, just like with FSMs (2) Say yes or no,
1 Chapter Pushdown Automata. 2 Section 12.2 Pushdown Automata A pushdown automaton (PDA) is a finite automaton with a stack that has stack operations.
Theory of Languages and Automata By: Mojtaba Khezrian.
Theory of Computation. Introduction to The Course Lectures: Room ( Sun. & Tue.: 8 am – 9:30 am) Instructor: Dr. Ayman Srour (Ph.D. in Computer Science).
1 Linear Grammars Grammars with at most one variable at the right side of a production Examples:
Review : Theory of Computation. Regular Language and Finite Automata Context-free Language and Pushdown Automata Turing Machine and Recursive Enumerable.
Theory of Languages and Automata By: Mojtaba Khezrian.
6. Pushdown Automata CIS Automata and Formal Languages – Pei Wang.
Language Recognition MSU CSE 260.
Formal Languages, Automata and Models of Computation
Formal Foundations-II [Theory of Automata]
Formal Methods in software development
Non Deterministic Automata
Review : Theory of Computation
Linear Bounded Automata LBAs
Chapter 7 PUSHDOWN AUTOMATA.
Course 2 Introduction to Formal Languages and Automata Theory (part 2)
Chapter 2 FINITE AUTOMATA.
CSE322 Chomsky classification
REGULAR LANGUAGES AND REGULAR GRAMMARS
Summary.
CSE322 The Chomsky Hierarchy
Jaya Krishna, M.Tech, Assistant Professor
Non-Deterministic Finite Automata
Non Deterministic Automata
Formal Methods in software development
Chapter 1 Regular Language
The Chomsky Hierarchy Costas Busch - LSU.
Presentation transcript:

1212 Models of Computation: Automata and Processes Jos Baeten

1212 Models of computation Automata theory and formal languages Turing machine Computability Algorithm Complexity

1212 Models of computation Automaton is model of computer input/output function stand alone batch process Add notion of interaction-> concurrency theory, process theory

1212 Thesis Process theory is just as important to every computer science student as automata theory Can be taught together in every undergraduate curriculum Analogies help, standardization can ensue

1212 A cook’s tour of automata and processes Some answers, some questions

1212 From automata theory: A regular language: deterministic finite automaton non-deterministic finite automaton right-linear grammar left-linear grammar regular expression

1212 From process theory: A regular process: deterministic finite automaton non-deterministic finite automaton right-linear grammar left-linear grammar regular expression

1212 A regular process A finite transition system modulo bisimulation edge-labeled, initial state, set of final states A finite guarded linear recursive specification: action prefix + recursion 0 1

1212 A regular expression Not all regular processes can be described by a regular expression (w.r.t. bisimulation)

1212 X = a.Y + 1 Y = b.X + 1 X = a.Y + 1 = a.(b.X + 1) + 1 = a.b.X + a X = (ab)*(a.1 + 1) Y = b(ab)*(a.1 + 1) + 1 = left distributivity of over + holds in language equivalence Example b a

1212 Milner 1984 Not for bisimulation equivalence. Question: which finite behaviours are bisimulation equivalent to a regular expression? Answer: well-behaved ones B, Corradini, Grabmayer. JACM 2007.

1212 Consequence Iteration not basic programming construct for parallel programming.

1212 Regular expressions +choice sequential composition 0inaction,  1skip,  aaction *iteration So, not recursion

1212 Reg. exp. to finite automata

1212 Algebra for regular expressions

1212 Need conditional rule RSP*:x = yx + z  x = y*z guarded, i.e. y does not have the empty word property, y ≠ y + 1

1212 Open question The algebra with RSP* is ground-complete.

1212 Context-free language: Context-free grammar Push-down automaton

1212 What is a context-free process? A guarded recursive specification over TSP: +choice sequential composition 0inaction 1skip aaction (prefix)

1212 Context-free process B, Bergstra, Klop. JACM Restricted Greibach normal form.

1212 A push-down automaton? Theorem: any context-free process is bisimulation equivalent to a regular process communicating with a stack.

1212 Stack

1212 Different classes of processes Regular: action, +, 0, 1 Context-free: add seq. comp. Basic parallel: add ||, no communication Basic communicating: add || with comm. Parallel: add seq.comp. to basic parallel Communicating: add seq.comp. to basic comm.

1212 Bag

1212 A non-theorem Theorem: any basic parallel process is bisimulation equivalent to a regular process communicating with a bag. Problem: need to detect termination. Bag with termination is not basic parallel.

1212 Turing machine Theorem: any computable process is bisimulation equivalent to a regular process communicating with two stacks. B, Bergstra, Klop, TCS 1987.

1212 Another question What set of processes do you get as a regular process communicating with a queue (with termination)? A queue is a communicating process, only if arbitrary communication is allowed (or binary communication plus renaming).

1212 Conclusion Interesting research area. Canonizes concurrency theory as a foundation of computer science.