SlideShare a Scribd company logo
BPM 2022, Münster
Reasoning on
Labelled Petri Nets
and Their Dynamics 

in a Stochastic Setting
Sander Leemans, Fabrizio Maggi, Marco Montali
analytics
analytics
Stochastic process mining
Revived interest in stochastic processes
Σ* Σ*
trace process
Stochastic process mining
Revived interest in stochastic processes
Σ* Σ*
trace process
Σ* Σ*
uncertain

trace
stochastic

process
Stochastic process mining
Revived interest in stochastic processes
Σ*
trace process
Σ*
stochastic conformance checking, probabilistic trace alignment, probabilistic declarative process mining
uncertain

trace
stochastic

process
Σ* Σ*
Σ*
Σ* Σ*
stochastic conformance checking, probabilistic trace alignment, probabilistic declarative process mining
uncertain

trace
Σ*
Our focus
stochastic

process
Process control-flow with Petri nets
Characteristics
review claim
claim


received
check


claim
info


complete?
obtain
missing info
check


claim
yes


no


…
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
…
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
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
𝗂
𝗇
𝗌
𝖾
𝗋
𝗍
𝗂
𝗍
𝖾
𝗆
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
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
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
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]
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]
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]
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]
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
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
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
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
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
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
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)
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?
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)
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
Attack strategy
Reasoning on states
and probabilities
Reasoning on tasks
and transitions
Attack strategy
Reasoning on states
and probabilities
Reasoning on tasks
and transitions
Markov chains
Qualitative model
checking
Elegant trick to deal with


silent transitions
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
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
Recall the good-old days of studying?
Recall the good-old days of studying?
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.
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.
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.
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
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
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
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
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
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
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
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]
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
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
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)
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)
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
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)
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)
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
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
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
???
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
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
τ τ τ τ τ τ
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
τ τ τ τ τ τ
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?
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
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
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
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
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
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
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
Applications in stochastic process mining
Probabilistic trace alignment
Compare with distributions over traces
Induced distribution via qualitative veri
fi
cation
Set of traces


(behaviour)
Compare with distributions over traces
Induced distribution via qualitative veri
fi
cation
“Regular” scenarios


(Partition of behaviour)
Compare with distributions over traces
Induced distribution via qualitative veri
fi
cation
“Regular” scenarios


(Partition of behaviour)
Speci
fi
cation


distribution
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
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
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
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, …
Thank you!
montali@inf.unibz.it

More Related Content

PPTX
all about petri netis model and simulation
PDF
Cb32492496
PDF
Cb32492496
PPT
INTRODUCTION TO PETRINETS, PROCESS INVOVLED
PDF
Petri Net.pdf
PPT
petri-nets: definition and its application
PPTX
Petri nets by Barkatllah
PDF
Modeling and Simulation lecture1.pdf
all about petri netis model and simulation
Cb32492496
Cb32492496
INTRODUCTION TO PETRINETS, PROCESS INVOVLED
Petri Net.pdf
petri-nets: definition and its application
Petri nets by Barkatllah
Modeling and Simulation lecture1.pdf

Similar to Reasoning on Labelled Petri Nets and Their Dynamics in a Stochastic Setting (20)

PPT
Petri Nets financial problems solution with
PPT
petri.ppt
PDF
CS-438 WK13-15LEC25-30 Computer System Modeling.pdf
PPT
petri.pptSDGHFJKLDTSRDTYFKHGDSDHFJKJHDSAFGHKFDSASDFJGHKHJG
PDF
13 Petri Nets (22).pdf
PPTX
Everything You Always Wanted To Know About Petri Nets, But Were Afraid To Ask
PDF
Soundness of Data-Aware Processes with Arithmetic Conditions
PDF
A Software Tool for Live-Lock Avoidance in Systems Modelled Using a Class of ...
PDF
A Software Tool for Live-Lock Avoidance in Systems Modelled Using a Class of ...
PPTX
Petri Nets: Properties, Analysis and Applications
PDF
STATE SPACE GENERATION FRAMEWORK BASED ON BINARY DECISION DIAGRAM FOR DISTRIB...
PDF
STATE SPACE GENERATION FRAMEWORK BASED ON BINARY DECISION DIAGRAM FOR DISTRIB...
PDF
PROTOTYPE APPLICATION IN ANDROID PLATFORM FOR SYSTEM ADMINISTRATION OF HPC ...
PDF
A C LOUD -B ASED P ROTOTYPE I MPLEMENTATION OF A D ISEASE O UTBREAK N O...
PDF
A C OMPREHENSIVE S URVEY O N P ERFORMANCE A NALYSIS O F C HAOTIC C OLOU...
PDF
A S OFTWARE T OOL FOR L IVE - LOCK A VOIDANCE IN S YSTEMS M ODELLED USIN...
PDF
C OMPREHENSIVE S URVEY O N P ERFORMANCE A NALYSIS O F C HAOTIC C OLOUR...
PDF
A SOFTWARE TOOL FOR LIVE-LOCK AVOIDANCE IN SYSTEMS MODELLED USING A CLASS OF ...
PDF
Simulating Turing Machines Using Colored Petri Nets with Priority Transitions
PDF
AMS Node Meetup February presentation Jasper Spoel
Petri Nets financial problems solution with
petri.ppt
CS-438 WK13-15LEC25-30 Computer System Modeling.pdf
petri.pptSDGHFJKLDTSRDTYFKHGDSDHFJKJHDSAFGHKFDSASDFJGHKHJG
13 Petri Nets (22).pdf
Everything You Always Wanted To Know About Petri Nets, But Were Afraid To Ask
Soundness of Data-Aware Processes with Arithmetic Conditions
A Software Tool for Live-Lock Avoidance in Systems Modelled Using a Class of ...
A Software Tool for Live-Lock Avoidance in Systems Modelled Using a Class of ...
Petri Nets: Properties, Analysis and Applications
STATE SPACE GENERATION FRAMEWORK BASED ON BINARY DECISION DIAGRAM FOR DISTRIB...
STATE SPACE GENERATION FRAMEWORK BASED ON BINARY DECISION DIAGRAM FOR DISTRIB...
PROTOTYPE APPLICATION IN ANDROID PLATFORM FOR SYSTEM ADMINISTRATION OF HPC ...
A C LOUD -B ASED P ROTOTYPE I MPLEMENTATION OF A D ISEASE O UTBREAK N O...
A C OMPREHENSIVE S URVEY O N P ERFORMANCE A NALYSIS O F C HAOTIC C OLOU...
A S OFTWARE T OOL FOR L IVE - LOCK A VOIDANCE IN S YSTEMS M ODELLED USIN...
C OMPREHENSIVE S URVEY O N P ERFORMANCE A NALYSIS O F C HAOTIC C OLOUR...
A SOFTWARE TOOL FOR LIVE-LOCK AVOIDANCE IN SYSTEMS MODELLED USING A CLASS OF ...
Simulating Turing Machines Using Colored Petri Nets with Priority Transitions
AMS Node Meetup February presentation Jasper Spoel
Ad

More from Faculty of Computer Science - Free University of Bozen-Bolzano (20)

PDF
From Case-Isolated to Object-Centric Processes - A Tale of two Models
PDF
Constraints for Process Framing in Augmented BPM
PDF
PDF
Process Reasoning and Mining with Uncertainty
PDF
From Case-Isolated to Object-Centric Processes
PDF
Modeling and Reasoning over Declarative Data-Aware Processes
PDF
Strategy Synthesis for Data-Aware Dynamic Systems with Multiple Actors
PDF
Extending Temporal Business Constraints with Uncertainty
PDF
Extending Temporal Business Constraints with Uncertainty
PDF
Modeling and Reasoning over Declarative Data-Aware Processes with Object-Cent...
PDF
Enriching Data Models with Behavioral Constraints
PDF
Representing and querying norm states using temporal ontology-based data access
PDF
Compliance monitoring of multi-perspective declarative process models
PDF
Processes and organizations - a look behind the paper wall
PDF
Formal modeling and SMT-based parameterized verification of Data-Aware BPMN
PDF
Modeling and reasoning over declarative data-aware processes with object-cent...
From Case-Isolated to Object-Centric Processes - A Tale of two Models
Constraints for Process Framing in Augmented BPM
Process Reasoning and Mining with Uncertainty
From Case-Isolated to Object-Centric Processes
Modeling and Reasoning over Declarative Data-Aware Processes
Strategy Synthesis for Data-Aware Dynamic Systems with Multiple Actors
Extending Temporal Business Constraints with Uncertainty
Extending Temporal Business Constraints with Uncertainty
Modeling and Reasoning over Declarative Data-Aware Processes with Object-Cent...
Enriching Data Models with Behavioral Constraints
Representing and querying norm states using temporal ontology-based data access
Compliance monitoring of multi-perspective declarative process models
Processes and organizations - a look behind the paper wall
Formal modeling and SMT-based parameterized verification of Data-Aware BPMN
Modeling and reasoning over declarative data-aware processes with object-cent...
Ad

Recently uploaded (20)

PDF
Warm, water-depleted rocky exoplanets with surfaceionic liquids: A proposed c...
PDF
Looking into the jet cone of the neutrino-associated very high-energy blazar ...
PPTX
Microbiology with diagram medical studies .pptx
PDF
Unveiling a 36 billion solar mass black hole at the centre of the Cosmic Hors...
DOCX
Q1_LE_Mathematics 8_Lesson 5_Week 5.docx
PPTX
ognitive-behavioral therapy, mindfulness-based approaches, coping skills trai...
PPTX
Protein & Amino Acid Structures Levels of protein structure (primary, seconda...
PPTX
TOTAL hIP ARTHROPLASTY Presentation.pptx
PDF
. Radiology Case Scenariosssssssssssssss
PPTX
2. Earth - The Living Planet earth and life
PPTX
C1 cut-Methane and it's Derivatives.pptx
PDF
Cosmic Outliers: Low-spin Halos Explain the Abundance, Compactness, and Redsh...
PPT
protein biochemistry.ppt for university classes
PPTX
Introduction to Cardiovascular system_structure and functions-1
PPTX
cpcsea ppt.pptxssssssssssssssjjdjdndndddd
PPTX
Fluid dynamics vivavoce presentation of prakash
PPTX
Classification Systems_TAXONOMY_SCIENCE8.pptx
PPTX
Pharmacology of Autonomic nervous system
PPT
6.1 High Risk New Born. Padetric health ppt
PPTX
Overview of calcium in human muscles.pptx
Warm, water-depleted rocky exoplanets with surfaceionic liquids: A proposed c...
Looking into the jet cone of the neutrino-associated very high-energy blazar ...
Microbiology with diagram medical studies .pptx
Unveiling a 36 billion solar mass black hole at the centre of the Cosmic Hors...
Q1_LE_Mathematics 8_Lesson 5_Week 5.docx
ognitive-behavioral therapy, mindfulness-based approaches, coping skills trai...
Protein & Amino Acid Structures Levels of protein structure (primary, seconda...
TOTAL hIP ARTHROPLASTY Presentation.pptx
. Radiology Case Scenariosssssssssssssss
2. Earth - The Living Planet earth and life
C1 cut-Methane and it's Derivatives.pptx
Cosmic Outliers: Low-spin Halos Explain the Abundance, Compactness, and Redsh...
protein biochemistry.ppt for university classes
Introduction to Cardiovascular system_structure and functions-1
cpcsea ppt.pptxssssssssssssssjjdjdndndddd
Fluid dynamics vivavoce presentation of prakash
Classification Systems_TAXONOMY_SCIENCE8.pptx
Pharmacology of Autonomic nervous system
6.1 High Risk New Born. Padetric health ppt
Overview of calcium in human muscles.pptx

Reasoning on Labelled Petri Nets and Their Dynamics in a Stochastic Setting

  • 1. BPM 2022, Münster Reasoning on Labelled Petri Nets and Their Dynamics 
 in a Stochastic Setting Sander Leemans, Fabrizio Maggi, Marco Montali
  • 4. Stochastic process mining Revived interest in stochastic processes Σ* Σ* trace process
  • 5. Stochastic process mining Revived interest in stochastic processes Σ* Σ* trace process Σ* Σ* uncertain trace stochastic process
  • 6. Stochastic process mining Revived interest in stochastic processes Σ* trace process Σ* stochastic conformance checking, probabilistic trace alignment, probabilistic declarative process mining uncertain trace stochastic process Σ* Σ*
  • 7. Σ* Σ* Σ* stochastic conformance checking, probabilistic trace alignment, probabilistic declarative process mining uncertain trace Σ* Our focus stochastic process
  • 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
  • 29. Attack strategy Reasoning on states and probabilities Reasoning on tasks and transitions
  • 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
  • 33. Recall the good-old days of studying?
  • 34. Recall the good-old days of studying?
  • 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
  • 67. Applications in stochastic process mining Probabilistic trace alignment
  • 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, …