Presentation is loading. Please wait.

Presentation is loading. Please wait.

1 CoMeta, final workshop, 15-16-17/12/2003 Ivan Lanese Dipartimento di Informatica Università di Pisa Ugo Montanari A graphical Fusion Calculus Joint work.

Similar presentations


Presentation on theme: "1 CoMeta, final workshop, 15-16-17/12/2003 Ivan Lanese Dipartimento di Informatica Università di Pisa Ugo Montanari A graphical Fusion Calculus Joint work."— Presentation transcript:

1 1 CoMeta, final workshop, 15-16-17/12/2003 Ivan Lanese Dipartimento di Informatica Università di Pisa Ugo Montanari A graphical Fusion Calculus Joint work with:

2 2 CoMeta, final workshop, 15-16-17/12/2003 Roadmap Aims Fusion Calculus Synchronized Hyperedge Replacement Mapping Fusion Calculus into SHR Beyond SHR: logic programming Conclusion

3 3 CoMeta, final workshop, 15-16-17/12/2003 Aims of the work Give a more intuitive presentation for Fusion Calculus Applying process calculi to distributed systems is not intuitive because of: –Interleaving semantics –The same operators describes topology and allowed behaviours Comparing two apparently quite different formalisms: Fusion Calculus and Synchronized Hyperedge Replacement –Extending a similar work on π-calculus (Hirsch)

4 4 CoMeta, final workshop, 15-16-17/12/2003 Fusion Calculus vs SHR: an overview Fusion CalculusSHR Process calculusGraph transformation Algebraic modelGraphical representation (but also algebraic notation...) InterleavingConcurrent Milner synchronizationDifferent allowed synchronization models

5 5 CoMeta, final workshop, 15-16-17/12/2003 Fusion Calculus It is an evolution of  -calculus Simpler and more symmetric but also more expressive Introduce fusion of names

6 6 CoMeta, final workshop, 15-16-17/12/2003 Syntax for Fusion Calculus Agents: S::=  i  i.P i P::=0 | S | P 1 |P 2 | (x)P | rec X. P | X

7 7 CoMeta, final workshop, 15-16-17/12/2003 Structural congruence Process: agent up-to the following laws: –| and + are associative, commutative and with 0 as unit –  -conversion –(x)0 = 0, (x)(y)P=(y)(x) P –P|(x)Q=(x)(P|Q) if x not free in P –rec X.P=P[rec X.P/X]

8 8 CoMeta, final workshop, 15-16-17/12/2003 SOS semantics PREF PAR COM SUM PASS SCOPE STRUCT OPEN

9 9 CoMeta, final workshop, 15-16-17/12/2003 Graph transformation Graphs naturally represent the topology of the system Synchronized Hyperedge Replacement for modeling computation, synchronization, reconfiguration Powerful metamodel: –Different process calculi: Ambient, π,... –Software architecture –...

10 10 CoMeta, final workshop, 15-16-17/12/2003 SHR: a 2 step approach Productions to describe the behaviour of single hyperedges: –Local effects (easyer to implement) –Hyperedges rewritten into generic graphs –Constraints on surrounding nodes Global constraint-solving algorithm: –Allows to define complex transformations

11 11 CoMeta, final workshop, 15-16-17/12/2003 Edge 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

12 12 CoMeta, final workshop, 15-16-17/12/2003 Edge 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

13 13 CoMeta, final workshop, 15-16-17/12/2003 Synchronized Hyperedge Replacement Synchronized rewritings: we associate actions to surrounding nodes. A rewriting is allowed iff the synchronization constraints associated to nodes are satisfied Many synchronization models are possible (Hoare, Milner,...)

14 14 CoMeta, final workshop, 15-16-17/12/2003 Synchronized Hyperedge Replacement Milner synchronization: pair of edges can synchronize by doing complementary actions a a a 3 3 B1A1 B2A2

15 15 CoMeta, final workshop, 15-16-17/12/2003 SHR with mobility a (x) (y) B1A1 a ~ a B2A2 a a x= y – Actions carry tuple of references to nodes (new or already existant) – References associated to synchronized actions are matched and corresponding nodes are merged We introduce name mobility

16 16 CoMeta, final workshop, 15-16-17/12/2003 Example b) x C Brother C C C C C C CCC (4)(3)(2)(1) Star Rec. S S SS (5) x Initial Graph C Brother: C C C CS Star Reconfiguration: (w) r(w)

17 17 CoMeta, final workshop, 15-16-17/12/2003 x,y z, w. C(x,w) | C(w,y) | C (y,z) | C(z,x)  Algebraic notation for graphs Example: ring w z

18 18 CoMeta, final workshop, 15-16-17/12/2003  :   (A x N* ) (x, a, y)  if  (x) = (a, y) Associate to each external node its action and its tuple of names  :  is an idempotent substitution (forces some merges on nodes) Rewritings as syntactic judgements Rewriting:  G 1   G 2   ,,

19 19 CoMeta, final workshop, 15-16-17/12/2003 Rewritings as syntactic judgements x 1,…,x n L(x 1,…,x n )   G Productions  ,,  Rewritings generated from productions by applying a suitable set of inference rules (determined by the synchronization model) Derivations  0 G 0   1 G 1  …   n G n   1,11,1  2,22,2 n,nn,n

20 20 CoMeta, final workshop, 15-16-17/12/2003 Fusion Calculus vs SHR FusionSHR ProcessesGraphs Sequential processesHyperedges NamesNodesParallel comp. ScopeRestriction TransitionsRewritings

21 21 CoMeta, final workshop, 15-16-17/12/2003 Translation Using structural congruence we can avoid recursion at top-level

22 22 CoMeta, final workshop, 15-16-17/12/2003 Productions One for each possible action of a standard process

23 23 CoMeta, final workshop, 15-16-17/12/2003 Correspondence theorem We use special rules to force an interleaving behaviour in SHR Bijective correspondence between transitions and rewritings

24 24 CoMeta, final workshop, 15-16-17/12/2003 Example With normal SHR we can execute both the steps at the same time

25 25 CoMeta, final workshop, 15-16-17/12/2003 Beyond SHR: logic programming Logic programming is a well developed programming paradigm –Useful for implementation purposes Which logic programming? –Not only refutations but general partial computation –Limit logic programming to have a correspondence between it and SHR systems: Synchronized Logic Programming »Can be meta-interpreted into standard logic programming

26 26 CoMeta, final workshop, 15-16-17/12/2003 The correspondence Correspondence between SHR with Hoare synchronization and Synchronized Logic Programming –Do you remember last year presentation? SHRSLP GraphsGoals NodesVariables ProductionsClauses TransitionsBig-steps SynchronizationUnification

27 27 CoMeta, final workshop, 15-16-17/12/2003 Synchronized Logic Programming Graphs are goals without functional symbols and constants Big-steps: sequence of SLD steps between “graphs” Functional symbols for modeling actions (unification for synchronization) Logic programming has no restriction operator: we can introduce it

28 28 CoMeta, final workshop, 15-16-17/12/2003 From fusion to logic programming One further step is needed: –Implementing Milner synchronization using Hoare synchronization –Not so easy in a mobile environment –Auxiliary structures for implementing Milner nodes

29 29 CoMeta, final workshop, 15-16-17/12/2003 Conclusion Fusion Calculus a “subcalculus” of interleaving Milner SHR –Essentially two kinds of actions –One action at the time Graphical representation for Fusion Calculus –Separation between topology of the system and behaviour Cross-fertilization between the two models: –Concurrent semantics for Fusion Calculus –Extension of hyperequivalence to general SHR rewritings –Changing the synchronization model of Fusion Calculus

30 30 CoMeta, final workshop, 15-16-17/12/2003 Example

31 31 CoMeta, final workshop, 15-16-17/12/2003 Recursion example Production: Corresponding rewriting:


Download ppt "1 CoMeta, final workshop, 15-16-17/12/2003 Ivan Lanese Dipartimento di Informatica Università di Pisa Ugo Montanari A graphical Fusion Calculus Joint work."

Similar presentations


Ads by Google