1 Ivan Lanese Computer Science Department University of Pisa Prof. Ugo Montanari Synchronization...
-
date post
21-Dec-2015 -
Category
Documents
-
view
214 -
download
0
Transcript of 1 Ivan Lanese Computer Science Department University of Pisa Prof. Ugo Montanari Synchronization...
1
Ivan LaneseComputer Science Department
University of Pisa
Prof. Ugo Montanari
Synchronization strategiesfor global computing
Relator:
Thesis Progress Report
2
Roadmap
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
3
Roadmap
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
4
What is global computing?
Essentially networks
deployed on huge areas
It is becoming the most
widespread computing
paradigm
– Internet, wireless
communication networks,
overlay networks …
5
Features of global computing systems
Distribution
– Huge areas: localities can not always be hidden
Mobility
– Both physical and code mobility
Eterogeneity
– Interoperability, coordination
Openness
Reconfigurability
6
Formal 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
7
High 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
8
Roadmap
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
9
Synchronized 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
10
Hyperedge Replacement Systems
A production describes how the hyperedge L is rewritten into the graph R
R
1
2 3 4
L
1
2 3 4 H
11
Hyperedge Replacement Systems
A production describes how the hyperedge L is transformed into the graph R
R
R’
1
2 3 4
1
2
3
Many concurrent rewritings are allowed
L
L’
1
2 3 4
1
2
3
H
12
Synchronizing 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, ...)
13
An example: Milner SHR
Milner synchronization: pair of edges can synchronize by doing complementary actions
a
3 3
B1 A1
B2 A2
aa a
14
SHR with mobility
– Actions carry tuples of references to nodes (new or already
existent)
– References associated to synchronized actions are matched and
corresponding nodes are merged
We use name mobility
a<x>B1 A1
B2 A2
a<y>a<x>a<y>
(x) (y)x=y
15
Other 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
16
Other 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
17
Roadmap
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
old
18
Comparing models for GC
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
old
19
Comparing strategies for compositionality Two approaches to compositionality
– Categorical approach: via universal constructions
(colimits)
– Algebraic approach: via operators for building
systems
Our case study: CommUnity vs Tile Model
old
20
Results from CommUnity vs tiles
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)
old
21
Roadmap
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
plan
22
A physical analogy
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
plan
23
Different items
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
plan
24
General aim
Double aim:
– Analyzing existing models and their relationships
– Looking for new models for GC systems
plan
25
Roadmap
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
ok
26
SAMs (1)
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
ok
27
SAMs (2)
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
ok
28
An example: SAM for Milner synchronization
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
ok
29
Applying SAMs
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
ok
30
Abstract semantics for SHR
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
ok
31
Extending CommUnity vs Tile Model (1)
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
ticktick
tick
;; idid
∆ 0 100 tick untick01 untick untick10 untick untick11 untick tick
ok
32
Extending CommUnity vs Tile Model (2)
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
ok
33
Roadmap
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
todo
34
From planned work
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)?
todo
35
New ideas
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)
todo
36
Bibliography (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
37
Bibliography (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
38
End of talk
39
Observational 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
40
Hybrid 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
41
Algebra 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