Download presentation
Presentation is loading. Please wait.
1
Roberto Bruni @ Pisa, Italy 13 June 2008 WADT 20081 Tiles for Reo Roberto Bruni Dipartimento di Informatica Università di Pisa WADT 2008 19th International Workshop on Algebraic Development Techniques Farhad Arbab (CWI) Dave Clarke (CWI) Ivan Lanese (Bologna) Ugo Montanari (Pisa)
2
Roberto Bruni @ Pisa, Italy 13 June 2008 WADT 20082 Content Introduction Tiles basics Reo basics Tile semantics of Reo Conclusion
3
Roberto Bruni @ Pisa, Italy 13 June 2008 WADT 20083 Introduction Reo is an exogenous coordination language based on a calculus of connector composition –http://homepages.cwi.nl/~proenca/webreo/http://homepages.cwi.nl/~proenca/webreo/ Tile Systems offer a coordination model equipped with flexible synchronization primitives We aim to show that tiles give an adequate semantic setting for Reo –exercise in understanding –tiles have some advantages w.r.t. colouring tables, constraint-automata, graph transformations
4
Roberto Bruni @ Pisa, Italy 13 June 2008 WADT 20084 Content Introduction Tiles basics Reo basics Tile semantics of Reo Conclusion
5
Roberto Bruni @ Pisa, Italy 13 June 2008 WADT 20085 Tiling as a Domino Game
6
Roberto Bruni @ Pisa, Italy 13 June 2008 WADT 20086 Graph-like Decorated Tiles Next slides will focus on tiles that exploit some graph-like structures of configurations and observations –a bit vague about exact tile syntax Key notions: –configurations (with interfaces) –observations –tiles = trigger+effect rewrites
7
Roberto Bruni @ Pisa, Italy 13 June 2008 WADT 20087 parallel composition Configurations input interface output interface sequential composition (interfaces can be typed)
8
Roberto Bruni @ Pisa, Italy 13 June 2008 WADT 20088 Configurations input interface output interface parallel composition sequential composition functoriality
9
Roberto Bruni @ Pisa, Italy 13 June 2008 WADT 20089 Configurations input interface output interface parallel composition sequential composition functoriality + symmetries = symmetric monoidal cat
10
Roberto Bruni @ Pisa, Italy 13 June 2008 WADT 200810 Observations initial interface final interface concurrent computation
11
Roberto Bruni @ Pisa, Italy 13 June 2008 WADT 200811 Tiles Combine horizontal and vertical structures through interfaces initial configuration final configuration trigger effect
12
Roberto Bruni @ Pisa, Italy 13 June 2008 WADT 200812 Tiles Compose tiles –horizontally
13
Roberto Bruni @ Pisa, Italy 13 June 2008 WADT 200813 Tiles Compose tiles –horizontally –(also vertically and in parallel) symmetric monoidal double cat
14
Roberto Bruni @ Pisa, Italy 13 June 2008 WADT 200814 Tile Semantics Recipee Operational semantics: –define interfaces, configurations and observations –define tiles for configuration constructors Abstract semantics: –ordinary LTS where labels are trigger-effect pairs –tile bisimilarity, tile trace equivalence Congruence results: –tile decomposition property –basic source format
15
Roberto Bruni @ Pisa, Italy 13 June 2008 WADT 200815 Content Introduction Tiles basics Reo basics Tile semantics of Reo Conclusion
16
Roberto Bruni @ Pisa, Italy 13 June 2008 WADT 200816 Reo Basics Reo channels: point-to-point primitive connectors –one input-end + one output-end –two input-ends –two output-ends Reo node: the points where channel ends conjoin –input node: only input-ends –output-node: only output-ends –mixed node: both input-ends and output-ends Interaction with components: –write operation –take operation
17
Roberto Bruni @ Pisa, Italy 13 June 2008 WADT 200817 Replicators A write to an input node succeeds only if all input-ends coincident on that node accept the data item –input nodes act essentially as replicators
18
Roberto Bruni @ Pisa, Italy 13 June 2008 WADT 200818 Mergers A take on an output node succeeds only if at least one of the output-ends coincident on that node offers a data item –if more than one available, one is selected non- deterministically and the others excluded –output nodes act essentially as mergers
19
Roberto Bruni @ Pisa, Italy 13 June 2008 WADT 200819 Replicators and Mergers Mixed nodes as pumping stations: merger+replicator
20
Roberto Bruni @ Pisa, Italy 13 June 2008 WADT 200820 Colouring Tables SyncLossySyncSyncDrain
21
Roberto Bruni @ Pisa, Italy 13 June 2008 WADT 200821 Exclusive Router A B C D E FG sAsA sCsC sDsD sFsF sGsG ls C ls D sd synchronous channel lossy synchronous channel synchronous drain
22
Roberto Bruni @ Pisa, Italy 13 June 2008 WADT 200822 Content Introduction Tiles basics Reo basics Tile semantics of Reo Conclusion
23
Roberto Bruni @ Pisa, Italy 13 June 2008 WADT 200823 Tiles Ingredients Node machinery: –typed interfaces –node constructors (stateless) Stateless connectors Stateful connectors Observations –write, take –not-allowed
24
Roberto Bruni @ Pisa, Italy 13 June 2008 WADT 200824 Reo (Mixed) Node
25
Roberto Bruni @ Pisa, Italy 13 June 2008 WADT 200825 Merger
26
Roberto Bruni @ Pisa, Italy 13 June 2008 WADT 200826 Replicator
27
Roberto Bruni @ Pisa, Italy 13 June 2008 WADT 200827 Example: a mixed node A Syntactic sugar A
28
Roberto Bruni @ Pisa, Italy 13 June 2008 WADT 200828 Sync Channel
29
Roberto Bruni @ Pisa, Italy 13 June 2008 WADT 200829 Lossy Sync
30
Roberto Bruni @ Pisa, Italy 13 June 2008 WADT 200830 Sync Drain
31
Roberto Bruni @ Pisa, Italy 13 June 2008 WADT 200831 Sync Spout
32
Roberto Bruni @ Pisa, Italy 13 June 2008 WADT 200832 Example: Exclusive Router A B C E F sAsA ls C sDsD sCsC sd sFsF D G ls D sGsG A B C D E FG sAsA sCsC sDsD sFsF sGsG ls C ls D sd
33
Roberto Bruni @ Pisa, Italy 13 June 2008 WADT 200833 Tiling the Example
34
Roberto Bruni @ Pisa, Italy 13 June 2008 WADT 200834 Tiling the Example
35
Roberto Bruni @ Pisa, Italy 13 June 2008 WADT 200835 Tiling the Example
36
Roberto Bruni @ Pisa, Italy 13 June 2008 WADT 200836 Some Obvious Equivalences
37
Roberto Bruni @ Pisa, Italy 13 June 2008 WADT 200837 Some Obvious Equivalences...
38
Roberto Bruni @ Pisa, Italy 13 June 2008 WADT 200838 Stateless vs Stateful Only stateless connectors so far –colouring tables are ok –static tile configurations (see axiomatization in TCS, journal version of our CALCO 2005 paper) Stateful connectors are more interesting –colouring tables miss final configuration
39
Roberto Bruni @ Pisa, Italy 13 June 2008 WADT 200839 Empty Async FIFO 1 [ ] [ d ] [ ] d
40
Roberto Bruni @ Pisa, Italy 13 June 2008 WADT 200840 Full Async FIFO 1 [ d ] [ ] [ d ] d
41
Roberto Bruni @ Pisa, Italy 13 June 2008 WADT 200841 Towards Async FIFO 2 [ ] many FIFO 1 introduce delays depending on their number d [d] [ ] [d] [ ] d
42
Roberto Bruni @ Pisa, Italy 13 June 2008 WADT 200842 Empty Sync FIFO 1 { } { d } { } d d d
43
Roberto Bruni @ Pisa, Italy 13 June 2008 WADT 200843 Full Sync FIFO 1 { } { d } { } { d } { d 1 } { d 2 } d2d2 d1d1 d
44
Roberto Bruni @ Pisa, Italy 13 June 2008 WADT 200844 Async FIFO 2 and FIFO k { } [ ] d { } [d] { } [ ] d { } [ ] { }...
45
Roberto Bruni @ Pisa, Italy 13 June 2008 WADT 200845 Async FIFO ∞ ( ] ( d ] d ( ] ( d ] d
46
Roberto Bruni @ Pisa, Italy 13 June 2008 WADT 200846 Derived Operators: PAR _|_
47
Roberto Bruni @ Pisa, Italy 13 June 2008 WADT 200847 Derived Operators: SEQ _::_
48
Roberto Bruni @ Pisa, Italy 13 June 2008 WADT 200848 Derived Operators: PLUG(x) x
49
Roberto Bruni @ Pisa, Italy 13 June 2008 WADT 200849 Derived Operators: CLOSE
50
Roberto Bruni @ Pisa, Italy 13 June 2008 WADT 200850 Content Introduction Tiles basics Reo basics Tile semantics of Reo Conclusion
51
Roberto Bruni @ Pisa, Italy 13 June 2008 WADT 200851 Conclusion Operational semantics: –local rewrite rules combined by flexible synchronizations Abstract semantics: –compositional: tile bisimilarity is a congruence Advantages w.r.t. –colouring: final configurations are explicit for stateful connectors –c-automata: structured proofs, concurrent semantics –graph transformations: uniform framework for dynamic reconfigurations
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.