Presentation is loading. Please wait.

Presentation is loading. Please wait.

1212 Models of Computation: Automata and Processes Jos Baeten.

Similar presentations


Presentation on theme: "1212 Models of Computation: Automata and Processes Jos Baeten."— Presentation transcript:

1 1212 Models of Computation: Automata and Processes Jos Baeten

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

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

4 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

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

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

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

8 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

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

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

11 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.

12 1212 Consequence Iteration not basic programming construct for parallel programming.

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

14 1212 Reg. exp. to finite automata

15 1212 Algebra for regular expressions

16 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

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

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

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

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

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

22 1212 Stack

23 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.

24 1212 Bag

25 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.

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

27 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).

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


Download ppt "1212 Models of Computation: Automata and Processes Jos Baeten."

Similar presentations


Ads by Google