Title: Synchronization strategies for global computing
1Synchronization strategiesfor global computing
Thesis Progress Report
Ivan Lanese Computer Science Department University
of Pisa
Relator
Prof. Ugo Montanari
2Roadmap
- Global computing
- SHR and other formal tools
- What we did in the first year
- What we planned after the first year
- What we have done
- What is still to be done
3Roadmap
- Global computing
- SHR and other formal tools
- What we did in the first year
- What we planned after the first year
- What we have done
- What is still to be done
4What is global computing?
- Essentially networks deployed on huge areas
- It is becoming the most widespread computing
paradigm - Internet, wireless communication networks,
overlay networks
5Features of global computing systems
- Distribution
- Huge areas localities can not always be hidden
- Mobility
- Both physical and code mobility
- Eterogeneity
- Interoperability, coordination
- Openness
- Reconfigurability
6Formal methods for GC
- Building models of the system
- To concentrate on a particular aspect
- To abstract from details
- To analyze the properties of the system before
building it - Traditional formal methods are not enough for GC
- Mobility must be modeled explicitly
- Need for compositionality
- Need for more abstraction
7High level models
- We look for models at high level of abstraction
- Models of coordination among subsystems
- For making the model of the whole system
treatable - We need powerful primitives
- Multiple synchronizations
- Abstractions of full protocols
- Declarative specification of constraints
- Possible evolutions derived as solution of system
of constraints
8Roadmap
- Global computing
- SHR and other formal tools
- What we did in the first year
- What we planned after the first year
- What we have done
- What is still to be done
9Synchronized Hyperedge Replacement
- Follows the traditional approach of graph
transformation - Deals well with distribution, mobility,
compositionality - (Hyper)edges are systems connected through common
nodes - Productions describe the evolution of single
edges - Local effect, easy to implement
- Synchronization via constraints on nodes
- Global constraint solving algorithm to find
allowed transitions - Productions applied indipendently
- Allows to define complex transformations
- Allows multiple synchronization
- Declarative approach
10Hyperedge Replacement Systems
- A production describes how the hyperedge L is
rewritten into the graph R
L
R
H
3
3
4
4
2
2
1
1
11Hyperedge Replacement Systems
- A production describes how the hyperedge L is
transformed into the graph R
Many concurrent rewritings are allowed
12Synchronizing productions
- Synchronized transitions we associate actions
to nodes. A transition is allowed iff the
synchronization constraints imposed on actions
are satisfied - Many synchronization models are possible (Hoare,
Milner, ...)
13An example Milner SHR
- Milner synchronization pair of edges can
synchronize by doing complementary actions
14SHR with mobility
15Other formal tools CommUnity in one slide
- Architectural model of concurrent systems
- Based on communication via channels and
synchronization of actions - Separation between computation and coordination
concerns - Computation inside programs
- Coordination explicitly represented via morphisms
and special programs (cables) - Composition via colimits
16Other formal tools Tile Model in one slide
- Extension of SOS systems and rewriting logic that
allows synchronization - Rules have trigger and effect
- Operators of horizontal, vertical and monoidal
composition - Useful for studying observational properties of
open systems
17Roadmap
old
- Global computing
- SHR and other formal tools
- What we did in the first year
- What we planned after the first year
- What we have done
- What is still to be done
18Comparing models for GC
old
- Comparing synchronization strategies, mobility
strategies and binding operators in different
models - Comparative analysis of the following paradigms
- Fusion Calculus calculus for mobility, allows
fusions - SHR already presented in detail
- Logic programming developed programming
paradigm, we use it as goal rewriting mechanism,
to be extended to deal with GC systems - Mapping of Fusion Calculus into SHR and of SHR
into logic programming - Fusion Calculus is a subset of Milner SHR
- Logic programming (with transactions) related to
Hoare SHR
19 Comparing strategies for compositionality
old
- Two approaches to compositionality
- Categorical approach via universal constructions
(colimits) - Algebraic approach via operators for building
systems - Our case study CommUnity vs Tile Model
20Results from CommUnity vs tiles
old
- Semantics for CommUnity
- Decomposition of CommUnity programs
- New algebra of connectors (in the Tile Model)
that simulates CommUnity synchronization - Correlation between colimit and algebraic aspects
(bisimulation, axiomatization)
21Roadmap
plan
- Global computing
- SHR and other formal tools
- What we did in the first year
- What we planned after the first year
- What we have done
- What is still to be done
22A physical analogy
plan
- Physical systems
- Many interacting components
- Partial derivative equations for parts of the
space - Components of the system gives boundary
conditions - The solutions of the system of equations are the
allowed behaviors - Global computing systems
- Equations associated to the interfaces
- Equations are a declarative way of specifying
coordination - Only simple equations used in past works
- Hoare and Milner synchronization in SHR
- Developing new models using this analogy
23Different items
plan
- Extending synchronization algebras with mobility
- Standard synchronization algebras allow to
categorize synchronization models - Need extensions to be applied to GC models
- SHR well-suited for these analysis
- Analyzing observational semantics of GC models
- Allows to analyze incomplete systems
(compositionality) - Tile Logic well-suited for such analysis
- Hybrid models
- For taking the best features of different models
- Suggested by the comparisons done
24General aim
plan
- Double aim
- Analyzing existing models and their relationships
- Looking for new models for GC systems
25Roadmap
ok
- Global computing
- SHR and other formal tools
- What we did in the first year
- What we planned after the first year
- What we have done
- What is still to be done
26SAMs (1)
ok
- Synchronization algebras with mobility
- Extend synchronization algebras to deal with name
mobility and local resources - Different synchronization policies allowed
- Simple ones Milner, Hoare, broadcast
- More complex ones with priority, treshold
synchronization - Like differential equations for physics
27SAMs (2)
ok
- SAs specify composition of actions
- SAMs also gives
- Mapping from parameters of synchronizing actions
and parameters of the result - Fusions among parameters
- Final actions (performed on local channels)
- Some more technical stuff
28An example SAM for Milner synchronization
ok
- Actions normal actions, coactions, tau, epsilon
- Normal actions synchronize with corresponding
coactions giving tau, corresponding parameters
are fused, no parameters are propagated - Anything synchronize with epsilon, action and
parameters are propagated, no fusions - No other synchronization is allowed
- Only tau and epsilon can be done on local channels
29Applying SAMs
ok
- Applied in the context of SHR
- Parametric SHR
- The SAM is a parameter of the model
- Different models obtained via instantiation
- Properties can be proved in general
- Heterogeneous SHR
- Each node is labelled by a SAM
- SAMs are required to form a commutative monoid
- Node fusions cause SAMs composition
- Broadcast fusion calculus
- Via the mapping discovered in the first year
30Abstract semantics for SHR
ok
- Bisimulation for (parametric) SHR
- Congruence results w.r.t. a suitable algebra of
graphs - Found using the Tile Model as framework, but then
provable indipendently
31Extending CommUnity vs Tile Model (1)
ok
- Analysis of the class of connectors for CommUnity
- 3 different semantics for connectors
- observational
- axiomatic
- denotational
- The 3 semantics are equivalent
- Study of the expressivity of different classes of
connectors - The larger class allows to produce a connector
for each denotation
? 0 1
00 tick untick
01 untick untick
10 untick untick
11 untick tick
32Extending CommUnity vs Tile Model (2)
ok
- Double correspondance between categorical and
algebraic approach - Starting diagram and colimit equals up to
bisimulation - Axiomatization of bisimulation and reduction to
normal form allow to compute colimit algebraically
33Roadmap
todo
- Global computing
- SHR and other formal tools
- What we did in the first year
- What we planned after the first year
- What we have done
- What is still to be done
34From planned work
todo
- More refined abstract semantics
- Abstract semantics for SHR is very (too)
distinguishing - Hybrid models
- Models with different synchronization policies
have been derived but their properties have to be
analyzed in more depth - What about other hybrid models?
- SAMs
- SAMs have been applied to SHR
- Can them be applied to other formalisms
(process-calculi)?
35New ideas
todo
- Refining
- To bridge the gap between high level models and
implementation - Must preserve behavioral properties
- Combining SHR and bigraphs
- Bigraphs and SHR have the same field of
application but different aim (double structure
vs compositionality)
36Bibliography (old)
- Software Architecture, Global Computing and
Graph Transformation via Horn Clauses, I. Lanese
and U. Montanari, Proceedings SBES 2002 16th
Brazilian Symposium on Software Engineering - A graphical Fusion Calculus, I. Lanese and U.
Montanari, Proceedings of CoMeta Computational
Metamodels Final Workshop, ENTCS 104 - Mapping Fusion and Synchronized Hyperedge
Replacement into Logic Programming, I. Lanese
and U. Montanari, under review for publication in
a special issue of TPLP
37Bibliography (new)
- Synchronization algebras with mobility for graph
transformations, I. Lanese and U. Montanari,
Proceedings FGUC 2004, ENTCS, to appear - Synchronized Hyperedge Replacement for
heterogeneus systems, I. Lanese and E. Tuosto,
submitted to COORDINATION 2005 - New insights on architectural connectors, R.
Bruni, J.L. Fiadeiro, I. Lanese, A. Lopes and U.
Montanari, Proceedings IFIP TCS 2004, Kluwer
Academics - Normal forms for stateless connectors, R.
Bruni, I. Lanese and U. Montanari, submitted to
CALCO 2005
38End of talk
Thanks
Questions?
39Observational and abstract semantics
- Analyzing observational and abstract semantics of
models - Useful for abstracting details
- Important to analyze relationships with
compositionality - Tile Model is well suited for this kind of
analysis - Existing criteria for compositionality too
restrictive for GC applications
40Hybrid models
- Plugging features from a model into another one
- Expressiveness and properties of new models must
be analyzed - Ongoing work
- Logic programming with restriction
- Concurrent Fusion Calculus
- New ideas
- Non Milner Fusion Calculus
- Non Hoare logic programming
41Algebra of synchronization strategies
- Synchronization algebras
- Categorize synchronization strategies
- Extending with mobility, name-handling,
- Apply to existing models to make them parametric
w.r.t. synchronization strategies - Studying models where different synchronization
strategies coexist - SHR good for first analysis