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.

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.
1 PROPERTIES OF A TYPE ABSTRACT INTERPRETATER. 2 MOTIVATION OF THE EXPERIMENT § a well understood case l type inference in functional programming à la.
Rigorous Software Development CSCI-GA Instructor: Thomas Wies Spring 2012 Lecture 11.
Translator Architecture Code Generator ParserTokenizer string of characters (source code) string of tokens abstract program string of integers (object.
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.
ISBN Chapter 3 Describing Syntax and Semantics.
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.
A Semantic Characterization of Unbounded-Nondeterministic Abstract State Machines Andreas Glausch and Wolfgang Reisig 1.
12. Summary, Trends, Research. © O. Nierstrasz PS — Summary, Trends, Research Roadmap  Summary: —Trends in programming paradigms  Research:...
Constraint Logic Programming Ryan Kinworthy. Overview Introduction Logic Programming LP as a constraint programming language Constraint Logic Programming.
1 Ivan Lanese Computer Science Department University of Bologna Italy Exploiting user-definable synchronizations in graph transformation.
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.
13. Summary, Trends, Research. © O. Nierstrasz PS — Summary, Trends, Research Summary, Trends, Research...  Summary: functional, logic and object-oriented.
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.
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 Ugo Montanari Dipartimento di Informatica Università di Pisa Roberto Bruni, GianLuigi Ferrari, Hernan Melgratti, Emilio Tuosto (Pisa) Cosimo Laneve (Bologna)
1 Formal Models for Distributed Negotiations Concurrent Languages Translation Roberto Bruni Dipartimento di Informatica Università di Pisa XVII Escuela.
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.
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.
1 Static vs dynamic SAGAs Ivan Lanese Computer Science Department University of Bologna/INRIA Italy.
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 Formal Models for Distributed Negotiations From Petri Nets to Join Calculus Roberto Bruni Dipartimento di Informatica Università di Pisa XVII Escuela.
Modeling a Service and Session Calculus with Hierarchical Graph Transformation Roberto Bruni, Andrea Corradini, Ugo Montanari (based on joint work with.
12. Summary, Trends, Research. © O. Nierstrasz PS — Summary, Trends, Research Roadmap  Summary: —Trends in programming paradigms  Research:...
Modeling Community with Tiles joint work with Ivan Lanese Ugo Montanari Dipartimento di Informatica Università di Pisa Roberto Bruni Dipartimento di Informatica.
1 Ivan Lanese Computer Science Department University of Bologna Italy Behavioural Theory at Work: Program Transformations in a Service-centred Calculus.
Describing Syntax and Semantics
An algebra of Connectors for modeling CommUnity with Tiles joint work with Roberto Bruni Ugo Montanari Dipartimento di Informatica Università di Pisa Ivan.
Ontology translation: two approaches Xiangkui Yao OntoMorph: A Translation System for Symbolic Knowledge By: Hans Chalupsky Ontology Translation on the.
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.
Dynamic Choreographies Safe Runtime Updates of Distributed Applications Ivan Lanese Computer Science Department University of Bologna/INRIA Italy Joint.
Coalgebraic Symbolic Semantics Filippo Bonchi Ugo Montanari.
SDS Foil no 1 Process Algebra Process Algebra – calculating with behaviours.
Advanced Topics in SE Spring Process Algebra Hossein Hojjat Formal Methods Lab University of Tehran.
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).
ISBN Chapter 3 Describing Semantics -Attribute Grammars -Dynamic Semantics.
Checking Reachability using Matching Logic Grigore Rosu and Andrei Stefanescu University of Illinois, USA.
3.2 Semantics. 2 Semantics Attribute Grammars The Meanings of Programs: Semantics Sebesta Chapter 3.
Laws of concurrent design Tony Hoare Microsoft ResearchCambridge FMCAD October.
A Logic of Partially Satisfied Constraints Nic Wilson Cork Constraint Computation Centre Computer Science, UCC.
Logic Programming and Prolog Goal: use formalism of first-order logic Output described by logical formula (theorem) Input described by set of formulae.
From Hoare Logic to Matching Logic Reachability Grigore Rosu and Andrei Stefanescu University of Illinois, USA.
Concepts and Realization of a Diagram Editor Generator Based on Hypergraph Transformation Author: Mark Minas Presenter: Song Gu.
Operational Semantics Mooly Sagiv Tel Aviv University Textbook: Semantics with Applications Chapter.
Operational Semantics Mooly Sagiv Tel Aviv University Sunday Scrieber 8 Monday Schrieber.
Characterizing Propositional Proofs as Non-Commutative Formulas Iddo Tzameret Royal Holloway, University of London Based on Joint work Fu Li (Texas Austin)
Certifying and Synthesizing Membership Equational Proofs Patrick Lincoln (SRI) joint work with Steven Eker (SRI), Jose Meseguer (Urbana) and Grigore Rosu.
Logical Agents. Outline Knowledge-based agents Logic in general - models and entailment Propositional (Boolean) logic Equivalence, validity, satisfiability.
Rewriting Nested Graphs, through Term Graphs Roberto Bruni, Andrea Corradini, Fabio Gadducci Alberto Lluch Lafuente and Ugo Montanari Dipartimento di Informatica,
IIT Kharagpur & Kingston Uni
EPISTEMIC LOGIC.
Internet of Things A Process Calculus Approach
Programming Languages and Compilers (CS 421)
ONTOMERGE Ontology translations by merging ontologies Paper: Ontology Translation on the Semantic Web by Dejing Dou, Drew McDermott and Peishen Qi 2003.
Presentation transcript:

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

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

3 CoMeta, final workshop, /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 CoMeta, final workshop, /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 CoMeta, final workshop, /12/2003 Fusion Calculus It is an evolution of  -calculus Simpler and more symmetric but also more expressive Introduce fusion of names

6 CoMeta, final workshop, /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 CoMeta, final workshop, /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 CoMeta, final workshop, /12/2003 SOS semantics PREF PAR COM SUM PASS SCOPE STRUCT OPEN

9 CoMeta, final workshop, /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 CoMeta, final workshop, /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 CoMeta, final workshop, /12/2003 Edge Replacement Systems A production describes how the hyperedge L is rewritten into the graph R R L H

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

13 CoMeta, final workshop, /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 CoMeta, final workshop, /12/2003 Synchronized Hyperedge Replacement Milner synchronization: pair of edges can synchronize by doing complementary actions a a a 3 3 B1A1 B2A2

15 CoMeta, final workshop, /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 CoMeta, final workshop, /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 CoMeta, final workshop, /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 CoMeta, final workshop, /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 CoMeta, final workshop, /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 CoMeta, final workshop, /12/2003 Fusion Calculus vs SHR FusionSHR ProcessesGraphs Sequential processesHyperedges NamesNodesParallel comp. ScopeRestriction TransitionsRewritings

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

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

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

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

25 CoMeta, final workshop, /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 CoMeta, final workshop, /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 CoMeta, final workshop, /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 CoMeta, final workshop, /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 CoMeta, final workshop, /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 CoMeta, final workshop, /12/2003 Example

31 CoMeta, final workshop, /12/2003 Recursion example Production: Corresponding rewriting: