Download presentation
Presentation is loading. Please wait.
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.
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.