1 Synchronization strategies for global computing models Ivan Lanese Computer Science Department University of Bologna.

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

1 Ivan Lanese Computer Science Department University of Bologna Italy Managing faults and compensations in SOCK Joint work with Claudio Guidi, Fabrizio.
Towards a Practical Composition Language Oscar Nierstrasz Software Composition Group University of Bern.
By Philippe Kruchten Rational Software
1 Reversibility for Recoverability Ivan Lanese Computer Science Department FOCUS research group University of Bologna/INRIA Bologna, Italy.
1 Towards formal manipulations of scenarios represented by High-level Message Sequence Charts Loïc Hélouet Claude Jard Benoît Caillaud IRISA/PAMPA (INRIA/CNRS/Univ.
An Associative Broadcast Based Coordination Model for Distributed Processes James C. Browne Kevin Kane Hongxia Tian Department of Computer Sciences The.
Course on Probabilistic Methods in Concurrency (Concurrent Languages for Probabilistic Asynchronous Communication) Lecture 1 The pi-calculus and the asynchronous.
Roberto Pisa, Italy 13 June 2008 WADT Tiles for Reo Roberto Bruni Dipartimento di Informatica Università di Pisa WADT th International.
SHReQ: Coordinating Application Level QoS Speaker: Ivan Lanese Dipartimento di Informatica Università di Pisa Authors: Dan Hirsch & Emilio Tuosto Dipartimento.
1 Ivan Lanese Computer Science Department University of Bologna Italy Towards a Unifying Theory for Web Services Composition Manuel Mazzara Faculty of.
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 Ivan Lanese Computer Science Department University of Bologna Roberto Bruni Computer Science Department University of Pisa A mobile calculus with parametric.
Synchronization Algebras with Mobility for Graph Transformations joint work with Ugo Montanari Dipartimento di Informatica Università di Pisa Ivan Lanese.
1 SOCK and JOLIE from the formal basis to a service oriented programming language Ivan Lanese Computer Science Department University of Bologna Italy Joint.
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 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.
07/06/98 知的インタフェース特論 1 Operational Semantics Again, the question? Operational Model = Labeled Transition System If P and Q yields a same LTS. How to define.
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 Ivan Lanese Computer Science Department University of Bologna/INRIA Italy Error Handling: From Theory to Practice Joint work with Fabrizio Montesi italianaSoftware.
1 Static vs dynamic SAGAs Ivan Lanese Computer Science Department University of Bologna/INRIA Italy.
1 Joint work with Claudio Antares Mezzina (INRIA), Jean-Bernard Stefani (INRIA) and Alan Schmitt (INRIA) Controlling Reversibility in Rhopi Ivan Lanese.
1 Ivan Lanese Computer Science Department University of Pisa Prof. Ugo Montanari Synchronization strategies for global computing Relator: Thesis Progress.
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.
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 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 Italy Towards a Unifying Theory for Web Services Composition Manuel Mazzara Faculty of.
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.
Architectural Design Establishing the overall structure of a software system Objectives To introduce architectural design and to discuss its importance.
Dynamic Choreographies Safe Runtime Updates of Distributed Applications Ivan Lanese Computer Science Department University of Bologna/INRIA Italy Joint.
Formalizing the Asynchronous Evolution of Architecture Patterns Workshop on Self-Organizing Software Architectures (SOAR’09) September 14 th 2009 – Cambrige.
An Algebra for Composing Access Control Policies (2002) Author: PIERO BONATTI, SABRINA DE CAPITANI DI, PIERANGELA SAMARATI Presenter: Siqing Du Date:
SDS Foil no 1 Process Algebra Process Algebra – calculating with behaviours.
Towards Global and Local Types for Adaptation Ivan Lanese Computer Science Department University of Bologna/INRIA Italy Joint work with Mario Bravetti,
Advanced Topics in SE Spring Process Algebra Hossein Hojjat Formal Methods Lab University of Tehran.
Reactive systems – general
Ivan Lanese Computer Science Department University of Bologna/INRIA Italy Amending Choreographies Joint work with Fabrizio Montesi and Gianluigi Zavattaro.
Ivan Lanese Computer Science Department University of Bologna/INRIA Italy Causal-Consistent Reversibility in a Tuple-Based Language Joint work with Elena.
CS5204 – Operating Systems 1  -Calculus Reasoning about concurrency and communication (Part 1).
11/19/20151 Metodi formali nello sviluppo software a.a.2013/2014 Prof.Anna Labella.
Ivan Lanese Computer Science Department University of Bologna/INRIA Italy Decidability Results for Dynamic Installation of Compensation Handlers Joint.
2G1516 Formal Methods2005 Mads Dam IMIT, KTH 1 CCS: Processes and Equivalences Mads Dam Reading: Peled 8.5.
2G1516/2G1521 Formal Methods2004 Mads Dam IMIT, KTH 1 CCS: Processes and Equivalences Mads Dam Reading: Peled 8.1, 8.2, 8.5.
28/Dec/2005 Linking the -calculus and B-Method Damien Karkinsky PhD Symposium IFM 2005 ¼.
Process Algebra (2IF45) Abstraction Parallel composition (short intro) Suzana Andova.
CIS 540 Principles of Embedded Computation Spring Instructor: Rajeev Alur
Process Algebra (2IF45) Basic Process Algebra Dr. Suzana Andova.
1 Theoretical Foundations of Concurrency A formal study of concurrency enables: understanding the essential nature of concurrency reasoning about the behavior.
Ivan Lanese Computer Science Department University of Bologna/INRIA Italy Adaptive Choreographies Joint work with Mila Dalla Preda, Jacopo Mauro and Maurizio.
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
Deadlock Freedom by Construction
Internet of Things A Process Calculus Approach
Formal Methods in software development
Presentation transcript:

1 Synchronization strategies for global computing models Ivan Lanese Computer Science Department University of Bologna

2 Roadmap Application field: global computing The main tool: graphs and SHR Some contributions –Parametric synchronization –Compositionality properties –Relations with Fusion Calculus And after?

3 What is global computing? Essentially networks deployed on huge areas Global computing systems quite common nowadays –Internet, wireless communication networks,…

4 Challenges of global computing systems Distribution, mobility, heterogeneity, openness, reconfigurability, non-functional requirements Traditional formal methods are not enough –Strong emphasis on coordination among subsystems –Mobility must be modeled explicitly –Need for compositionality and high abstraction

5 Synchronized Hyperedge Replacement We want to model systems as graphs Components are edges Links are common nodes Behaviour specified by transitions –Derived from the behaviour (productions) of single components –Keep into account synchronization and communication/mobility

6 Hyperedge Replacement Systems A production describes how the hyperedge L is rewritten into the graph R R L H

7 Hyperedge Replacement Systems A production describes how the hyperedge L is transformed into the graph R R R’ Many concurrent rewritings are allowed L L’ H

8 Synchronizing productions Synchronization: productions execute actions on nodes. Actions on the same node should be compatible Two existing synchronization models: Milner (message passing) and Hoare (agreement)

9 Milner SHR Milner synchronization: pair of edges can synchronize by performing complementary actions a A1 a B1 a A2 a B1B2 A2B2

10 SHR with mobility – Actions carry references to nodes – References associated to synchronized actions are matched and corresponding nodes are merged We use node mobility a A1 a A1B1 a A2 a B1B2 A2B2 xy x=y

11 Example x Initial Graph C Brother: C C C C S Star Reconfiguration: w r x C Brother C C C C C C CCC (4)(3)(2)(1) Star Rec. S S SS (5)

12 Algebraic presentation of SHR Helps the development of the theory –Proofs by induction Graphs represented as terms in an algebra –Edges are basic constants –Operators for composing them Transitions described by a labelled transition system Inference rules to derive transitions from productions

13 Parametric synchronization The expressive powers of Hoare and Milner synchronizations are not comparable –Can specify different classes of reconfigurations Is it possible to find some more general framework? Winskel proposed synchronization algebras to describe general synchronizations –Not suitable for synchronizations with mobility We generalize them to SAMs (Synchronization Algebras with Mobility)

14 Synchronization Algebras with Mobility

15 Synchronization Algebras with Mobility SAs specify composition of actions –(a,a, τ ) a synchronizes with a producing τ SAMs also provide –Mapping from parameters of synchronizing actions to parameters of the result –Fusions among parameters –Some more technical stuff

16 Milner SAM on 2 actions in, out, τ, ε l (in, out, τ) l (a, ε, a) aε a inout τ

17 Parametric SHR The SAM is a parameter of the model Different models obtained via instantiation –Allows to recover Hoare and Milner SHR… –…and to easily define new models Properties can be proved for any SAM or for a class of SAMs Many SAMs can be used in the same model –Useful to model heterogeneous systems

18 Compositionality for parametric SHR Bisimulation allows to observe interactions of a system with the environment –Can be defined in a standard way for SHR Bisimulation is a congruence for SHR with most SAMs –Behaviour of a system can be inferred from the behaviour of its components

19 Fusion Calculus Calculi for mobility allow to model concurrent and mobile systems –π-calculus is the most used Fusion Calculus generalizes and simplifies it –More symmetric –Shared-state update

20 Milner SHR vs Fusion Calculus Apparently very different models Some important similarities –Synchronization in Milner style –Mobility using fusions Faithful mapping of Fusion into Milner SHR SHR is more general –Graphical presentation –Multiple synchronizations –Concurrent semantics

21 Fusion Calculus vs Milner SHR FusionMilner SHR ProcessesGraphs Sequential processesHyperedges NamesNodes Comm. primitivesProductions TransitionsInterleaving tr.

22 Example

23 Exploitation of the mapping The results obtained for SHR can be applied to Fusion Calculus PRISMA Calculus = Fusion + SAMs The semantics of Fusion induced by the mapping is compositional –The result does not hold for the standard semantics –The trick is concurrency

24 Future work Some applications to π -calculus –Analysis of the concurrent semantics of π -calculus –Application of SAMs to π -calculus From global computing to service oriented computing –In service oriented computing services are discovered, invoked and composed –Which are the correct primitives to model them? –Which are the interesting properties and equivalences?

25 End of talk