Title: Complete Axioms for Stateless Connectors
1Complete Axioms for Stateless Connectors
CALCO 2005, Swansea, Wales, UK, 3-6 September 2005
Ivan Lanese Dipartimento di Informatica
Università di Pisa
joint work with Roberto Bruni and Ugo
Montanari Dipartimento di Informatica Università
di Pisa
2Roadmap
- Why connectors?
- The tile model
- Stateless connectors
- Axiomatization of synch-connectors
- Adding mutual exclusion
- Concluding remarks
3Roadmap
- Why connectors?
- The tile model
- Stateless connectors
- Axiomatization of synch-connectors
- Adding mutual exclusion
- Concluding remarks
4Interaction 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
5Coordination 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, )
6Which 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 Stefanescus flow algebras and REO
connectors
7Roadmap
- Why connectors?
- The tile model
- Stateless connectors
- Axiomatization of synch-connectors
- Adding mutual exclusion
- Concluding remarks
8The tile model
- Operational and observational semantics of open
concurrent systems - compositional in space and time
- Category based
9Configurations
output interface
input interface
10Configurations
output interface
input interface
parallel composition
functoriality
sequential composition
11Configurations
output interface
input interface
parallel composition
functoriality symmetries symmetric monoidal
cat
sequential composition
12Observations
initial interface
final interface
13Tiles
- Combine horizontal and vertical structures
through interfaces
14Tiles
- Compose tiles
- horizontally
15Tiles
- Compose tiles
- horizontally
- (also vertically and in parallel)
symmetric monoidal double cat
16Tiles 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
17Roadmap
- Why connectors?
- The tile model
- Stateless connectors
- Axiomatization of synch-connectors
- Adding mutual exclusion
- Concluding remarks
18Connectors
- 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
19Basic connectors
Duplicator
Bang
Mex
Zero
20Notation
- 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
21Operational semantics
- Tiles specify the behaviours of basic connectors
- When composed, connectors must agree on the
observation at the interfaces
22Basic tiles (I)
Dual connectors have dual tiles
23Basic tiles (II)
24Denotational semantics
- 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
1
1
1
1
2
2
2
2
3
3
3
3
4
4
25Denotational semantics
26Semantic 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
27Roadmap
- Why connectors?
- The tile model
- Stateless connectors
- Axiomatization of synch-connectors
- Adding mutual exclusion
- Concluding remarks
28Axiomatization
- 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
29Gs-monoidal axioms
30Additional P-monoidal axioms
31Synch-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
32Normal form
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
33Properties
- 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
34Roadmap
- Why connectors?
- The tile model
- Stateless connectors
- Axiomatization of synch-connectors
- Adding mutual exclusion
- Concluding remarks
35Adding 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
36Obtaining zero connector
def
!
37Obtaining comex connector
!
!
!
- Hiding and synchronization allow to flip wires
38Looking for axiomatization of mex
39Looking for axiomatization of mex
?
40Looking for axiomatization of mex
?
?
41Looking for axiomatization of mex
?
?
42Looking for axiomatization of mex
?
?
43Key axioms
?
44Key axioms
!
45Some axioms about mex-dup
46Some axioms about zero
0
47A sample proof
0
0
48Additional axioms
49An axiom scheme
!
!
!
50An axiom scheme
!
!
51Full tables
- Entry with empty domain is enabled
- All the tables with that property can be
expressed - Generalized sorted and normal form
52Full tables
Zeros directly connected to free variables
53Full tables
Hiding connected to roots of mex or to central
points
54Full tables
Each hidden variable is connected to at most two
central points
55Full tables
At most one path between a central point and a
variable
56Full tables
No hidden variables are connected to the same
central points
57Full tables
No two central points have the same set of
variables
58Full tables
Each central point is connected to at least a
free variable
59Full tables
Each pair of central points share at least a
variable
60Full tables
Hidden variables attached to roots of mex are on
the left
61Properties
- 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
62Roadmap
- Why connectors?
- The tile model
- Stateless connectors
- Axiomatization of synch-connectors
- Adding mutual exclusion
- Concluding remarks
63Conclusions
- Full correspondences between
- observational semantics
- denotational semantics
- equivalence classes modulo axioms
- Normalization allows to find a standard
representative
64Axiomatization 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
65Comparison 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)
66Future 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
67Thanks!
Questions?