Slides of our BPM 2022 paper on "Reasoning on Labelled Petri Nets and Their Dynamics in a Stochastic Setting", which received the best paper award at the conference. Paper available here: https://link.springer.com/chapter/10.1007/978-3-031-16103-2_22
8. Process control-flow with Petri nets
Characteristics
review claim
claim
received
check
claim
info
complete?
obtain
missing info
check
claim
yes
no
…
9. Process control-flow with Petri nets
Characteristics
review claim
claim
received
check
claim
info
complete?
obtain
missing info
check
claim
yes
no
…
review
claim
check
claim
obtain missing
info
check
claim
…
10. Process control-flow with Petri nets
Characteristics
review claim
claim
received
check
claim
info
complete?
obtain
missing info
check
claim
yes
no
…
review
claim
check
claim
obtain missing
info
check
claim
…
labels
silent
repeated labels
bounded control-
fl
ow
11. Unlogged tasks as silent transitions
4 Sander J.J. Leemans et al.
q0
open
t01
o
q1
⌧
t12
i
(insert item)
q2
⌧
t21
m
finalize
t23
f
q3
reject
t37
r
q7
accept
t35
a
q4
⌧
t51
b
pay
t46
p
q6
⌧ t45
d
q5
cancel
t15
c
delete
t58
q8
Fig. 2: Stochastic net of an order-to-cash process. Weights are presented symbolically.
Transition t12 captures a task that cannot be logged, and so is modelled as silent.
Definition 1 (Labelled Petri net). A labelled Petri net N is a tuple hQ, T, F, `i, where:
(i) Q is a finite set of places; (ii) T is a finite set of transitions, disjoint from Q (i.e.,
Q T = ;); (iii) F ✓ (Q ⇥ T) [ (T ⇥ Q) is a flow relation connecting places to
𝗂
𝗇
𝗌
𝖾
𝗋
𝗍
𝗂
𝗍
𝖾
𝗆
12. Unlogged tasks as silent transitions
4 Sander J.J. Leemans et al.
q0
open
t01
o
q1
⌧
t12
i
(insert item)
q2
⌧
t21
m
finalize
t23
f
q3
reject
t37
r
q7
accept
t35
a
q4
⌧
t51
b
pay
t46
p
q6
⌧ t45
d
q5
cancel
t15
c
delete
t58
q8
Fig. 2: Stochastic net of an order-to-cash process. Weights are presented symbolically.
Transition t12 captures a task that cannot be logged, and so is modelled as silent.
Definition 1 (Labelled Petri net). A labelled Petri net N is a tuple hQ, T, F, `i, where:
(i) Q is a finite set of places; (ii) T is a finite set of transitions, disjoint from Q (i.e.,
Q T = ;); (iii) F ✓ (Q ⇥ T) [ (T ⇥ Q) is a flow relation connecting places to
13. Unlogged tasks as silent transitions
4 Sander J.J. Leemans et al.
q0
open
t01
o
q1
⌧
t12
i
(insert item)
q2
⌧
t21
m
finalize
t23
f
q3
reject
t37
r
q7
accept
t35
a
q4
⌧
t51
b
pay
t46
p
q6
⌧ t45
d
q5
cancel
t15
c
delete
t58
q8
Fig. 2: Stochastic net of an order-to-cash process. Weights are presented symbolically.
Transition t12 captures a task that cannot be logged, and so is modelled as silent.
Definition 1 (Labelled Petri net). A labelled Petri net N is a tuple hQ, T, F, `i, where:
(i) Q is a finite set of places; (ii) T is a finite set of transitions, disjoint from Q (i.e.,
Q T = ;); (iii) F ✓ (Q ⇥ T) [ (T ⇥ Q) is a flow relation connecting places to
silent loop
14. Semantics via finite traces
Start, end(s)
4 Sander J.J. Leemans et al.
q0
open
t01
o
q1
⌧
t12
i
(insert item)
q2
⌧
t21
m
finalize
t23
f
q3
reject
t37
r
q7
accept
t35
a
q4
⌧
t51
b
pay
t46
p
q6
⌧ t45
d
q5
cancel
t15
c
delete
t58
q8
Fig. 2: Stochastic net of an order-to-cash process. Weights are presented symbolically.
Transition t12 captures a task that cannot be logged, and so is modelled as silent.
Definition 1 (Labelled Petri net). A labelled Petri net N is a tuple hQ, T, F, `i, where:
(i) Q is a finite set of places; (ii) T is a finite set of transitions, disjoint from Q (i.e.,
Q T = ;); (iii) F ✓ (Q ⇥ T) [ (T ⇥ Q) is a flow relation connecting places to
1 marking as initial state 1+ deadlocking markings as
fi
nal states
15. Semantics via finite traces
Start, end(s)
4 Sander J.J. Leemans et al.
q0
open
t01
o
q1
⌧
t12
i
(insert item)
q2
⌧
t21
m
finalize
t23
f
q3
reject
t37
r
q7
accept
t35
a
q4
⌧
t51
b
pay
t46
p
q6
⌧ t45
d
q5
cancel
t15
c
delete
t58
q8
Fig. 2: Stochastic net of an order-to-cash process. Weights are presented symbolically.
Transition t12 captures a task that cannot be logged, and so is modelled as silent.
Definition 1 (Labelled Petri net). A labelled Petri net N is a tuple hQ, T, F, `i, where:
(i) Q is a finite set of places; (ii) T is a finite set of transitions, disjoint from Q (i.e.,
Q T = ;); (iii) F ✓ (Q ⇥ T) [ (T ⇥ Q) is a flow relation connecting places to
1 marking as initial state 1+ deadlock markings as
fi
nal states
initial state
[q0]
fi
nal “paid” state
[q6]
fi
nal “deleted” state
[q8]
fi
nal “rejected” state
[q7]
16. Semantics via finite traces
Runs and traces
4 Sander J.J. Leemans et al.
q0
open
t01
o
q1
⌧
t12
i
(insert item)
q2
⌧
t21
m
finalize
t23
f
q3
reject
t37
r
q7
accept
t35
a
q4
⌧
t51
b
pay
t46
p
q6
⌧ t45
d
q5
cancel
t15
c
delete
t58
q8
Fig. 2: Stochastic net of an order-to-cash process. Weights are presented symbolically.
Transition t12 captures a task that cannot be logged, and so is modelled as silent.
Definition 1 (Labelled Petri net). A labelled Petri net N is a tuple hQ, T, F, `i, where:
(i) Q is a finite set of places; (ii) T is a finite set of transitions, disjoint from Q (i.e.,
Q T = ;); (iii) F ✓ (Q ⇥ T) [ (T ⇥ Q) is a flow relation connecting places to
1 marking as initial state 1+ deadlock markings as
fi
nal states
initial state
[q0]
Run: valid sequence of transitions from the initial state to some
fi
nal state
Trace: projection of the run on labels of visible transitions
How many runs for the same trace?
Potentially in
fi
nitely many!
fi
nal “paid” state
[q6]
fi
nal “deleted” state
[q8]
fi
nal “rejected” state
[q7]
17. Semantics via finite traces
Runs and traces
4 Sander J.J. Leemans et al.
q0
open
t01
o
q1
⌧
t12
i
(insert item)
q2
⌧
t21
m
finalize
t23
f
q3
reject
t37
r
q7
accept
t35
a
q4
⌧
t51
b
pay
t46
p
q6
⌧ t45
d
q5
cancel
t15
c
delete
t58
q8
Fig. 2: Stochastic net of an order-to-cash process. Weights are presented symbolically.
Transition t12 captures a task that cannot be logged, and so is modelled as silent.
Definition 1 (Labelled Petri net). A labelled Petri net N is a tuple hQ, T, F, `i, where:
(i) Q is a finite set of places; (ii) T is a finite set of transitions, disjoint from Q (i.e.,
Q T = ;); (iii) F ✓ (Q ⇥ T) [ (T ⇥ Q) is a flow relation connecting places to
1 marking as initial state 1+ deadlock markings as
fi
nal states
initial state
[q0]
<open,
fi
nalize, accept,
fi
nalize, reject>
fi
nal “paid” state
[q6]
fi
nal “deleted” state
[q8]
fi
nal “rejected” state
[q7]
18. Semantics via finite traces
Runs and traces
4 Sander J.J. Leemans et al.
q0
open
t01
o
q1
⌧
t12
i
(insert item)
q2
⌧
t21
m
finalize
t23
f
q3
reject
t37
r
q7
accept
t35
a
q4
⌧
t51
b
pay
t46
p
q6
⌧ t45
d
q5
cancel
t15
c
delete
t58
q8
Fig. 2: Stochastic net of an order-to-cash process. Weights are presented symbolically.
Transition t12 captures a task that cannot be logged, and so is modelled as silent.
Definition 1 (Labelled Petri net). A labelled Petri net N is a tuple hQ, T, F, `i, where:
(i) Q is a finite set of places; (ii) T is a finite set of transitions, disjoint from Q (i.e.,
Q T = ;); (iii) F ✓ (Q ⇥ T) [ (T ⇥ Q) is a flow relation connecting places to
1 marking as initial state 1+ deadlock markings as
fi
nal states
initial state
[q0]
fi
nal “paid” state
[q6]
fi
nal “deleted” state
[q8]
<open,
fi
nalize, accept,
fi
nalize, reject>
fi
nal “rejected” state
[q7]
19. From net to transition system
4 Sander J.J. Leemans et al.
q0
open
t01
o
q1
⌧
t12
i
(insert item)
q2
⌧
t21
m
finalize
t23
f
q3
reject
t37
r
q7
accept
t35
a
q4
⌧
t51
b
pay
t46
p
q6
⌧ t45
d
q5
cancel
t15
c
delete
t58
q8
Fig. 2: Stochastic net of an order-to-cash process. Weights are presented symbolically.
Transition t12 captures a task that cannot be logged, and so is modelled as silent.
Definition 1 (Labelled Petri net). A labelled Petri net N is a tuple hQ, T, F, `i, where:
(i) Q is a finite set of places; (ii) T is a finite set of transitions, disjoint from Q (i.e.,
Q T = ;); (iii) F ✓ (Q ⇥ T) [ (T ⇥ Q) is a flow relation connecting places to
transitions and transitions to places; (iv) ` : T ! ⌃ is a labelling function mapping
each transition t 2 T to a corresponding label `(t) that is either a task name from ⌃ of
initial state
[q0]
fi
nal “paid” state
[q6]
fi
nal “deleted” state
[q8]
fi
nal “rejected” state
[q7]
6 Sander J.J. Leemans et al.
s0
[q0]
s1
[q1]
s2
[q2]
s3
[q3]
s4
[q4]
s7
[q7]
s5
[q5]
s6
[q6]
s8
[q8]
1
open
⇢i = i
i+c
⌧
⇢m = m
m+f
⌧
⇢f = f
m+f
fin ⇢a
=
a
a+r
acc
⇢r = r
a+r
rej
⇢b = b
b+p+d
⌧
⇢c = c
i+c can
⇢d = d
b+p+d
⌧
⇢p = d
b+p+d
pay
1
del
20. Stochastic Petri nets
Every transition gets a weight
• Immediate transition: relative likelihood to
fi
re
• Timed transition: rate/decay of exponential distribution for waiting time
4 Sander J.J. Leemans et al.
q0
open
t01
o
q1
⌧
t12
i
(insert item)
q2
⌧
t21
m
finalize
t23
f
q3
reject
t37
r
q7
accept
t35
a
q4
⌧
t51
b
pay
t46
p
q6
⌧ t45
d
q5
cancel
t15
c
delete
t58
q8
Fig. 2: Stochastic net of an order-to-cash process. Weights are presented symbolically.
Transition t12 captures a task that cannot be logged, and so is modelled as silent.
Definition 1 (Labelled Petri net). A labelled Petri net N is a tuple hQ, T, F, `i, where:
(i) Q is a finite set of places; (ii) T is a finite set of transitions, disjoint from Q (i.e.,
Q T = ;); (iii) F ✓ (Q ⇥ T) [ (T ⇥ Q) is a flow relation connecting places to
transitions and transitions to places; (iv) ` : T ! ⌃ is a labelling function mapping
each transition t 2 T to a corresponding label `(t) that is either a task name from ⌃ of
21. Stochastic Petri nets
Every transition gets a weight
• Immediate transition: relative likelihood to
fi
re
• Timed transition: rate/decay of exponential distribution for waiting time
Our interest: transition
fi
rings -> ordering without time
4 Sander J.J. Leemans et al.
q0
open
t01
o
q1
⌧
t12
i
(insert item)
q2
⌧
t21
m
finalize
t23
f
q3
reject
t37
r
q7
accept
t35
a
q4
⌧
t51
b
pay
t46
p
q6
⌧ t45
d
q5
cancel
t15
c
delete
t58
q8
Fig. 2: Stochastic net of an order-to-cash process. Weights are presented symbolically.
Transition t12 captures a task that cannot be logged, and so is modelled as silent.
Definition 1 (Labelled Petri net). A labelled Petri net N is a tuple hQ, T, F, `i, where:
(i) Q is a finite set of places; (ii) T is a finite set of transitions, disjoint from Q (i.e.,
Q T = ;); (iii) F ✓ (Q ⇥ T) [ (T ⇥ Q) is a flow relation connecting places to
transitions and transitions to places; (iv) ` : T ! ⌃ is a labelling function mapping
each transition t 2 T to a corresponding label `(t) that is either a task name from ⌃ of
22. Stochastic Petri nets
Focus: next transition
fi
ring/completion
P(
fi
re t enabled in m | marking m) =
weight of t
∑t′

enabled in m
weight of t′

4 Sander J.J. Leemans et al.
q0
open
t01
o
q1
⌧
t12
i
(insert item)
q2
⌧
t21
m
finalize
t23
f
q3
reject
t37
r
q7
accept
t35
a
q4
⌧
t51
b
pay
t46
p
q6
⌧ t45
d
q5
cancel
t15
c
delete
t58
q8
Fig. 2: Stochastic net of an order-to-cash process. Weights are presented symbolically.
Transition t12 captures a task that cannot be logged, and so is modelled as silent.
Definition 1 (Labelled Petri net). A labelled Petri net N is a tuple hQ, T, F, `i, where:
(i) Q is a finite set of places; (ii) T is a finite set of transitions, disjoint from Q (i.e.,
Q T = ;); (iii) F ✓ (Q ⇥ T) [ (T ⇥ Q) is a flow relation connecting places to
transitions and transitions to places; (iv) ` : T ! ⌃ is a labelling function mapping
each transition t 2 T to a corresponding label `(t) that is either a task name from ⌃ of
Works both for set of immediate OR of timed transitions
23. Stochastic Petri nets
Focus: next transition
fi
ring/completion
4 Sander J.J. Leemans et al.
q0
open
t01
o
q1
⌧
t12
i
(insert item)
q2
⌧
t21
m
finalize
t23
f
q3
reject
t37
r
q7
accept
t35
a
q4
⌧
t51
b
pay
t46
p
q6
⌧ t45
d
q5
cancel
t15
c
delete
t58
q8
Fig. 2: Stochastic net of an order-to-cash process. Weights are presented symbolically.
Transition t12 captures a task that cannot be logged, and so is modelled as silent.
Definition 1 (Labelled Petri net). A labelled Petri net N is a tuple hQ, T, F, `i, where:
(i) Q is a finite set of places; (ii) T is a finite set of transitions, disjoint from Q (i.e.,
Q T = ;); (iii) F ✓ (Q ⇥ T) [ (T ⇥ Q) is a flow relation connecting places to
transitions and transitions to places; (iv) ` : T ! ⌃ is a labelling function mapping
each transition t 2 T to a corresponding label `(t) that is either a task name from ⌃ of
P(
fi
re t enabled in m | marking m) =
weight of t
∑t′

enabled in m
weight of t′

fi
re with probability
r
a + r
fi
re with probability
a
a + r
24. Stochastic Petri nets
Focus: next transition
fi
ring/completion
4 Sander J.J. Leemans et al.
q0
open
t01
o
q1
⌧
t12
i
(insert item)
q2
⌧
t21
m
finalize
t23
f
q3
reject
t37
r
q7
accept
t35
a
q4
⌧
t51
b
pay
t46
p
q6
⌧ t45
d
q5
cancel
t15
c
delete
t58
q8
Fig. 2: Stochastic net of an order-to-cash process. Weights are presented symbolically.
Transition t12 captures a task that cannot be logged, and so is modelled as silent.
Definition 1 (Labelled Petri net). A labelled Petri net N is a tuple hQ, T, F, `i, where:
(i) Q is a finite set of places; (ii) T is a finite set of transitions, disjoint from Q (i.e.,
Q T = ;); (iii) F ✓ (Q ⇥ T) [ (T ⇥ Q) is a flow relation connecting places to
transitions and transitions to places; (iv) ` : T ! ⌃ is a labelling function mapping
each transition t 2 T to a corresponding label `(t) that is either a task name from ⌃ of
Every
fi
ring is independent
• Probability of a run = product of
fi
ring probabilities
• Probability of a trace = (possibly in
fi
nite) sum of probabilities of its runs
25. Stochastic Petri nets
Focus: next transition
fi
ring/completion
4 Sander J.J. Leemans et al.
q0
open
t01
o
q1
⌧
t12
i
(insert item)
q2
⌧
t21
m
finalize
t23
f
q3
reject
t37
r
q7
accept
t35
a
q4
⌧
t51
b
pay
t46
p
q6
⌧ t45
d
q5
cancel
t15
c
delete
t58
q8
Fig. 2: Stochastic net of an order-to-cash process. Weights are presented symbolically.
Transition t12 captures a task that cannot be logged, and so is modelled as silent.
Definition 1 (Labelled Petri net). A labelled Petri net N is a tuple hQ, T, F, `i, where:
(i) Q is a finite set of places; (ii) T is a finite set of transitions, disjoint from Q (i.e.,
Q T = ;); (iii) F ✓ (Q ⇥ T) [ (T ⇥ Q) is a flow relation connecting places to
transitions and transitions to places; (iv) ` : T ! ⌃ is a labelling function mapping
each transition t 2 T to a corresponding label `(t) that is either a task name from ⌃ of
Every
fi
ring is independent
• Probability of a run = product of
fi
ring probabilities
• Probability of a trace = (possibly in
fi
nite) sum of probabilities of its runs
So far:
• approximate computation, or
• exact computation for restricted nets (no fully silent loops)
26. Semantics via stochastic transition systems
4 Sander J.J. Leemans et al.
q0
open
t01
o
q1
⌧
t12
i
(insert item)
q2
⌧
t21
m
finalize
t23
f
q3
reject
t37
r
q7
accept
t35
a
q4
⌧
t51
b
pay
t46
p
q6
⌧ t45
d
q5
cancel
t15
c
delete
t58
q8
Fig. 2: Stochastic net of an order-to-cash process. Weights are presented symbolically.
Transition t12 captures a task that cannot be logged, and so is modelled as silent.
Definition 1 (Labelled Petri net). A labelled Petri net N is a tuple hQ, T, F, `i, where:
(i) Q is a finite set of places; (ii) T is a finite set of transitions, disjoint from Q (i.e.,
Q T = ;); (iii) F ✓ (Q ⇥ T) [ (T ⇥ Q) is a flow relation connecting places to
transitions and transitions to places; (iv) ` : T ! ⌃ is a labelling function mapping
each transition t 2 T to a corresponding label `(t) that is either a task name from ⌃ of
initial state
[q0]
fi
nal “paid” state
[q6]
fi
nal “deleted” state
[q8]
fi
nal “rejected” state
[q7]
6 Sander J.J. Leemans et al.
s0
[q0]
s1
[q1]
s2
[q2]
s3
[q3]
s4
[q4]
s7
[q7]
s5
[q5]
s6
[q6]
s8
[q8]
1
open
⇢i = i
i+c
⌧
⇢m = m
m+f
⌧
⇢f = f
m+f
fin ⇢a
=
a
a+r
acc
⇢r = r
a+r
rej
⇢b = b
b+p+d
⌧
⇢c = c
i+c can
⇢d = d
b+p+d
⌧
⇢p = d
b+p+d
pay
1
del
Looks familiar?
27. Key problems
1. Probability of a trace
2. Probability of satisfying a qualitative property expressed
in temporal logics over
fi
nite traces, or as a
fi
nite-state
automaton
3. Conformance to a probabilistic Declare speci
fi
cation
that de
fi
nes constraint scenarios, each coming with a
di
ff
erent probability (or range of probabilities)
28. Observation
1. Probability of a trace
2. Probability of satisfying a qualitative property expressed
in temporal logics over
fi
nite traces, or as a
fi
nite-state
automaton
Encode trace as an
automaton
<open,
fi
nalize, accept,
fi
nalize, reject>
0 1 2 3 4 5
open
fi
nalize accept
fi
nalize reject
30. Attack strategy
Reasoning on states
and probabilities
Reasoning on tasks
and transitions
Markov chains
Qualitative model
checking
Elegant trick to deal with
silent transitions
31. Attack strategy
Reasoning on states
and probabilities
Reasoning on tasks
and transitions
Markov chains
Qualitative model
checking
Elegant trick to deal with
silent transitions
1. Probability of a trace
2. Probability of satisfying a
qualitative property
3. Conformance to a probabilistic
Declare speci
fi
cation
0. Outcome probability
Probability of completing the
process in some
fi
nal states
32. Attack strategy
Reasoning on states
and probabilities
Reasoning on tasks
and transitions
Markov chains
Qualitative model
checking
Elegant trick to deal with
silent transitions
1. Probability of a trace
2. Probability of satisfying a
qualitative property
3. Conformance to a probabilistic
Declare speci
fi
cation
0. Outcome probability
Probability of completing the
process in some
fi
nal states
35. Outcome probability
What is the probability of ending with order paid?
6 Sander J.J. Leemans et al.
s0
[q0]
s1
[q1]
s2
[q2]
s3
[q3]
s4
[q4]
s7
[q7]
s5
[q5]
s6
[q6]
s8
[q8]
1
open
⇢i = i
i+c
⌧
⇢m = m
m+f
⌧
⇢f = f
m+f
fin ⇢a
=
a
a+r
acc
⇢r = r
a+r
rej
⇢b = b
b+p+d
⌧
⇢c = c
i+c can
⇢d = d
b+p+d
⌧
⇢p = d
b+p+d
pay
1
del
Fig. 3: Stochastic reachability graph of the order-to-cash bounded stochastic PNP.
States are named. The initial state is shown with a small incoming edge. Final states
have a double countour.
36. Outcome probability
What is the probability of ending with order paid?
What matters: progression from state to state -> Markov chain
6 Sander J.J. Leemans et al.
s0
[q0]
s1
[q1]
s2
[q2]
s3
[q3]
s4
[q4]
s7
[q7]
s5
[q5]
s6
[q6]
s8
[q8]
1
open
⇢i = i
i+c
⌧
⇢m = m
m+f
⌧
⇢f = f
m+f
fin ⇢a
=
a
a+r
acc
⇢r = r
a+r
rej
⇢b = b
b+p+d
⌧
⇢c = c
i+c can
⇢d = d
b+p+d
⌧
⇢p = d
b+p+d
pay
1
del
Fig. 3: Stochastic reachability graph of the order-to-cash bounded stochastic PNP.
States are named. The initial state is shown with a small incoming edge. Final states
have a double countour.
37. Outcome probability
What is the probability of ending with order paid?
Each state -> variable for probability of reaching the desired one from there
3 cases:
•
fi
nal desired state (good deadlock)
•
fi
nal non-desired state (bad deadlock)
• other states…
6 Sander J.J. Leemans et al.
s0
[q0]
s1
[q1]
s2
[q2]
s3
[q3]
s4
[q4]
s7
[q7]
s5
[q5]
s6
[q6]
s8
[q8]
1
open
⇢i = i
i+c
⌧
⇢m = m
m+f
⌧
⇢f = f
m+f
fin ⇢a
=
a
a+r
acc
⇢r = r
a+r
rej
⇢b = b
b+p+d
⌧
⇢c = c
i+c can
⇢d = d
b+p+d
⌧
⇢p = d
b+p+d
pay
1
del
Fig. 3: Stochastic reachability graph of the order-to-cash bounded stochastic PNP.
States are named. The initial state is shown with a small incoming edge. Final states
have a double countour.
38. Outcome probability
What is the probability of ending with order paid?
Each state -> variable for probability of reaching the desired one from there
3 cases:
•
fi
nal desired state (good deadlock) -> 1
•
fi
nal non-desired state (bad deadlock) -> 0
• other states… -> recursive de
fi
nition via linear equations
6 Sander J.J. Leemans et al.
s0
[q0]
s1
[q1]
s2
[q2]
s3
[q3]
s4
[q4]
s7
[q7]
s5
[q5]
s6
[q6]
s8
[q8]
1
open
⇢i = i
i+c
⌧
⇢m = m
m+f
⌧
⇢f = f
m+f
fin ⇢a
=
a
a+r
acc
⇢r = r
a+r
rej
⇢b = b
b+p+d
⌧
⇢c = c
i+c can
⇢d = d
b+p+d
⌧
⇢p = d
b+p+d
pay
1
del
Fig. 3: Stochastic reachability graph of the order-to-cash bounded stochastic PNP.
States are named. The initial state is shown with a small incoming edge. Final states
have a double countour.
x6 = 1
x8 = 0
x1 = ρix2 + ρcx5
39. Outcome probability
What is the probability of ending with order paid?
Each state -> variable for probability of reaching the desired one from there
3 cases:
•
fi
nal desired state (good deadlock) -> 1
•
fi
nal non-desired state (bad deadlock) -> 0
• other states… -> recursive de
fi
nition via linear equations
6 Sander J.J. Leemans et al.
s0
[q0]
s1
[q1]
s2
[q2]
s3
[q3]
s4
[q4]
s7
[q7]
s5
[q5]
s6
[q6]
s8
[q8]
1
open
⇢i = i
i+c
⌧
⇢m = m
m+f
⌧
⇢f = f
m+f
fin ⇢a
=
a
a+r
acc
⇢r = r
a+r
rej
⇢b = b
b+p+d
⌧
⇢c = c
i+c can
⇢d = d
b+p+d
⌧
⇢p = d
b+p+d
pay
1
del
Fig. 3: Stochastic reachability graph of the order-to-cash bounded stochastic PNP.
States are named. The initial state is shown with a small incoming edge. Final states
have a double countour.
} Solve for initial state variable!
x6 = 1
x8 = 0
x1 = ρix2 + ρcx5
40. Outcome probability
What is the probability of ending with order paid?
6 Sander J.J. Leemans et al.
s0
[q0]
s1
[q1]
s2
[q2]
s3
[q3]
s4
[q4]
s7
[q7]
s5
[q5]
s6
[q6]
s8
[q8]
1
open
⇢i = i
i+c
⌧
⇢m = m
m+f
⌧
⇢f = f
m+f
fin ⇢a
=
a
a+r
acc
⇢r = r
a+r
rej
⇢b = b
b+p+d
⌧
⇢c = c
i+c can
⇢d = d
b+p+d
⌧
⇢p = d
b+p+d
pay
1
del
Fig. 3: Stochastic reachability graph of the order-to-cash bounded stochastic PNP.
States are named. The initial state is shown with a small incoming edge. Final states
have a double countour.
marking [q0] and final marking [q1]. States s2 and s3 are livelock markings.
By recalling that states of RG(N) are markings of N, the schema (1) of equations
deals with final (deadlock) states, that in (1) with non-final deadlock states, and that in
(1) with non-final, non-deadlock states.
EF
N has always at least a solution. However, it may be indeterminate and thus admit
infinitely many ones, requiring in that case to pick the least committing (i.e., minimal
non-negative) solution. The latter case happens when N contains livelock markings.
This is illustrated in the following examples.
Example 2. Consider bounded stochastic PNP Norder (Figure 2). We want to solve the
problem OUTCOME-PROB(Norder, [q6]), to compute the probability that a created order
eventually completes the process by being paid. To do so, we solve E
[q6]
Norder
by encoding
the reachability graph of Figure 3 into:
xs8
= 0 xs5
= xs8
xs2
= ⇢mxs1
+ ⇢f xs3
xs7
= 0 xs4
= ⇢bxs1
+ ⇢dxs5
+ ⇢pxs6
xs1
= ⇢ixs2
+ ⇢cxs5
xs6
= 1 xs3
= ⇢axs4
+ ⇢rxs7
xs0
= xs1
41. marking [q0] and final marking [q1]. States s2 and s3 are livelock markings.
By recalling that states of RG(N) are markings of N, the schema (1) of equations
deals with final (deadlock) states, that in (1) with non-final deadlock states, and that in
(1) with non-final, non-deadlock states.
EF
N has always at least a solution. However, it may be indeterminate and thus admit
infinitely many ones, requiring in that case to pick the least committing (i.e., minimal
non-negative) solution. The latter case happens when N contains livelock markings.
This is illustrated in the following examples.
Example 2. Consider bounded stochastic PNP Norder (Figure 2). We want to solve the
problem OUTCOME-PROB(Norder, [q6]), to compute the probability that a created order
eventually completes the process by being paid. To do so, we solve E
[q6]
Norder
by encoding
the reachability graph of Figure 3 into:
xs8
= 0 xs5
= xs8
xs2
= ⇢mxs1
+ ⇢f xs3
xs7
= 0 xs4
= ⇢bxs1
+ ⇢dxs5
+ ⇢pxs6
xs1
= ⇢ixs2
+ ⇢cxs5
xs6
= 1 xs3
= ⇢axs4
+ ⇢rxs7
xs0
= xs1
Outcome probability
What is the probability of ending with order paid?
6 Sander J.J. Leemans et al.
s0
[q0]
s1
[q1]
s2
[q2]
s3
[q3]
s4
[q4]
s7
[q7]
s5
[q5]
s6
[q6]
s8
[q8]
1
open
⇢i = i
i+c
⌧
⇢m = m
m+f
⌧
⇢f = f
m+f
fin ⇢a
=
a
a+r
acc
⇢r = r
a+r
rej
⇢b = b
b+p+d
⌧
⇢c = c
i+c can
⇢d = d
b+p+d
⌧
⇢p = d
b+p+d
pay
1
del
Fig. 3: Stochastic reachability graph of the order-to-cash bounded stochastic PNP.
States are named. The initial state is shown with a small incoming edge. Final states
have a double countour.
}
x0 =
ρiρf ρaρp
1 − ρiρm − ρiρf ρaρb
42. marking [q0] and final marking [q1]. States s2 and s3 are livelock markings.
By recalling that states of RG(N) are markings of N, the schema (1) of equations
deals with final (deadlock) states, that in (1) with non-final deadlock states, and that in
(1) with non-final, non-deadlock states.
EF
N has always at least a solution. However, it may be indeterminate and thus admit
infinitely many ones, requiring in that case to pick the least committing (i.e., minimal
non-negative) solution. The latter case happens when N contains livelock markings.
This is illustrated in the following examples.
Example 2. Consider bounded stochastic PNP Norder (Figure 2). We want to solve the
problem OUTCOME-PROB(Norder, [q6]), to compute the probability that a created order
eventually completes the process by being paid. To do so, we solve E
[q6]
Norder
by encoding
the reachability graph of Figure 3 into:
xs8
= 0 xs5
= xs8
xs2
= ⇢mxs1
+ ⇢f xs3
xs7
= 0 xs4
= ⇢bxs1
+ ⇢dxs5
+ ⇢pxs6
xs1
= ⇢ixs2
+ ⇢cxs5
xs6
= 1 xs3
= ⇢axs4
+ ⇢rxs7
xs0
= xs1
Outcome probability
What is the probability of ending with order paid?
6 Sander J.J. Leemans et al.
s0
[q0]
s1
[q1]
s2
[q2]
s3
[q3]
s4
[q4]
s7
[q7]
s5
[q5]
s6
[q6]
s8
[q8]
1
open
⇢i = i
i+c
⌧
⇢m = m
m+f
⌧
⇢f = f
m+f
fin ⇢a
=
a
a+r
acc
⇢r = r
a+r
rej
⇢b = b
b+p+d
⌧
⇢c = c
i+c can
⇢d = d
b+p+d
⌧
⇢p = d
b+p+d
pay
1
del
Fig. 3: Stochastic reachability graph of the order-to-cash bounded stochastic PNP.
States are named. The initial state is shown with a small incoming edge. Final states
have a double countour.
}
x0 =
ρiρf ρaρp
1 − ρiρm − ρiρf ρaρb
43. marking [q0] and final marking [q1]. States s2 and s3 are livelock markings.
By recalling that states of RG(N) are markings of N, the schema (1) of equations
deals with final (deadlock) states, that in (1) with non-final deadlock states, and that in
(1) with non-final, non-deadlock states.
EF
N has always at least a solution. However, it may be indeterminate and thus admit
infinitely many ones, requiring in that case to pick the least committing (i.e., minimal
non-negative) solution. The latter case happens when N contains livelock markings.
This is illustrated in the following examples.
Example 2. Consider bounded stochastic PNP Norder (Figure 2). We want to solve the
problem OUTCOME-PROB(Norder, [q6]), to compute the probability that a created order
eventually completes the process by being paid. To do so, we solve E
[q6]
Norder
by encoding
the reachability graph of Figure 3 into:
xs8
= 0 xs5
= xs8
xs2
= ⇢mxs1
+ ⇢f xs3
xs7
= 0 xs4
= ⇢bxs1
+ ⇢dxs5
+ ⇢pxs6
xs1
= ⇢ixs2
+ ⇢cxs5
xs6
= 1 xs3
= ⇢axs4
+ ⇢rxs7
xs0
= xs1
Outcome probability
What is the probability of ending with order paid?
6 Sander J.J. Leemans et al.
s0
[q0]
s1
[q1]
s2
[q2]
s3
[q3]
s4
[q4]
s7
[q7]
s5
[q5]
s6
[q6]
s8
[q8]
1
open
⇢i = i
i+c
⌧
⇢m = m
m+f
⌧
⇢f = f
m+f
fin ⇢a
=
a
a+r
acc
⇢r = r
a+r
rej
⇢b = b
b+p+d
⌧
⇢c = c
i+c can
⇢d = d
b+p+d
⌧
⇢p = d
b+p+d
pay
1
del
Fig. 3: Stochastic reachability graph of the order-to-cash bounded stochastic PNP.
States are named. The initial state is shown with a small incoming edge. Final states
have a double countour.
}
x0 =
ρiρf ρaρp
1 − ρiρm − ρiρf ρaρb
44. marking [q0] and final marking [q1]. States s2 and s3 are livelock markings.
By recalling that states of RG(N) are markings of N, the schema (1) of equations
deals with final (deadlock) states, that in (1) with non-final deadlock states, and that in
(1) with non-final, non-deadlock states.
EF
N has always at least a solution. However, it may be indeterminate and thus admit
infinitely many ones, requiring in that case to pick the least committing (i.e., minimal
non-negative) solution. The latter case happens when N contains livelock markings.
This is illustrated in the following examples.
Example 2. Consider bounded stochastic PNP Norder (Figure 2). We want to solve the
problem OUTCOME-PROB(Norder, [q6]), to compute the probability that a created order
eventually completes the process by being paid. To do so, we solve E
[q6]
Norder
by encoding
the reachability graph of Figure 3 into:
xs8
= 0 xs5
= xs8
xs2
= ⇢mxs1
+ ⇢f xs3
xs7
= 0 xs4
= ⇢bxs1
+ ⇢dxs5
+ ⇢pxs6
xs1
= ⇢ixs2
+ ⇢cxs5
xs6
= 1 xs3
= ⇢axs4
+ ⇢rxs7
xs0
= xs1
Outcome probability
What is the probability of ending with order paid?
6 Sander J.J. Leemans et al.
s0
[q0]
s1
[q1]
s2
[q2]
s3
[q3]
s4
[q4]
s7
[q7]
s5
[q5]
s6
[q6]
s8
[q8]
1
open
⇢i = i
i+c
⌧
⇢m = m
m+f
⌧
⇢f = f
m+f
fin ⇢a
=
a
a+r
acc
⇢r = r
a+r
rej
⇢b = b
b+p+d
⌧
⇢c = c
i+c can
⇢d = d
b+p+d
⌧
⇢p = d
b+p+d
pay
1
del
Fig. 3: Stochastic reachability graph of the order-to-cash bounded stochastic PNP.
States are named. The initial state is shown with a small incoming edge. Final states
have a double countour.
}
x0 =
ρiρf ρaρp
1 − ρiρm − ρiρf ρaρb
45. More care needed…
Reasoning on Labelled Petri Nets and their Dynamics in a Stochastic Setting 9
q0
a
t01
a
q1
b
t02
b
q2
c
t23
c
q3
d
t32
d
e t33
e
(a) Stochastic net.
s0
[q0]
s1
[q1]
s2
[q2]
s3
[q3]
a
⇢a
=
a
a+b
b
⇢b = b
a+b c
d
⇢d = d
d+e e
⇢e = e
e+d
(b) Reachability graph.
Fig. 4: Reachability graph (b) of a bounded stochastic PNP with net shown in (a), initial
initial state
[q0]
fi
nal state
[q1]
46. More care needed…
Reasoning on Labelled Petri Nets and their Dynamics in a Stochastic Setting 9
q0
a
t01
a
q1
b
t02
b
q2
c
t23
c
q3
d
t32
d
e t33
e
(a) Stochastic net.
s0
[q0]
s1
[q1]
s2
[q2]
s3
[q3]
a
⇢a
=
a
a+b
b
⇢b = b
a+b c
d
⇢d = d
d+e e
⇢e = e
e+d
(b) Reachability graph.
Fig. 4: Reachability graph (b) of a bounded stochastic PNP with net shown in (a), initial
initial state
[q0]
fi
nal state
[q1]
livelock
47. More care needed…
Reasoning on Labelled Petri Nets and their Dynamics in a Stochastic Setting 9
q0
a
t01
a
q1
b
t02
b
q2
c
t23
c
q3
d
t32
d
e t33
e
(a) Stochastic net.
s0
[q0]
s1
[q1]
s2
[q2]
s3
[q3]
a
⇢a
=
a
a+b
b
⇢b = b
a+b c
d
⇢d = d
d+e e
⇢e = e
e+d
(b) Reachability graph.
Fig. 4: Reachability graph (b) of a bounded stochastic PNP with net shown in (a), initial
initial state
[q0]
fi
nal state
[q1]
livelock x3 = 0
x2 = 0
48. General case
Exit/absorption probability computation from Markov chains
Base case if s has no successor states (i.e., is a deadlock marking), then xsi = 1 if s
corresponds to a final marking, otherwise xsi = 0 (witnessing that F cannot be
reached);
Inductive case if s has at least one successor, then its variable is equal to sum of the
state variables of its successor states, weighted by the transition probability to
move to that successor.
Formally, OUTCOME-PROB(N, F) with RG(N) = hS, s0, Sf , %, pi gets encoded into
the following linear optimisation problem EF
N :
Return xs0 from the minimal non-negative solution of
xsi = 1 for each si 2 F (1)
xsj = 0 for each sj 2 S F s.t. |succRG(N )(sj)| = 0 (2)
xsk =
X
hsk,l,s0
k
i2succRG(N )(sk)
p(hsk, l, s0
ki) · xs0
k
for each sk 2 S s.t. |succRG(N )(sk)| > 0 (3)
corresponds to a final marking, otherwise xsi = 0 (witnessing that F cannot be
reached);
Inductive case if s has at least one successor, then its variable is equal to sum of the
state variables of its successor states, weighted by the transition probability to
move to that successor.
Formally, OUTCOME-PROB(N, F) with RG(N) = hS, s0, Sf , %, pi gets encoded into
the following linear optimisation problem EF
N :
Return xs0 from the minimal non-negative solution of
xsi = 1 for each si 2 F (1)
xsj = 0 for each sj 2 S F s.t. |succRG(N )(sj)| = 0 (2)
xsk =
X
hsk,l,s0
k
i2succRG(N )(sk)
p(hsk, l, s0
ki) · xs0
k
for each sk 2 S s.t. |succRG(N )(sk)| > 0 (3)
49. General case
Exit/absorption probability computation from Markov chains
Base case if s has no successor states (i.e., is a deadlock marking), then xsi = 1 if s
corresponds to a final marking, otherwise xsi = 0 (witnessing that F cannot be
reached);
Inductive case if s has at least one successor, then its variable is equal to sum of the
state variables of its successor states, weighted by the transition probability to
move to that successor.
Formally, OUTCOME-PROB(N, F) with RG(N) = hS, s0, Sf , %, pi gets encoded into
the following linear optimisation problem EF
N :
Return xs0 from the minimal non-negative solution of
xsi = 1 for each si 2 F (1)
xsj = 0 for each sj 2 S F s.t. |succRG(N )(sj)| = 0 (2)
xsk =
X
hsk,l,s0
k
i2succRG(N )(sk)
p(hsk, l, s0
ki) · xs0
k
for each sk 2 S s.t. |succRG(N )(sk)| > 0 (3)
corresponds to a final marking, otherwise xsi = 0 (witnessing that F cannot be
reached);
Inductive case if s has at least one successor, then its variable is equal to sum of the
state variables of its successor states, weighted by the transition probability to
move to that successor.
Formally, OUTCOME-PROB(N, F) with RG(N) = hS, s0, Sf , %, pi gets encoded into
the following linear optimisation problem EF
N :
Return xs0 from the minimal non-negative solution of
xsi = 1 for each si 2 F (1)
xsj = 0 for each sj 2 S F s.t. |succRG(N )(sj)| = 0 (2)
xsk =
X
hsk,l,s0
k
i2succRG(N )(sk)
p(hsk, l, s0
ki) · xs0
k
for each sk 2 S s.t. |succRG(N )(sk)| > 0 (3)
10 Sander J.J. Leemans et al.
Example 3 illustrates how the technique implicitly gets rid of livelock markings,
associating to them a 0 probability. This captures the essential fact that, by definition,
a livelock marking can never reach any final marking. More in general, we can in fact
solve OUTCOME-PROB(N, F) by turning the linear optimisation problem EF
N into the
following system of equalities, which is guaranteed to have exactly one solution:
xsi
= 1 for each deadlock marking si 2 F (4)
xsj
= 0 for each deadlock marking sj 2 S F (5)
xsk
= 0 for each livelock marking sk 2 S (6)
xsh
=
X
hsh,l,s0
hi2succRG(N )(sh)
p(hsh, l, s0
hi) · xs0
h
for each remaining marking sh 2 S (7)
50. Attack strategy
Reasoning on states
and probabilities
Reasoning on tasks
and transitions
Markov chains
Qualitative model
checking
Elegant trick to deal with
silent transitions
1. Probability of a trace
2. Probability of satisfying a
qualitative property
3. Conformance to a probabilistic
Declare speci
fi
cation
0. Outcome probability
Probability of completing the
process in some
fi
nal states
51. Model checking
What are the traces of the net that satisfy my property?
6 Sander J.J. Leemans et al.
s0
[q0]
s1
[q1]
s2
[q2]
s3
[q3]
s4
[q4]
s7
[q7]
s5
[q5]
s6
[q6]
s8
[q8]
1
open
⇢i = i
i+c
⌧
⇢m = m
m+f
⌧
⇢f = f
m+f
fin ⇢a
=
a
a+r
acc
⇢r = r
a+r
rej
⇢b = b
b+p+d
⌧
⇢c = c
i+c can
⇢d = d
b+p+d
⌧
⇢p = d
b+p+d
pay
1
del
Fig. 3: Stochastic reachability graph of the order-to-cash bounded stochastic PNP.
States are named. The initial state is shown with a small incoming edge. Final states
have a double countour.
property: good,
fi
nite traces (via an automaton)
52. Model checking
What are the traces of the net that satisfy my property?
What matters: transitions and their labels -> transition system
6 Sander J.J. Leemans et al.
s0
[q0]
s1
[q1]
s2
[q2]
s3
[q3]
s4
[q4]
s7
[q7]
s5
[q5]
s6
[q6]
s8
[q8]
1
open
⇢i = i
i+c
⌧
⇢m = m
m+f
⌧
⇢f = f
m+f
fin ⇢a
=
a
a+r
acc
⇢r = r
a+r
rej
⇢b = b
b+p+d
⌧
⇢c = c
i+c can
⇢d = d
b+p+d
⌧
⇢p = d
b+p+d
pay
1
del
Fig. 3: Stochastic reachability graph of the order-to-cash bounded stochastic PNP.
States are named. The initial state is shown with a small incoming edge. Final states
have a double countour.
property: good,
fi
nite traces (via an automaton)
53. Automata-based product
6 Sander J.J. Leemans et al.
s0
[q0]
s1
[q1]
s2
[q2]
s3
[q3]
s4
[q4]
s7
[q7]
s5
[q5]
s6
[q6]
s8
[q8]
1
open
⇢i = i
i+c
⌧
⇢m = m
m+f
⌧
⇢f = f
m+f
fin ⇢a
=
a
a+r
acc
⇢r = r
a+r
rej
⇢b = b
b+p+d
⌧
⇢c = c
i+c can
⇢d = d
b+p+d
⌧
⇢p = d
b+p+d
pay
1
del
Fig. 3: Stochastic reachability graph of the order-to-cash bounded stochastic PNP.
States are named. The initial state is shown with a small incoming edge. Final states
have a double countour.
Definition 7 (Labelled transition system). A labelled transition system is a tuple
hS, s0, Sf , %i where: (i) S is a (possibly infinite) set of states; (ii) s0 2 S is the ini-
tial state; (iii) Sf ✓ S is the set of accepting states; (iv) % ✓ S ⇥⌃ ⇥ S is a⌃-labelled
transition relation. A run is a finite sequence of transitions leading from s0 to one of the
states in Sf in agreement with %. /
Due to our requirement that all final markings are deadlock markings, accepting states
0 1 2 3 4 5
open
fi
nalize accept
fi
nalize reject
54. Automata-based product
6 Sander J.J. Leemans et al.
s0
[q0]
s1
[q1]
s2
[q2]
s3
[q3]
s4
[q4]
s7
[q7]
s5
[q5]
s6
[q6]
s8
[q8]
1
open
⇢i = i
i+c
⌧
⇢m = m
m+f
⌧
⇢f = f
m+f
fin ⇢a
=
a
a+r
acc
⇢r = r
a+r
rej
⇢b = b
b+p+d
⌧
⇢c = c
i+c can
⇢d = d
b+p+d
⌧
⇢p = d
b+p+d
pay
1
del
Fig. 3: Stochastic reachability graph of the order-to-cash bounded stochastic PNP.
States are named. The initial state is shown with a small incoming edge. Final states
have a double countour.
Definition 7 (Labelled transition system). A labelled transition system is a tuple
hS, s0, Sf , %i where: (i) S is a (possibly infinite) set of states; (ii) s0 2 S is the ini-
tial state; (iii) Sf ✓ S is the set of accepting states; (iv) % ✓ S ⇥⌃ ⇥ S is a⌃-labelled
transition relation. A run is a finite sequence of transitions leading from s0 to one of the
states in Sf in agreement with %. /
Due to our requirement that all final markings are deadlock markings, accepting states
0 1 2 3 4 5
open
fi
nalize accept
fi
nalize reject
X
55. Automata-based product
6 Sander J.J. Leemans et al.
s0
[q0]
s1
[q1]
s2
[q2]
s3
[q3]
s4
[q4]
s7
[q7]
s5
[q5]
s6
[q6]
s8
[q8]
1
open
⇢i = i
i+c
⌧
⇢m = m
m+f
⌧
⇢f = f
m+f
fin ⇢a
=
a
a+r
acc
⇢r = r
a+r
rej
⇢b = b
b+p+d
⌧
⇢c = c
i+c can
⇢d = d
b+p+d
⌧
⇢p = d
b+p+d
pay
1
del
Fig. 3: Stochastic reachability graph of the order-to-cash bounded stochastic PNP.
States are named. The initial state is shown with a small incoming edge. Final states
have a double countour.
Definition 7 (Labelled transition system). A labelled transition system is a tuple
hS, s0, Sf , %i where: (i) S is a (possibly infinite) set of states; (ii) s0 2 S is the ini-
tial state; (iii) Sf ✓ S is the set of accepting states; (iv) % ✓ S ⇥⌃ ⇥ S is a⌃-labelled
transition relation. A run is a finite sequence of transitions leading from s0 to one of the
states in Sf in agreement with %. /
Due to our requirement that all final markings are deadlock markings, accepting states
Reasoning on Labelled Petri Nets and their Dynamics in a Stochastic Setting 1
s0 s1 s2
s3
s4
s5
⌧ ⌧ ⌧
⌧
⌧
⌧
open fin
acc
fin
rej
(a) DFAs A and Ā .
0, 0 1, 1 2, 1 3, 2 4, 3
1, 3
2, 3
3, 4
7, 5
open
1 ⌧
⇢i
⌧
⇢m fin
⇢f
acc
⇢a
⌧
⇢b
⌧
⇢i
⌧
⇢m
fin
⇢f
rej
⇢r
(b) Product system between Ā and RG(Norder).
0 1 2 3 4 5
open
fi
nalize accept
fi
nalize reject
X
???
56. Properties must “enjoy the silence”
6 Sander J.J. Leemans et al.
s0
[q0]
s1
[q1]
s2
[q2]
s3
[q3]
s4
[q4]
s7
[q7]
s5
[q5]
s6
[q6]
s8
[q8]
1
open
⇢i = i
i+c
⌧
⇢m = m
m+f
⌧
⇢f = f
m+f
fin ⇢a
=
a
a+r
acc
⇢r = r
a+r
rej
⇢b = b
b+p+d
⌧
⇢c = c
i+c can
⇢d = d
b+p+d
⌧
⇢p = d
b+p+d
pay
1
del
Fig. 3: Stochastic reachability graph of the order-to-cash bounded stochastic PNP.
States are named. The initial state is shown with a small incoming edge. Final states
have a double countour.
Definition 7 (Labelled transition system). A labelled transition system is a tuple
hS, s0, Sf , %i where: (i) S is a (possibly infinite) set of states; (ii) s0 2 S is the ini-
tial state; (iii) Sf ✓ S is the set of accepting states; (iv) % ✓ S ⇥⌃ ⇥ S is a⌃-labelled
transition relation. A run is a finite sequence of transitions leading from s0 to one of the
states in Sf in agreement with %. /
Due to our requirement that all final markings are deadlock markings, accepting states
0 1 2 3 4 5
open
fi
nalize accept
fi
nalize reject
57. Properties must “enjoy the silence”
6 Sander J.J. Leemans et al.
s0
[q0]
s1
[q1]
s2
[q2]
s3
[q3]
s4
[q4]
s7
[q7]
s5
[q5]
s6
[q6]
s8
[q8]
1
open
⇢i = i
i+c
⌧
⇢m = m
m+f
⌧
⇢f = f
m+f
fin ⇢a
=
a
a+r
acc
⇢r = r
a+r
rej
⇢b = b
b+p+d
⌧
⇢c = c
i+c can
⇢d = d
b+p+d
⌧
⇢p = d
b+p+d
pay
1
del
Fig. 3: Stochastic reachability graph of the order-to-cash bounded stochastic PNP.
States are named. The initial state is shown with a small incoming edge. Final states
have a double countour.
Definition 7 (Labelled transition system). A labelled transition system is a tuple
hS, s0, Sf , %i where: (i) S is a (possibly infinite) set of states; (ii) s0 2 S is the ini-
tial state; (iii) Sf ✓ S is the set of accepting states; (iv) % ✓ S ⇥⌃ ⇥ S is a⌃-labelled
transition relation. A run is a finite sequence of transitions leading from s0 to one of the
states in Sf in agreement with %. /
Due to our requirement that all final markings are deadlock markings, accepting states
0 1 2 3 4 5
open
fi
nalize accept
fi
nalize reject
τ τ τ τ τ τ
58. Silence-preserving cross-product
6 Sander J.J. Leemans et al.
s0
[q0]
s1
[q1]
s2
[q2]
s3
[q3]
s4
[q4]
s7
[q7]
s5
[q5]
s6
[q6]
s8
[q8]
1
open
⇢i = i
i+c
⌧
⇢m = m
m+f
⌧
⇢f = f
m+f
fin ⇢a
=
a
a+r
acc
⇢r = r
a+r
rej
⇢b = b
b+p+d
⌧
⇢c = c
i+c can
⇢d = d
b+p+d
⌧
⇢p = d
b+p+d
pay
1
del
Fig. 3: Stochastic reachability graph of the order-to-cash bounded stochastic PNP.
States are named. The initial state is shown with a small incoming edge. Final states
have a double countour.
Definition 7 (Labelled transition system). A labelled transition system is a tuple
hS, s0, Sf , %i where: (i) S is a (possibly infinite) set of states; (ii) s0 2 S is the ini-
tial state; (iii) Sf ✓ S is the set of accepting states; (iv) % ✓ S ⇥⌃ ⇥ S is a⌃-labelled
transition relation. A run is a finite sequence of transitions leading from s0 to one of the
states in Sf in agreement with %. /
Due to our requirement that all final markings are deadlock markings, accepting states
Reasoning on Labelled Petri Nets and their Dynamics in a Stochastic Setting 1
s0 s1 s2
s3
s4
s5
⌧ ⌧ ⌧
⌧
⌧
⌧
open fin
acc
fin
rej
(a) DFAs A and Ā .
0, 0 1, 1 2, 1 3, 2 4, 3
1, 3
2, 3
3, 4
7, 5
open
1 ⌧
⇢i
⌧
⇢m fin
⇢f
acc
⇢a
⌧
⇢b
⌧
⇢i
⌧
⇢m
fin
⇢f
rej
⇢r
(b) Product system between Ā and RG(Norder).
0 1 2 3 4 5
open
fi
nalize accept
fi
nalize reject
X
τ τ τ τ τ τ
59. Silence-preserving cross-product
6 Sander J.J. Leemans et al.
s0
[q0]
s1
[q1]
s2
[q2]
s3
[q3]
s4
[q4]
s7
[q7]
s5
[q5]
s6
[q6]
s8
[q8]
1
open
⇢i = i
i+c
⌧
⇢m = m
m+f
⌧
⇢f = f
m+f
fin ⇢a
=
a
a+r
acc
⇢r = r
a+r
rej
⇢b = b
b+p+d
⌧
⇢c = c
i+c can
⇢d = d
b+p+d
⌧
⇢p = d
b+p+d
pay
1
del
Fig. 3: Stochastic reachability graph of the order-to-cash bounded stochastic PNP.
States are named. The initial state is shown with a small incoming edge. Final states
have a double countour.
Definition 7 (Labelled transition system). A labelled transition system is a tuple
hS, s0, Sf , %i where: (i) S is a (possibly infinite) set of states; (ii) s0 2 S is the ini-
tial state; (iii) Sf ✓ S is the set of accepting states; (iv) % ✓ S ⇥⌃ ⇥ S is a⌃-labelled
transition relation. A run is a finite sequence of transitions leading from s0 to one of the
states in Sf in agreement with %. /
Due to our requirement that all final markings are deadlock markings, accepting states
Reasoning on Labelled Petri Nets and their Dynamics in a Stochastic Setting 1
s0 s1 s2
s3
s4
s5
⌧ ⌧ ⌧
⌧
⌧
⌧
open fin
acc
fin
rej
(a) DFAs A and Ā .
0, 0 1, 1 2, 1 3, 2 4, 3
1, 3
2, 3
3, 4
7, 5
open
1 ⌧
⇢i
⌧
⇢m fin
⇢f
acc
⇢a
⌧
⇢b
⌧
⇢i
⌧
⇢m
fin
⇢f
rej
⇢r
(b) Product system between Ā and RG(Norder).
0 1 2 3 4 5
open
fi
nalize accept
fi
nalize reject
X
τ τ τ τ τ τ
How to compute the
probability that the
speci
fi
cation is satis
fi
ed
by a net trace?
60. Attack strategy
Reasoning on states
and probabilities
Reasoning on tasks
and transitions
Markov chains
Qualitative model
checking
Elegant trick to deal with
silent transitions
1. Probability of a trace
2. Probability of satisfying a
qualitative property
3. Conformance to a probabilistic
Declare speci
fi
cation
0. Outcome probability
Probability of completing the
process in some
fi
nal states
61. 1. Infuse the cross-product with net probabilities
6 Sander J.J. Leemans et al.
s0
[q0]
s1
[q1]
s2
[q2]
s3
[q3]
s4
[q4]
s7
[q7]
s5
[q5]
s6
[q6]
s8
[q8]
1
open
⇢i = i
i+c
⌧
⇢m = m
m+f
⌧
⇢f = f
m+f
fin ⇢a
=
a
a+r
acc
⇢r = r
a+r
rej
⇢b = b
b+p+d
⌧
⇢c = c
i+c can
⇢d = d
b+p+d
⌧
⇢p = d
b+p+d
pay
1
del
Fig. 3: Stochastic reachability graph of the order-to-cash bounded stochastic PNP.
States are named. The initial state is shown with a small incoming edge. Final states
have a double countour.
Definition 7 (Labelled transition system). A labelled transition system is a tuple
hS, s0, Sf , %i where: (i) S is a (possibly infinite) set of states; (ii) s0 2 S is the ini-
tial state; (iii) Sf ✓ S is the set of accepting states; (iv) % ✓ S ⇥⌃ ⇥ S is a⌃-labelled
transition relation. A run is a finite sequence of transitions leading from s0 to one of the
Reasoning on Labelled Petri Nets and their Dynamics in a Stochastic Setting 13
s1 s2
s3
s4
⌧ ⌧
⌧
⌧
en fin
acc
fin
ej
0, 0 1, 1 2, 1 3, 2 4, 3
1, 3
2, 3
3, 4
7, 5
open
1 ⌧
⇢i
⌧
⇢m fin
⇢f
acc
⇢a
⌧
⇢b
⌧
⇢i
⌧
⇢m
fin
⇢f
rej
⇢r
62. 1. Infuse the cross-product with net probabilities
6 Sander J.J. Leemans et al.
s0
[q0]
s1
[q1]
s2
[q2]
s3
[q3]
s4
[q4]
s7
[q7]
s5
[q5]
s6
[q6]
s8
[q8]
1
open
⇢i = i
i+c
⌧
⇢m = m
m+f
⌧
⇢f = f
m+f
fin ⇢a
=
a
a+r
acc
⇢r = r
a+r
rej
⇢b = b
b+p+d
⌧
⇢c = c
i+c can
⇢d = d
b+p+d
⌧
⇢p = d
b+p+d
pay
1
del
Fig. 3: Stochastic reachability graph of the order-to-cash bounded stochastic PNP.
States are named. The initial state is shown with a small incoming edge. Final states
have a double countour.
Definition 7 (Labelled transition system). A labelled transition system is a tuple
hS, s0, Sf , %i where: (i) S is a (possibly infinite) set of states; (ii) s0 2 S is the ini-
tial state; (iii) Sf ✓ S is the set of accepting states; (iv) % ✓ S ⇥⌃ ⇥ S is a⌃-labelled
transition relation. A run is a finite sequence of transitions leading from s0 to one of the
Reasoning on Labelled Petri Nets and their Dynamics in a Stochastic Setting 13
s1 s2
s3
s4
⌧ ⌧
⌧
⌧
en fin
acc
fin
ej
0, 0 1, 1 2, 1 3, 2 4, 3
1, 3
2, 3
3, 4
7, 5
open
1 ⌧
⇢i
⌧
⇢m fin
⇢f
acc
⇢a
⌧
⇢b
⌧
⇢i
⌧
⇢m
fin
⇢f
rej
⇢r
63. 2. Focus on states
Reasoning on Labelled Petri Nets and their Dynamics in a Stochastic Setting 13
s1 s2
s3
s4
⌧ ⌧
⌧
⌧
en fin
acc
fin
ej
0, 0 1, 1 2, 1 3, 2 4, 3
1, 3
2, 3
3, 4
7, 5
open
1 ⌧
⇢i
⌧
⇢m fin
⇢f
acc
⇢a
⌧
⇢b
⌧
⇢i
⌧
⇢m
fin
⇢f
rej
⇢r
64. 2. Focus on states
Reasoning on Labelled Petri Nets and their Dynamics in a Stochastic Setting 13
s1 s2
s3
s4
⌧ ⌧
⌧
⌧
en fin
acc
fin
ej
0, 0 1, 1 2, 1 3, 2 4, 3
1, 3
2, 3
3, 4
7, 5
open
1 ⌧
⇢i
⌧
⇢m fin
⇢f
acc
⇢a
⌧
⇢b
⌧
⇢i
⌧
⇢m
fin
⇢f
rej
⇢r
An
“incomplete”
Markov chain
65. 3. Solve the “outcome probability problem”
Reasoning on Labelled Petri Nets and their Dynamics in a Stochastic Setting 13
s1 s2
s3
s4
⌧ ⌧
⌧
⌧
en fin
acc
fin
ej
0, 0 1, 1 2, 1 3, 2 4, 3
1, 3
2, 3
3, 4
7, 5
open
1 ⌧
⇢i
⌧
⇢m fin
⇢f
acc
⇢a
⌧
⇢b
⌧
⇢i
⌧
⇢m
fin
⇢f
rej
⇢r
An
“incomplete”
Markov chain
66. 3. Solve the “outcome probability problem”
Reasoning on Labelled Petri Nets and their Dynamics in a Stochastic Setting 13
s1 s2
s3
s4
⌧ ⌧
⌧
⌧
en fin
acc
fin
ej
0, 0 1, 1 2, 1 3, 2 4, 3
1, 3
2, 3
3, 4
7, 5
open
1 ⌧
⇢i
⌧
⇢m fin
⇢f
acc
⇢a
⌧
⇢b
⌧
⇢i
⌧
⇢m
fin
⇢f
rej
⇢r
An
“incomplete”
Markov chain
x00 =
ρiρf ρaρbρiρf ρr
1 − (ρiρm)2
68. Compare with distributions over traces
Induced distribution via qualitative veri
fi
cation
Set of traces
(behaviour)
69. Compare with distributions over traces
Induced distribution via qualitative veri
fi
cation
“Regular” scenarios
(Partition of behaviour)
70. Compare with distributions over traces
Induced distribution via qualitative veri
fi
cation
“Regular” scenarios
(Partition of behaviour)
Speci
fi
cation
distribution
71. Compare with distributions over traces
Induced distribution via qualitative veri
fi
cation
ProbDeclare
speci
fi
cation
“Regular” scenarios
(Partition of behaviour)
Speci
fi
cation
distribution
bounded
stochastic
Petri net
72. Compare with distributions over traces
Induced distribution via qualitative veri
fi
cation
ProbDeclare
speci
fi
cation
“Regular” scenarios
(Partition of behaviour)
Speci
fi
cation
distribution
Induced
distribution
bounded
stochastic
Petri net
Using our
approach
73. Compare with distributions over traces
Induced distribution via qualitative veri
fi
cation
ProbDeclare
speci
fi
cation
“Regular” scenarios
(Partition of behaviour)
Speci
fi
cation
distribution
Induced
distribution
(Earth mover’s) distance
bounded
stochastic
Petri net
74. Conclusions
Stochastic process mining calls for techniques to reason on stochastic
process models
Existing techniques do not readily apply due to the features of stochastic
process models we are interested in (silent transitions)
Analytic solution to key problems related to computing probabilities of
behaviour
• Combination and extension of techniques from Markov chain analysis and
qualitative model checking of quantitative systems
Just the beginning:
timed analysis, discovery, more integration of mining&reasoning, …