Title: Modular Processings based on Unfoldings
1Modular Processings based on Unfoldings
- Eric Fabre Agnes Madalinski
- DistribCom Team
- Irisa/Inria
UFO workshop - June 26, 2007
2Outline
- Assembling Petri nets products, pullbacks,
unfoldings and trellises - Modular computationson a constraint graph an
abstract viewpoint - Application 1 modular diagnosisor modular
computation of a minimal product covering - Application 2 modular prefixesor how to compute
a FCP directly in factorized form - Conclusion
3Nets as Products of Automata
- Caution in this talk, for simplicity
- we limit ourselves to safe Petri nets, although
most results extend to ½ weighted nets - we represent safe nets in complemented form,
i.e. their number of tokens remains constant
4Nets as Products of Automata (2)
- Composition of variables by product
- disjoint union of places
- transitions with shared labels are glued
- transitions with private labels dont change
S V1 V2 V3
- This product yields a safe (labeled) nets, and
extends to safe nets
5Interest of Product Forms
- The 1st interests are
- a natural construction method starting from
modules - the compactness of the product form
- on this example, the expanded product contains
mn transitions, instead of mn in the factorized
form
6Composition by Pullback
- Generalizes the product
- allows interactions of nets by an interface
(sub-net) - outside the interface, interactions are still by
shared labels
7Graph of a Product Net
- Interaction graph of a net
- shared labels define the local interactions
- but its better to re-express interactions
under the form of shared variables (or sub-nets).
S V1 Vn
8Unfoldings in Factorized Form
- The key Universal Property of the unfolding of
S - Let denote the unfolding of S, and
its associated folding
(labeling)
U(S)
fSU(S)?S
8O, 8ÁO?S, 9! ÃO?U(S), Á fS Ã
9Unfoldings in Factorized Form (2)
10Important properties
- The category theory approach naturally provides
- an expression for operators (and )
- recursive procedures to compute them (as for
unfoldings) - notions of projections associated to
products/pullbacks
O
ÆO
Si U(S) ? U(Si)
11Important properties
- The category theory approach naturally provides
- an expression for operators (and )
- recursive procedures to compute them (as for
unfoldings) - notions of projections associated to
products/pullbacks
O
ÆO
Si U(S) ? U(Si)
12Important properties
- The category theory approach naturally provides
- an expression for operators (and )
- recursive procedures to compute them (as for
unfoldings) - notions of projections associated to
products/pullbacks
O
ÆO
Si U(S) ? U(Si)
13Important properties
- The category theory approach naturally provides
- an expression for operators (and )
- recursive procedures to compute them (as for
unfoldings) - notions of projections associated to
products/pullbacks
O
ÆO
Si U(S) ? U(Si)
14Important properties (2)
- Factorized forms of unfoldings are often more
compactbut they can however contain useless
parts.
- Thm
- let Oi be an occ. net of component Si,
- then is an occ. net
of - define then
- and this is the minimal product covering of O
OO1OO On
SS1Sn
Oi Si(O) v Oi
OO1OO On
15Trellises in Factorized Form
- The trellis of net S is
- obtained by merging conditions of with
identical height - a close cousin of merged processes (Khomenko et
al., 2005)
T(S)
U(S)
16Trellises in Factorized Form
- The trellis of net S is
- obtained by merging conditions of with
identical height - a close cousin of merged processes (Khomenko et
al., 2005) - enjoys exactly the same factorization properties
as unfoldings
T(S)
U(S)
17Outline
- Assembling Petri netsproducts, pullbacks,
unfoldings and trellises - Modular computationson a constraint graph an
abstract viewpoint - Application 1 modular diagnosisor modular
computation of a minimal product covering - Application 2 modular prefixesor how to compute
a FCP directly in factorized form - Conclusion
18Abstract Constraint Reduction
- Ingredients
- variables
- systems or components Si defined by
(local) constraints on
Vmax V1,V2 ,
Vi µ V1,,Vn
19Abstract Constraint Reduction (2)
- Reductions
- for , reduces constraints
of S to variables V - reductions are projections
VµVmax
V(S)
V1 V2 V1ÅV2
20Modular reduction algorithms
- Problem
- Given where Si operates
on Vi - compute the reduced components
- i.e. how does Si change once inserted into the
global S ?
S S1Æ Æ Sn
Si Vi(S)
- This can be solved by Message Passing Algorithms
(MPA) - always converges
- only involves local computations
- exact if the graph of S is a (hyper-) tree
21Modular reduction algorithms
- Problem
- Given where Si operates
on Vi - compute the reduced components
- i.e. how does Si change once inserted into the
global S ?
S S1Æ Æ Sn
Si Vi(S)
- This can be solved by Message Passing Algorithms
(MPA) - always converges
- only involves local computations
- exact if the graph of S is a (hyper-) tree
22Modular reduction algorithms
- Problem
- Given where Si operates
on Vi - compute the reduced components
- i.e. how does Si change once inserted into the
global S ?
S S1Æ Æ Sn
Si Vi(S)
- This can be solved by Message Passing Algorithms
(MPA) - always converges
- only involves local computations
- exact if the graph of S is a (hyper-) tree
23Modular reduction algorithms
- Problem
- Given where Si operates
on Vi - compute the reduced components
- i.e. how does Si change once inserted into the
global S ?
S S1Æ Æ Sn
Si Vi(S)
- This can be solved by Message Passing Algorithms
(MPA) - always converges
- only involves local computations
- exact if the graph of S is a (hyper-) tree
24Modular reduction algorithms
- Problem
- Given where Si operates
on Vi - compute the reduced components
- i.e. how does Si change once inserted into the
global S ?
S S1Æ Æ Sn
Si Vi(S)
- This can be solved by Message Passing Algorithms
(MPA) - always converges
- only involves local computations
- exact if the graph of S is a (hyper-) tree
25Modular reduction algorithms
- Problem
- Given where Si operates
on Vi - compute the reduced components
- i.e. how does Si change once inserted into the
global S ?
S S1Æ Æ Sn
Si Vi(S)
- This can be solved by Message Passing Algorithms
(MPA) - always converges
- only involves local computations
- exact if the graph of S is a (hyper-) tree
26What about systems with loops ?
- Message passing algorithms
- converge to a unique fix point (independent of
message scheduling) - that gives an upper approximation
- How good are their results ?
- Local extendibility to any tree around each
component.
Vi(S) v Si v Si
27What about systems with loops ?
- Message passing algorithms
- converge to a unique fix point (independent of
message scheduling) - that gives an upper approximation
- How good are their results ?
- Local extendibility to any tree around each
component.
Vi(S) v Si v Si
28Outline
- Assembling Petri netsproducts, pullbacks,
unfoldings and trellises - Modular computationson a constraint graph an
abstract viewpoint - Application 1 modular diagnosisor modular
computation of a minimal product covering - Application 2 modular prefixesor how to compute
a FCP directly in factorized form - Conclusion
29Distributed system monitoring
distributed supervision
30We are already equipped for that !
- Consider the netand move to trajectory sets
(unfolding or trellis) - In the category of occurrence nets (for ex.), we
have - a composition operator, the pullback
- trajectories of S are in factorized form
-
- we have projection operators on occ.
nets,where Vi are the variables of Si - Thm projections and pullback satisfy the central
axiom (here we cheat a little however)
S S1 Æ Æ Sm
ÆO
U(S) U(S1) ÆO ÆO U(Sm)
Vi
31A computation example
32A computation example
33A computation example
34A computation example
35A computation example
36A computation example
37Outline
- Assembling Petri netsproducts, pullbacks,
unfoldings and trellises - Modular computationson a constraint graph an
abstract viewpoint - Application 1 modular diagnosisor modular
computation of a minimal product covering - Application 2 modular prefixesor how to compute
a FCP directly in factorized form - Conclusion
38Objective
- Given compute a finite
complete prefix of in factorized form - Obvious solution
- compute a FCP of
- then compute its minimal pullback
coveringwhere
S S1 Æ Æ Sm
U(S)
Us(S)
U(S)
Us(S) v U(S1) Æ Æ U(Sm)
U(Si) Vi(Us(S))
- but this imposes to work on the global
unfolding we rather want to obtain directly
the factorized form
39Local canonical prefixes dont work
- Canonical prefix
- defined by a cutting context T ( , ? ,
?ee?E ) - equivalence relation on Conf ? set of
reachable markings - ? adequate order on Conf ? partial order on
Conf refining inclusion - ?ee?E a subset of Conf, ? configurations
used for cut-off identification
40Extended canonical prefix
- Toy example
- two components, elementary interface (automaton)
S ACB (AC) Æ (CB)
SA Æ SB
41Extended canonical prefix (2)
- extended prefix of w.r.t. its interface C
- restriction of the cutting context TC (,?,
?ee?E )to particular configurations ?e - e cut-off event, corresponding event e
?e?e and ?e ? ?e where usually ?e e - if e is a private event, then PC (?e ? ?e)Ø
- if e is an interface event, then e is also an
interface event
SA
where ? is the symmetric set difference
42Extended cut-off event
43Summary net
- Summary net
- behaviors allowed by an extended prefix on the
interface - obtained by projecting the extended prefix on the
interface, - and refolding matching markings
44Distributed computations
augmented prefixes
45Distributed computations
extract summary nets
46Distributed computations
exchange summary nets
47Distributed computations
48Distributed computations
49Distributed computations
Killed in the pullback
Local factors are a little too conservative (not
the minimal pullback covering of the FCP)
50Outline
- Assembling Petri netsproducts, pullbacks,
unfoldings and trellises - Modular computationson a constraint graph an
abstract viewpoint - Application 1 modular diagnosisor modular
computation of a minimal product covering - Application 2 modular prefixesor how to compute
a FCP directly in factorized form - Conclusion
51- A few lessons
- Factorized forms of unfoldings are generally more
compact. - One can work directly on them, in an efficient
modular manner, without ever having to compute
anything global. - Optimal when component graphs are trees.
- Sub-optimal, but provide good upper
approximations otherwise.
- and some questions
- Finite complete prefixes in factorized form
- we need to understand better how to compute them,
- and provide complexity results.
- Can this be useful for model checking?
- Can this be useful for distributed optimal
planning? - (see last talk today)
52Factorized forms are more compact
53Augmented branching process
- Standard projections lose information
- important causal links or conflicts may
disappear. - We must keep track of them in augmented BP,
- which makes the central axiom valid in all
cases.