View
217
Download
0
Tags:
Embed Size (px)
Citation preview
Complete Axioms for Stateless Connectors
joint work withRoberto Bruni and Ugo MontanariDipartimento di Informatica Università di Pisa
Ivan LaneseDipartimento di Informatica Università di Pisa
CALCO 2005, Swansea, Wales, UK, 3-6 September 2005
CALCO 2005, 3-6 September, Swansea, Wales, UK Bruni, Lanese, Montanari
Roadmap Why connectors? The tile model Stateless connectors Axiomatization of synch-
connectors Adding mutual exclusion Concluding remarks
CALCO 2005, 3-6 September, Swansea, Wales, UK Bruni, Lanese, Montanari
Roadmap Why connectors? The tile model Stateless connectors Axiomatization of synch-
connectors Adding mutual exclusion Concluding remarks
CALCO 2005, 3-6 September, Swansea, Wales, UK Bruni, Lanese, Montanari
Interaction and connectors Modern systems are huge
composed by different entities that collaborate to reach a common goal
interactions are performed at some well-specified interfaces…
…and are managed by connectors Connectors allow separation
between computation and coordination
CALCO 2005, 3-6 September, Swansea, Wales, UK Bruni, Lanese, Montanari
Coordination via connectors Connectors useful to
ensure compatibility among independently developed components
allow to reuse them allow run-time reconfiguration
Connectors exist at different levels of abstraction (architecture, applications, …)
CALCO 2005, 3-6 September, Swansea, Wales, UK Bruni, Lanese, Montanari
Which connectors? We follow the algebraic approach
system as term in an algebra We propose an algebra of simple
stateless connectors for synchronization and mutual exclusion expressive enough to model the architectural
connectors of CommUnity [IFIP TCS 04] build on symmetric monoidal categories and
P-monoidal categories related to Stefanescu’s flow algebras and REO
connectors
CALCO 2005, 3-6 September, Swansea, Wales, UK Bruni, Lanese, Montanari
Roadmap Why connectors? The tile model Stateless connectors Axiomatization of synch-
connectors Adding mutual exclusion Concluding remarks
CALCO 2005, 3-6 September, Swansea, Wales, UK Bruni, Lanese, Montanari
The tile model Operational and
observational semantics of open concurrent systems compositional in space
and time Category based
CALCO 2005, 3-6 September, Swansea, Wales, UK Bruni, Lanese, Montanari
parallelcomposition
Configurations
inputinterface
outputinterface
sequentialcomposition
CALCO 2005, 3-6 September, Swansea, Wales, UK Bruni, Lanese, Montanari
Configurations
inputinterface
outputinterface
parallelcomposition
sequentialcomposition
functoriality
CALCO 2005, 3-6 September, Swansea, Wales, UK Bruni, Lanese, Montanari
Configurations
inputinterface
outputinterface
parallelcomposition
sequentialcomposition
functoriality+
symmetries=
symmetric monoidal cat
CALCO 2005, 3-6 September, Swansea, Wales, UK Bruni, Lanese, Montanari
Observations
initialinterface
finalinterface
concurrent
computation
CALCO 2005, 3-6 September, Swansea, Wales, UK Bruni, Lanese, Montanari
Tiles Combine horizontal and vertical
structures through interfaces
initial configuration
final configuration
trigger effect
CALCO 2005, 3-6 September, Swansea, Wales, UK Bruni, Lanese, Montanari
Tiles Compose tiles
horizontally
CALCO 2005, 3-6 September, Swansea, Wales, UK Bruni, Lanese, Montanari
Tiles Compose tiles
horizontally (also vertically and in parallel)
symmetric monoidal double cat
CALCO 2005, 3-6 September, Swansea, Wales, UK Bruni, Lanese, Montanari
Tiles as LTS Structural equivalence
axioms on configurations (e.g. symmetries) LTS
states = configurations transitions = tiles labels = (trigger,effect) pairs
Observational semantics tile trace equivalence/bisimilarity congruence results for suitable formats
CALCO 2005, 3-6 September, Swansea, Wales, UK Bruni, Lanese, Montanari
Roadmap Why connectors? The tile model Stateless connectors Axiomatization of synch-
connectors Adding mutual exclusion Concluding remarks
CALCO 2005, 3-6 September, Swansea, Wales, UK Bruni, Lanese, Montanari
Connectors Connectors to express synchronization and
mutual exclusion constraints on local choices
Possible outcomes: tick (1, action performed) or untick (0, action forbidden)
Operational semantics via tiles and observational semantics via tile bisimilarity
Denotational semantics via tick-tables (boolean matrices)
Complete axiomatization of connectors and reduction to normal form
CALCO 2005, 3-6 September, Swansea, Wales, UK Bruni, Lanese, Montanari
Basic connectors
! !
0 0
Symmetry
Duplicator
Bang
Mex
Zero
CALCO 2005, 3-6 September, Swansea, Wales, UK Bruni, Lanese, Montanari
Notation Only two kinds of allowed observations Initial and final states always coincide
(since connectors are stateless) Thus we can use a “flat” notation for
tiles
1 0
CALCO 2005, 3-6 September, Swansea, Wales, UK Bruni, Lanese, Montanari
Operational semantics Tiles specify the behaviours of
basic connectors When composed, connectors must
agree on the observation at the interfaces
CALCO 2005, 3-6 September, Swansea, Wales, UK Bruni, Lanese, Montanari
Basic tiles (I)
Dual connectors have dual tiles
CALCO 2005, 3-6 September, Swansea, Wales, UK Bruni, Lanese, Montanari
Connectors can be seen as black boxes input interface output interface admissible observations on interfaces
Denotations are just matrixes n inputs 2n rows m outputs 2m columns dual is transposition sequential composition is matrix multiplication parallel composition is matrix expansion
cells are filled with empty/copies of matrices
…
0101
0010
…
…111001…
Denotational semantics
12
3
4
12
3
12
3
12
3
4
domain is{input 3, outputs 1,2,3}
CALCO 2005, 3-6 September, Swansea, Wales, UK Bruni, Lanese, Montanari
Denotational semantics
1
0
111001001
0
10
11
10
01
00
11100100
1
0
.
!
1
0
11100100
1
0
.
0
CALCO 2005, 3-6 September, Swansea, Wales, UK Bruni, Lanese, Montanari
Semantic correspondance Tile bisimilarity coincides with tile
trace equivalence (stateless property)
Two connectors are tile bisimilar iff they have the same associated tick-tables
Tile bisimilarity is a congruence
CALCO 2005, 3-6 September, Swansea, Wales, UK Bruni, Lanese, Montanari
Roadmap Why connectors? The tile model Stateless connectors Axiomatization of synch-
connectors Adding mutual exclusion Concluding remarks
CALCO 2005, 3-6 September, Swansea, Wales, UK Bruni, Lanese, Montanari
Axiomatization We want to find a complete axiomatization
for the bisimilarity of connectors Synch-connectors (without mex and zero)
symmetries, duplicators and bangs form a gs-monoidal category
adding dual connectors we get a P-monoidal category
No simple known axiomatization works for mex, but we show an axiomatization for the full class of connectors
CALCO 2005, 3-6 September, Swansea, Wales, UK Bruni, Lanese, Montanari
Additional P-monoidal axioms
=
=
=!! .
CALCO 2005, 3-6 September, Swansea, Wales, UK Bruni, Lanese, Montanari
Synch-tables
Entry with empty domain is enabled Entries are closed under (domains)
union intersection difference complementation
Base: set of minimal (non empty) entries w.r.t. domain intersection
Each synch-table is determined by its base
CALCO 2005, 3-6 September, Swansea, Wales, UK Bruni, Lanese, Montanari
Normal form
Sort connectors
!
!
… …
…
…
Central points (correspond to cells of
the base)
Hiding connectors
directly connected to central points
Central points are connected to at least one external interface
CALCO 2005, 3-6 September, Swansea, Wales, UK Bruni, Lanese, Montanari
Properties
All the axioms bisimulate (correctness)
Each connector can be transformed in normal form using the axioms
Bijective correspondance between synch-tables and connectors in normal form
CALCO 2005, 3-6 September, Swansea, Wales, UK Bruni, Lanese, Montanari
Roadmap Why connectors? The tile model Stateless connectors Axiomatization of synch-
connectors Adding mutual exclusion Concluding remarks
CALCO 2005, 3-6 September, Swansea, Wales, UK Bruni, Lanese, Montanari
Adding mex and zero
Synch-connectors are not expressive enough (only synchronization)
Adding mex and zero to express mutual exclusion constraints and enforce inactivity
Just mex has to be inserted: zero and dual connectors can be derived
Mex and zero form a gs-monoidal category
CALCO 2005, 3-6 September, Swansea, Wales, UK Bruni, Lanese, Montanari
Obtaining zero connector
=
1
0
10
1
0
11100100
01
00
10
11
10
=x
= !def
1
0
.0
0
CALCO 2005, 3-6 September, Swansea, Wales, UK Bruni, Lanese, Montanari
Obtaining comex connector
=!
!
!
Hiding and synchronization allow to flip wires
CALCO 2005, 3-6 September, Swansea, Wales, UK Bruni, Lanese, Montanari
Looking for axiomatization of mex
=
CALCO 2005, 3-6 September, Swansea, Wales, UK Bruni, Lanese, Montanari
Looking for axiomatization of mex
=
CALCO 2005, 3-6 September, Swansea, Wales, UK Bruni, Lanese, Montanari
Looking for axiomatization of mex
=
CALCO 2005, 3-6 September, Swansea, Wales, UK Bruni, Lanese, Montanari
Looking for axiomatization of mex
=
CALCO 2005, 3-6 September, Swansea, Wales, UK Bruni, Lanese, Montanari
Looking for axiomatization of mex
=
CALCO 2005, 3-6 September, Swansea, Wales, UK Bruni, Lanese, Montanari
Some axioms about mex-dup
=
=
CALCO 2005, 3-6 September, Swansea, Wales, UK Bruni, Lanese, Montanari
Some axioms about zero
=
0
0
= =0
0=0
0
=0
!0! 0 = . =
0
CALCO 2005, 3-6 September, Swansea, Wales, UK Bruni, Lanese, Montanari
A sample proof
00 = ! 0
= !
0
0
= .
!=0
CALCO 2005, 3-6 September, Swansea, Wales, UK Bruni, Lanese, Montanari
Entry with empty domain is enabled All the tables with that property can
be expressed Generalized sorted and normal form
Full tables
CALCO 2005, 3-6 September, Swansea, Wales, UK Bruni, Lanese, Montanari
Full tables
Zeros directly connected to free
variables
……
……
0
0… …
0
0
!
!!
!
CALCO 2005, 3-6 September, Swansea, Wales, UK Bruni, Lanese, Montanari
Full tables
Hiding connected to roots of mex or to central points
……
……
0
0… …
0
0
!
!!
!
CALCO 2005, 3-6 September, Swansea, Wales, UK Bruni, Lanese, Montanari
Full tables
Each hidden variable is connected to at most two central
points
……
……
0
0… …
0
0
!
!!
!
CALCO 2005, 3-6 September, Swansea, Wales, UK Bruni, Lanese, Montanari
Full tables
At most one path between a
central point and a variable
……
……
0
0… …
0
0
!
!!
!
CALCO 2005, 3-6 September, Swansea, Wales, UK Bruni, Lanese, Montanari
Full tables
No hidden variables are
connected to the same central points
……
……
0
0… …
0
0
!
!!
!
CALCO 2005, 3-6 September, Swansea, Wales, UK Bruni, Lanese, Montanari
Full tables
No two central points have the
same set of variables
……
……
0
0… …
0
0
!
!!
!
CALCO 2005, 3-6 September, Swansea, Wales, UK Bruni, Lanese, Montanari
Full tables
Each central point is
connected to at least a free
variable
……
……
0
0… …
0
0
!
!!
!
CALCO 2005, 3-6 September, Swansea, Wales, UK Bruni, Lanese, Montanari
Full tables
Each pair of central points share at least
a variable
……
……
0
0… …
0
0
!
!!
!
CALCO 2005, 3-6 September, Swansea, Wales, UK Bruni, Lanese, Montanari
Full tables
Hidden variables attached to roots of mex are on the left
……
……
0
0… …
0
0
!
!!
!
CALCO 2005, 3-6 September, Swansea, Wales, UK Bruni, Lanese, Montanari
Properties
Full extension of the properties of synch- connectors all the axioms bisimulate each connector can be transformed in
normal form using the axioms bijective correspondance between tables
and connectors in normal form More complex axiomatization and
normalization
CALCO 2005, 3-6 September, Swansea, Wales, UK Bruni, Lanese, Montanari
Roadmap Why connectors? The tile model Stateless connectors Axiomatization of synch-
connectors Adding mutual exclusion Concluding remarks
CALCO 2005, 3-6 September, Swansea, Wales, UK Bruni, Lanese, Montanari
Conclusions
Full correspondences between observational semantics denotational semantics equivalence classes modulo axioms
Normalization allows to find a standard representative
CALCO 2005, 3-6 September, Swansea, Wales, UK Bruni, Lanese, Montanari
Axiomatization and colimits
In [IFIP TCS 04] connectors used to model CommUnity
Translation of a diagram is isomorphic to the translation of the colimit
Now: translation of a diagram is equal up to the axioms to the translation of the colimit
Furthermore normalization allows to algebraically compute the colimit
CALCO 2005, 3-6 September, Swansea, Wales, UK Bruni, Lanese, Montanari
Comparison with REO connectors
REO connectors add directionality and data flow
For synchronization purposes the two kinds of connectors are almost equivalent
REO connectors allow some state (buffers) and some priority among configurations (LossySync)
Algebraic theory of REO connectors less developed (as far as we know)
CALCO 2005, 3-6 September, Swansea, Wales, UK Bruni, Lanese, Montanari
Future work
Open problem: does a finite axiomatization exist? maybe Wan Fokkink techniques
Extend the results to larger classes of connectors actions ruled by a synchronization
algebra (instead of just 0 and 1) REO connectors probabilistic connectors