Title: Modeling Community with Tiles
1Modeling Communitywith Tiles
Workshop AGILE, Pisa, 28-29 Luglio 2003
Roberto Bruni Dipartimento di Informatica
Università di Pisa
Ongoing Work!
joint work with Ivan Lanese Ugo
Montanari Dipartimento di Informatica Università
di Pisa
2Roadmap
- Goal
- Tiles
- Translation
- Example Buffer
- Advantages
- Ongoing and future work
- Localities
3Roadmap
- Goal
- Tiles
- Translation
- Example Buffer
- Advantages
- Ongoing and future work
- Localities
4Goal
- Operational semantics for CommUnity
- Modular translation
- Preserving of separation of concerns
- Abstract semantics via observations
5Roadmap
- Goal
- Tiles
- Translation
- Example Buffer
- Advantages
- Ongoing and future work
- Localities
6Tile Logic
- Operational and Abstract Semantics of Open
Concurrent Systems - Compositional in Space and Time
- Specification Formats
- Depending on chosen connectors
- Congruence results
- Category based
7Tiles
8Configurations
input interface
output interface
9Observations
initial interface
final interface
10Roadmap
- Goal
- Tiles
- Translation
- Example Buffer
- Advantages
- Ongoing and future work
- Localities
11Tile Format for CommUnity
- Interfaces
- action, input (typed), output (typed)
- System Configuration
- (gs-monoidal) graphs
- components empty input interface
- coordinators binary input interface
- Observations
- monoid of unary boxes
- Tiles
- computation (empty trigger)
- coordination
12From Modules to Tile Configurations
I
o1v1 omvm p1w1 pkwk
I
O
O
A
externalization of the state?
13From Modules to (Schemes of) Basic Tiles
I
actions are translated into tiles
?
O
A
(G)
one tile for any (?,w) that satisfies the guard
G of action act
I
?
O
A
14Data Coordinators
I
I/O
I/O
v
v
v
I
I/O
I/O
15Action Coordinators
A
(a1,b1) (an,bn)
A
bi
ai
A
(a1,b1) (an,bn)
A
16From Diagramsto Tile Systems
17Roadmap
- Goal
- Tiles
- Translation
- Example Buffer
- Advantages
- Ongoing and future work
- Localities
18Buffer Design
design BUFFER tsort, nnat is in it out
ot prv blistt,n do put bltn ? bb.i
fwd bn ? ohead(b)
btail(b).i get bgt0 ? ohead(b)
btail(b) shft b0 ?
oi
19A Buffer Configuration
BUFFERT,N
IT
ov bv1.v2vk
i
OT
o
A
20Put as a Tile
IT
ov bv1.v2vk
OT
A
(kltN)
PUT
21Building a Modular Buffer
design CABLE tsort is in it do fwd true
? skip shft true ? skip
CABLE
i fwd shft
BUFFERT,1
BUFFERT,1
i fwd put shft
o fwd get shft
22Intuition
put ? fwd1 fwdk putk1 get ? getk shftk1
shftn shft ? shft1 shftn fwd ? fwd1 fwdn
23Outcome
- Bisimilarity between BUFFERT,N and M buffers
BUFFERT,K with NMK - Bisimilarity between the system and its
specification
24Roadmap
- Goal
- Tiles
- Translation
- Example Buffer
- Advantages
- Ongoing and future work
- Localities
25Preliminary Results and Advantages
- Concurrent operational semantics for CommUnity
- Translation independent from the serialization of
represented morphisms - Encoding of the colimit behaviourally equivalent
to the diagram encoding - Standard notion of abstract equivalence (tile
bisimilarity) - Separation of concerns
26Roadmap
- Goal
- Tiles
- Translation
- Example Buffer
- Advantages
- Ongoing and future work
- Localities
27Dealing with Localities
- Localities as data types
- input localities (IL) and output localities (OL)
- Actions can involve localities
- Observable constraints on localities
- dynamically generated via coordinators
- statical constraints on moves
- Open problems
- which flavour of connectors?
- what should be observed?
28Future Work
- Application to AGILE case studies
- Dealing with system reconfigurations
- Refinement
- Common framework for CommUnity and UML