Roberto Pisa, Italy 13 June 2008 WADT 20081 Tiles for Reo Roberto Bruni Dipartimento di Informatica Università di Pisa WADT 2008 19th International.

Slides:



Advertisements
Similar presentations
CommUnity, Tiles and Connectors joint work with Roberto Bruni José Luiz Fiadeiro Antónia Lopes Ugo Montanari Ivan Lanese Dipartimento di Informatica Università.
Advertisements

Connectors and Concurrency joint work with Ugo Montanari Roberto Bruni Dipartimento di Informatica Università di Pisa Dagstuhl Seminar #04241, September.
Event structures Mauro Piccolo. Interleaving Models Trace Languages:  computation described through a non-deterministic choice between all sequential.
Towards a Practical Composition Language Oscar Nierstrasz Software Composition Group University of Bern.
1 Reversibility for Recoverability Ivan Lanese Computer Science Department FOCUS research group University of Bologna/INRIA Bologna, Italy.
A. Bucchiarone / Pisa/ 30 Jan 2007 Dynamic Software Architectures for Global Computing Antonio Bucchiarone PhD Student – IMT Graduate School Piazza S.
SHReQ: Coordinating Application Level QoS Speaker: Ivan Lanese Dipartimento di Informatica Università di Pisa Authors: Dan Hirsch & Emilio Tuosto Dipartimento.
Dynamic Graph Transformation Systems Hernán Melgratti IMT Lucca Institute for Advance Studies Joint Work with Roberto Bruni Dipartimento di Informatica,
1 Ivan Lanese Computer Science Department University of Bologna Italy Exploiting user-definable synchronizations in graph transformation.
1 The SOCK SAGA Ivan Lanese Computer Science Department University of Bologna Italy Joint work with Gianluigi Zavattaro.
1 Ivan Lanese Computer Science Department University of Pisa (moved to Bologna) Synchronization strategies for global computing models Ph.D. thesis discussion.
1 Synchronization strategies for global computing models Ivan Lanese Computer Science Department University of Bologna.
1 Ivan Lanese Computer Science Department University of Bologna Roberto Bruni Computer Science Department University of Pisa A mobile calculus with parametric.
1 Formal Models for Distributed Negotiations Description Roberto Bruni Dipartimento di Informatica Università di Pisa XVII Escuela de Ciencias Informaticas.
1 Formal Models for Distributed Negotiations Zero-Safe Nets Roberto Bruni Dipartimento di Informatica Università di Pisa XVII Escuela de Ciencias Informaticas.
Synchronization Algebras with Mobility for Graph Transformations joint work with Ugo Montanari Dipartimento di Informatica Università di Pisa Ivan Lanese.
1 Ivan Lanese Computer Science Department University of Pisa (moved to Bologna) Synchronization strategies for global computing models Ph.D. thesis discussion.
1 Ivan Lanese Computer Science Department University of Bologna Italy Behavioural Theory for SSCC Joint work with Luis Cruz-Filipe, Francisco Martins,
1 Formal Models for Distributed Negotiations Concurrent Languages Translation Roberto Bruni Dipartimento di Informatica Università di Pisa XVII Escuela.
1 Ivan Lanese Computer Science Department University of Bologna Italy Evolvable systems: some ideas for modelling With input from Davide Sangiorgi, Fabrizio.
Bridging the gap between Interaction- and Process-Oriented Choreographies Talk by Ivan Lanese Joint work with Claudio Guidi, Fabrizio Montesi and Gianluigi.
New insights on architectural connectors joint work with Roberto Bruni University of Pisa, Italy Ugo Montanari University of Pisa, Italy José Luiz Fiadeiro.
1 GT-VC 2005, San Francisco, August 22, 2005 Ugo Montanari Università di Pisa Ivan Lanese Università di Pisa Hoare vs. Milner: Comparing Synchronizations.
1 Ivan Lanese Dipartimento di Informatica Università di Pisa Ugo Montanari From Graph Rewriting to Logic Programming joint work with.
Bridging the gap between Interaction- and Process-Oriented Choreographies Talk by Ivan Lanese Joint work with Claudio Guidi, Fabrizio.
1 Mapping Fusion and Synchronized Hyperedge Replacement into Logic Programming joint work with Ugo Montanari Ivan Lanese Dipartimento di Informatica Università.
Synchronized Hyperedge Replacement for Heterogeneous Systems joint work with Emilio Tuosto Dipartimento di Informatica Università di Pisa Ivan Lanese Dipartimento.
Bridging the gap between Interaction- and Process-Oriented Choreographies Talk by Ivan Lanese Joint work with Claudio Guidi, Fabrizio Montesi and Gianluigi.
1 Static vs dynamic SAGAs Ivan Lanese Computer Science Department University of Bologna/INRIA Italy.
1 Formal Models for Transactions: Zero Safe Nets Roberto Bruni Dipartimento di Informatica Università di Pisa Models and Languages for Coordination and.
1 Ivan Lanese Computer Science Department University of Pisa Prof. Ugo Montanari Synchronization strategies for global computing Relator: Thesis Progress.
Pre-nets, (read arcs) and unfolding: A functorial presentation Paolo Baldan (Venezia) Roberto Bruni (Pisa/Illinois) Ugo Montanari (Pisa) WADT Frauenchiemsee,
1 Ivan Lanese Computer Science Department University of Bologna Italy Concurrent and located synchronizations in π-calculus.
1 CoMeta, final workshop, /12/2003 Ivan Lanese Dipartimento di Informatica Università di Pisa Ugo Montanari A graphical Fusion Calculus Joint work.
Modeling a Service and Session Calculus with Hierarchical Graph Transformation Roberto Bruni, Andrea Corradini, Ugo Montanari (based on joint work with.
Operational Semantics Semantics with Applications Chapter 2 H. Nielson and F. Nielson
Modeling Community with Tiles joint work with Ivan Lanese Ugo Montanari Dipartimento di Informatica Università di Pisa Roberto Bruni Dipartimento di Informatica.
1 Programming SAGAs in SOCK Ivan Lanese Computer Science Department University of Bologna Italy Joint work with Gianluigi Zavattaro The SOCK saga.
1 Ivan Lanese Computer Science Department University of Bologna Italy Behavioural Theory at Work: Program Transformations in a Service-centred Calculus.
An algebra of Connectors for modeling CommUnity with Tiles joint work with Roberto Bruni Ugo Montanari Dipartimento di Informatica Università di Pisa Ivan.
1 Formal Models for Transactions: BizTalk as ZSN Roberto Bruni Dipartimento di Informatica Università di Pisa Models and Languages for Coordination and.
1 Ivan Lanese Computer Science Department University of Bologna Italy Streaming Services in SSCC Joint work with Francisco Martins, Vasco Vasconcelos and.
1 Ivan Lanese Computer Science Department University of Bologna Synchronization strategies for global computing models.
Complete Axioms for Stateless Connectors joint work with Roberto Bruni and Ugo Montanari Dipartimento di Informatica Università di Pisa Ivan Lanese Dipartimento.
Synchronizations with Mobility for Graph Transformations joint work with Ugo Montanari Dipartimento di Informatica Università di Pisa Ivan Lanese Dipartimento.
1 Type-Directed Concurrency Deepak Garg, Frank Pfenning {dg+, Carnegie Mellon University.
Behaviour-Preserving Model Transformation Arend Rensink, University of Twente IPA Spring Days, 18 April 2012.
1 IFIP WG1.3, Udine, September 12, Ugo Montanari, Coalgebras for Named Sets Ugo Montanari Dipartimento di Informatica Università di Pisa Coalgebras.
Coalgebraic Symbolic Semantics Filippo Bonchi Ugo Montanari.
Formalizing the Asynchronous Evolution of Architecture Patterns Workshop on Self-Organizing Software Architectures (SOAR’09) September 14 th 2009 – Cambrige.
SDS Foil no 1 Process Algebra Process Algebra – calculating with behaviours.
Reactive systems – general
Ivan Lanese Computer Science Department University of Bologna/INRIA Italy Amending Choreographies Joint work with Fabrizio Montesi and Gianluigi Zavattaro.
An Ontological Framework for Web Service Processes By Claus Pahl and Ronan Barrett.
Seminar on Component-based Software Engineering Component Coordination Nadia Ramjiawan LIACS - Leiden University Fall 2005.
Natallia Kokash (Accepted for PACO’2011) ACG, 31/05/ Input-output conformance testing for channel-based connectors 1.
1 In the name of God Reo shahmohammadi. 2 Models of coordination Endogenous : primitives of coordination of an entity with others can be resides only.
Roles and Coordination in powerJava M. Baldoni, G. Boella Dipartimento di Informatica, Università degli Studi di Torino (Italy) and L. van der Torre SEN3.
Weak Bisimilarity Coalgebraically Andrei Popescu Department of Computer Science University of Illinois.
Modeling a Service and Session Calculus with Hierarchical Graph Transformation Joint work with Roberto Bruni and Andrea Corradini, second part Ugo Montanari.
MPRI – Course on Concurrency Lectures 11 and 12 The pi-calculus expressiveness hierarchy Catuscia Palamidessi INRIA Futurs and LIX
What’s Ahead for Embedded Software? (Wed) Gilsoo Kim
Francesco Tiezzi IMT Advanced Studies Lucca Causal-Consistent Reversibility in a Tuple-Based Distributed Language Joint work with Elena Giachino, Ivan.
Reo A Calculus for Composition of Connectors (taken from slides of Farhad Arbab)
Architectural Design Rewriting as Architectural Description Language R. Bruni A. LLuch-Lafuente U. Montanari E. Tuosto.
General Description of Network Systems  Ugo Montanari  Dipartimento di Informatica, University of Pisa CINA: Compositionality, Interaction, Negotiation,
Algebra 2 June 18, 2016 Goals:   Identify functions in coordinate, table, or graph form   Determine domain and range of given functions.
Rewriting Nested Graphs, through Term Graphs Roberto Bruni, Andrea Corradini, Fabio Gadducci Alberto Lluch Lafuente and Ugo Montanari Dipartimento di Informatica,
Validating Reconfigurations of Reo Circuits
A MODULAR LTS FOR OPEN REACTIVE SYSTEMS
Presentation transcript:

Roberto Pisa, Italy 13 June 2008 WADT Tiles for Reo Roberto Bruni Dipartimento di Informatica Università di Pisa WADT th International Workshop on Algebraic Development Techniques Farhad Arbab (CWI) Dave Clarke (CWI) Ivan Lanese (Bologna) Ugo Montanari (Pisa)

Roberto Pisa, Italy 13 June 2008 WADT Content  Introduction  Tiles basics  Reo basics  Tile semantics of Reo  Conclusion

Roberto Pisa, Italy 13 June 2008 WADT Introduction Reo is an exogenous coordination language based on a calculus of connector composition – 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

Roberto Pisa, Italy 13 June 2008 WADT Content  Introduction  Tiles basics  Reo basics  Tile semantics of Reo  Conclusion

Roberto Pisa, Italy 13 June 2008 WADT Tiling as a Domino Game

Roberto Pisa, Italy 13 June 2008 WADT 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

Roberto Pisa, Italy 13 June 2008 WADT parallel composition Configurations input interface output interface sequential composition (interfaces can be typed)

Roberto Pisa, Italy 13 June 2008 WADT Configurations input interface output interface parallel composition sequential composition functoriality

Roberto Pisa, Italy 13 June 2008 WADT Configurations input interface output interface parallel composition sequential composition functoriality + symmetries = symmetric monoidal cat

Roberto Pisa, Italy 13 June 2008 WADT Observations initial interface final interface concurrent computation

Roberto Pisa, Italy 13 June 2008 WADT Tiles Combine horizontal and vertical structures through interfaces initial configuration final configuration trigger effect

Roberto Pisa, Italy 13 June 2008 WADT Tiles Compose tiles –horizontally

Roberto Pisa, Italy 13 June 2008 WADT Tiles Compose tiles –horizontally –(also vertically and in parallel) symmetric monoidal double cat

Roberto Pisa, Italy 13 June 2008 WADT 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

Roberto Pisa, Italy 13 June 2008 WADT Content  Introduction  Tiles basics  Reo basics  Tile semantics of Reo  Conclusion

Roberto Pisa, Italy 13 June 2008 WADT 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

Roberto Pisa, Italy 13 June 2008 WADT 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

Roberto Pisa, Italy 13 June 2008 WADT 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

Roberto Pisa, Italy 13 June 2008 WADT Replicators and Mergers Mixed nodes as pumping stations: merger+replicator

Roberto Pisa, Italy 13 June 2008 WADT Colouring Tables SyncLossySyncSyncDrain

Roberto Pisa, Italy 13 June 2008 WADT 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

Roberto Pisa, Italy 13 June 2008 WADT Content  Introduction  Tiles basics  Reo basics  Tile semantics of Reo  Conclusion

Roberto Pisa, Italy 13 June 2008 WADT Tiles Ingredients Node machinery: –typed interfaces –node constructors (stateless) Stateless connectors Stateful connectors Observations –write, take –not-allowed

Roberto Pisa, Italy 13 June 2008 WADT Reo (Mixed) Node

Roberto Pisa, Italy 13 June 2008 WADT Merger

Roberto Pisa, Italy 13 June 2008 WADT Replicator

Roberto Pisa, Italy 13 June 2008 WADT Example: a mixed node A Syntactic sugar A

Roberto Pisa, Italy 13 June 2008 WADT Sync Channel

Roberto Pisa, Italy 13 June 2008 WADT Lossy Sync

Roberto Pisa, Italy 13 June 2008 WADT Sync Drain

Roberto Pisa, Italy 13 June 2008 WADT Sync Spout

Roberto Pisa, Italy 13 June 2008 WADT 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

Roberto Pisa, Italy 13 June 2008 WADT Tiling the Example

Roberto Pisa, Italy 13 June 2008 WADT Tiling the Example

Roberto Pisa, Italy 13 June 2008 WADT Tiling the Example

Roberto Pisa, Italy 13 June 2008 WADT Some Obvious Equivalences   

Roberto Pisa, Italy 13 June 2008 WADT Some Obvious Equivalences... 

Roberto Pisa, Italy 13 June 2008 WADT 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

Roberto Pisa, Italy 13 June 2008 WADT Empty Async FIFO 1 [ ] [ d ] [ ] d

Roberto Pisa, Italy 13 June 2008 WADT Full Async FIFO 1 [ d ] [ ] [ d ] d

Roberto Pisa, Italy 13 June 2008 WADT Towards Async FIFO 2 [ ] many FIFO 1 introduce delays depending on their number d [d] [ ] [d] [ ] d

Roberto Pisa, Italy 13 June 2008 WADT Empty Sync FIFO 1 { } { d } { } d d d

Roberto Pisa, Italy 13 June 2008 WADT Full Sync FIFO 1 { } { d } { } { d } { d 1 } { d 2 } d2d2 d1d1 d

Roberto Pisa, Italy 13 June 2008 WADT Async FIFO 2 and FIFO k { } [ ] d { } [d] { } [ ] d { } [ ] { }...

Roberto Pisa, Italy 13 June 2008 WADT Async FIFO ∞ ( ] ( d ] d ( ] ( d ] d

Roberto Pisa, Italy 13 June 2008 WADT Derived Operators: PAR _|_

Roberto Pisa, Italy 13 June 2008 WADT Derived Operators: SEQ _::_

Roberto Pisa, Italy 13 June 2008 WADT Derived Operators: PLUG(x) x

Roberto Pisa, Italy 13 June 2008 WADT Derived Operators: CLOSE

Roberto Pisa, Italy 13 June 2008 WADT Content  Introduction  Tiles basics  Reo basics  Tile semantics of Reo  Conclusion

Roberto Pisa, Italy 13 June 2008 WADT 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