Slides

advertisement
Equivalence of open Petri nets
Modeling and analysis with Petri net components.
Marc Voorhoeve (AIS)
Open net definition
Addition and comparison of bags
Global set of external places A
Open net: 6-tuple
satisfying
( P, T , I , O, C, F )
AP
P, T : sets
( place, transition)
,
I,O  T  bag( P) ( cons, prod),
C  bag( P)
F  bag( P)
( current tate)
s ,
( final sta
tes).
Open net model
External places
current int. marking
b
c
weighted arcs
r
u
p
2

2
q
a
t
2
v

Transitions
Internal places
P  A  { p,q,r} (a,b,c  A , p,q,r P \ A ),
T  {t , u, v}, I (t )  [a,b, p 2 ], O(t )  [q 2 ],  ,
C  [r 2 ], F  {[ r 2 ],[]}.
Final marking
indicators
Operational semantics
Set of actions: external productions / consumptions / silent
{x  | x  bag(A)}{x  | x  bag(A)}{ }
If
Then
N  ( P, T , I , O, C , F ), B  bag( P)
B N  ( P, T , I , O, B  C , F )
Adding/removing
external tokens
B  bag( A)
B
N  B  N
Termination:
C N  FN
N
Firing:
B  bag( A)
B
B  N  N
t  TN

I N (t )  N 

ON (t )  N
External tokens cannot be “seen”; only added and removed!
Internal tokens can be neither seen nor added or removed.
Example
CN  [r 2 ]  FN , so N . Set N  [r 2 ]  N0 .


([r 2 ]  N0 ) 

([rq]  N0 ) 

([q2 ]  N0 )


([q2 ]  N0 ) 

([cpq]  N0 ) 

([c2 p2 ]  N0 )
[ c ]
([c p ]  N0 ) ([cp2 ]  N0 )
2
2
[ a 3b 2 ]
([cp ]  N0 )  N  ([a3b2cp2 ]  N )
2
3 2
b
2
([a b cp ]  N 0 )
c
r



2
([bcq ]  N 0 )
u
p
2
2
q
a
t
3

2
v

Properties
State oriented (like ExSpect and RoseRT)
Abstraction of internal actions.
Special case is OWF net
(used by Reisig e.a. for SOA definition)
- initial source and final sink place
- path property
WF nets: OWF nets without external places
Interaction model (SOA)
h (id ,...)


c (id ) 

handover

(

)*
claim
r (id ) 

rdy
o ( id , from ,to) 

offer
Temporal predicates
An active container can eventually become ready.
offered but not readied yet
X (n : IN  0)  [o  ] X (n  1)  [o   r  ] X (n)
 (n  0  ([r  ] X (n  1)  T* r   T))
#active:
2
1
0
offer
rdy
Weak bisimilarity
Relation between states, such that
any sequence of additions and removals can be copied.
Weakly bisimilar processes satisfy the same set
of temporal predicates from a certain class.
Nets
notbisimilar,
weakly bisimilar:
Weakly
bnot
can
be removed
after addition of an a
branching
bisimilar!
 Production c after

[a ]b T
consumption a
without b appearance
is possible
a
a
a
c
c
b
c
Always brief appearance of b
after consumption a and before production c
b
b
Composition
Hiding:
 H (.), H  A
Net: N
x
x H, N 

N'
,

 H (N ) 
 H ( N ' )
cd
x
x H, N 

N'
x
 H (N ) 

 H (N ')
Hide b within N:
Renaming:
a
{b} ( N )
b
 f (.), f  A  A injective
x
N

N'
f ( x)
 f ( N ) 
  f ( N ' )
Rename c:
cd ( {b} ( N ))
Composition: merge + fusion
Combine disjoint copies.
 {a,b,c} (M || N )
Deadlock possible
Fuse places with same name.
{abc} (M || {b} ( N ))
No deadlock!
a
d
a
b
e
c
c
b
Composition semantics
Token transfer is possible!



N  N ' , M  M  

M'

N || M 

N ' || M '



M  M ' , N  N  

N'

N || M 

N ' || M '
Compositional modeling
Select open net subcomponents.
Adapt interfaces by renaming and merge.
Hide internal communication.
e
a
b
c
d
Congruence
Weak bisimilarity is congruence w.r.t. operators
Component with subcomponent C
Replace C with weakly bisimilar C’
Resulting components remain weakly bisimilar.
C’
C
a
b
Caution with congruence
c
c
q
x
q
w
a
x
b
w
a
b
p
t
u
v
Subnets at bottom are weakly bisimilar subcomponents.
Hence the complete nets are weakly bisimilar too.
External states differ! Left-hand net: b before c
Weak bisimilarity is not a congruence for operators
that directly access the state (inhibitor / reset arcs).
Research opportunities
Verification of properties based on structure of process
Example: active container predicate.
e
C
a
D
X
b
X   {e} (C || D)
active objects in X: offered (a) and not yet claimed (b)
= sum of active objects in C and D
State space reduction!
The End
Download