Complexity of the Soundness Problem of Bounded Workflow Nets
Transcript of Complexity of the Soundness Problem of Bounded Workflow Nets
![Page 1: Complexity of the Soundness Problem of Bounded Workflow Nets](https://reader031.fdocuments.in/reader031/viewer/2022012411/616a683d11a7b741a3522907/html5/thumbnails/1.jpg)
GuanJun LIU, Jun SUN, Yang LIU, JinSong DONG
Singapore University of Technology and Design
National University of Singapore
Complexity of the Soundness Problem of Bounded Workflow Nets
2012/7/23 1
![Page 2: Complexity of the Soundness Problem of Bounded Workflow Nets](https://reader031.fdocuments.in/reader031/viewer/2022012411/616a683d11a7b741a3522907/html5/thumbnails/2.jpg)
Outline
Introduction to WF-nets and WF-nets with
reset arcs (reWF-nets)
NP-hardness of the soundness problem of
WF-nets
PSPACE-hardness of the soundness
problem of reWF-nets
2012/7/23 2
![Page 3: Complexity of the Soundness Problem of Bounded Workflow Nets](https://reader031.fdocuments.in/reader031/viewer/2022012411/616a683d11a7b741a3522907/html5/thumbnails/3.jpg)
Outline
Introduction to WF-nets and WF-nets with
reset arcs (reWF-nets)
NP-hardness of the soundness problem of
WF-nets
PSPACE-hardness of the soundness
problem of reWF-nets
2012/7/23 3
![Page 4: Complexity of the Soundness Problem of Bounded Workflow Nets](https://reader031.fdocuments.in/reader031/viewer/2022012411/616a683d11a7b741a3522907/html5/thumbnails/4.jpg)
Introduction to WF-nets
2012/7/23 4
Definition (WF-nets [Aalst et al]): A net N
= (P, T, F) is a workflow net (WF-net) if:
1. N has two special places i ∈ P (source
place) and o ∈ P (sink place) such that •i =
∅ and o• = ∅; and
2. NE = (P, T ∪ {b}, F ∪ {(b, i), (o, b)}) is
strongly connected.
Definition (Soundness of WF-nets [Aalst et
al]): A WF-net N = (P, T, F) is sound if:
1. ∀M ∈ R(N, M0): Md ∈ R(N, M); and
2. ∀t ∈ T, ∃M ∈ R(N, M0): M[t.
where M0 = i and Md = o.
![Page 5: Complexity of the Soundness Problem of Bounded Workflow Nets](https://reader031.fdocuments.in/reader031/viewer/2022012411/616a683d11a7b741a3522907/html5/thumbnails/5.jpg)
Introduction to WF-nets
2012/7/23 5
Theorem ([Aalst et al]): Let N = (P, T, F) be a WF-net, NE = (P, T∪{b},
F∪{(b, i), (o, b)}), and M0 = i. Then, N is sound if and only if (NE, M0) is live
and bounded.
Corollary: Let N = (P, T, F) be a WF-net, and (NE, M0) = (P, T∪{b}, F∪{(b,
i), (o, b)}, i) be bounded. Then, N is sound if and only if (NE, M0) is live.
sound live
&
bounded
![Page 6: Complexity of the Soundness Problem of Bounded Workflow Nets](https://reader031.fdocuments.in/reader031/viewer/2022012411/616a683d11a7b741a3522907/html5/thumbnails/6.jpg)
Introduction to reWF-nets
2012/7/23 6
Definition (reWF-nets [Aalst et al]): A 4-tuple N
= (P, T, F, R) is a workflow net with reset arcs
(reWF-net) if:
1. (P, T, F) is a WF-net; and
2. R ⊆ [P \ {o}× T] is the set of reset arcs.
Definition: Transition t is enabled at M if ∀ p ∈
•t: M(p) > 0. Firing an enabled transition t
produces a new marking M such that M(p) = 0
if p ∈◦t; M(p) = M(p) − 1 if p ∈◦t ∧ p ∈ •t \ t•;
M(p) = M(p) + 1 if p ∈◦t ∧ p ∈ t•\•t; and M(p) =
M(p) otherwise.
![Page 7: Complexity of the Soundness Problem of Bounded Workflow Nets](https://reader031.fdocuments.in/reader031/viewer/2022012411/616a683d11a7b741a3522907/html5/thumbnails/7.jpg)
Introduction to reWF-nets
2012/7/23 7
Theorem ([Aalst et al]): The soundness problem of reWF-nets is
undecidable.
Definition (Soundness of reWF-nets [Aalst et al]): An reWF-net N = (P, T, F,
R) is sound if:
1. ∀M ∈ R(N, M0): Md ∈ R(N, M); and
2. ∀t ∈ T, ∃M ∈ R(N, M0): M[t.
where M0 = i and Md = o.
If the trivial extension of an reWF-net, (NE, M0) = (P, T∪{b}, F∪{(b, i), (o,
b)}, R, i), is bounded, then its soundness problem is decidable by its
reachability graph.
![Page 8: Complexity of the Soundness Problem of Bounded Workflow Nets](https://reader031.fdocuments.in/reader031/viewer/2022012411/616a683d11a7b741a3522907/html5/thumbnails/8.jpg)
Introduction to reWF-nets
2012/7/23 8
Theorem : Let N = (P, T, F, R) be an reWF-net, and (NE, M0) = (P, T∪{b},
F∪{(b, i), (o, b)}, R, i) be bounded. Then, N is sound if and only if (NE, M0)
is live. (note: “only if” is proven by [Aalst])
sound live
&
bounded
![Page 9: Complexity of the Soundness Problem of Bounded Workflow Nets](https://reader031.fdocuments.in/reader031/viewer/2022012411/616a683d11a7b741a3522907/html5/thumbnails/9.jpg)
Outline
Introduction to WF-nets and WF-nets with
reset arcs (reWF-nets)
NP-hardness of the soundness problem of
WF-nets
PSPACE-hardness of the soundness
problem of reWF-nets
2012/7/23 9
![Page 10: Complexity of the Soundness Problem of Bounded Workflow Nets](https://reader031.fdocuments.in/reader031/viewer/2022012411/616a683d11a7b741a3522907/html5/thumbnails/10.jpg)
NP-hardness of soundness of WF-nets
2012/7/23 10
For each expression of disjunctive normal form (DNF) in which each term
has three literals,
H = D1∨D2∨…∨Dm = (l1,1∧l1,2∧l1,3)∨(l2,1∧l2,2∧l2,3)∨ …∨(lm,1∧lm,2∧lm,3)
we can construct a WF-nets (in polynomial time) by which we can compute
if the value of the DNF expression is true.
![Page 11: Complexity of the Soundness Problem of Bounded Workflow Nets](https://reader031.fdocuments.in/reader031/viewer/2022012411/616a683d11a7b741a3522907/html5/thumbnails/11.jpg)
2012/7/23 11
H = (x3∧x4∧x5) ∨ (x1∧x2∧x3) ∨ (x1∧x2∧x4) ∨ (x3∧x4∧x5)
NP-hardness of soundness of WF-nets
Step1: assign values
to variables.
ci ~ xi
ci ~ xi
Step2: decide if the
assignment make the
DNF expression true.
If it is true, there is
(only) one transition
di that can be fired.
di ~ Di
Step3: remove the
remainder tokens.
![Page 12: Complexity of the Soundness Problem of Bounded Workflow Nets](https://reader031.fdocuments.in/reader031/viewer/2022012411/616a683d11a7b741a3522907/html5/thumbnails/12.jpg)
NP-hardness of soundness of WF-nets
2012/7/23 12
Lemma: The trivial extension of the constructed WF-net is live if and
only if H = 1 for each assignment of variables.
Theorem: The problem of soundness of WF-nets is co-NP-hard.
Lemma: The trivial extension of the constructed WF-net is bounded at
the initial marking M0 = i.
![Page 13: Complexity of the Soundness Problem of Bounded Workflow Nets](https://reader031.fdocuments.in/reader031/viewer/2022012411/616a683d11a7b741a3522907/html5/thumbnails/13.jpg)
Outline
Introduction to WF-nets and WF-nets with
reset (reWF-nets)
NP-hardness of the soundness problem of
WF-nets
PSPACE-hardness of the soundness
problem of reWF-nets
2012/7/23 13
![Page 14: Complexity of the Soundness Problem of Bounded Workflow Nets](https://reader031.fdocuments.in/reader031/viewer/2022012411/616a683d11a7b741a3522907/html5/thumbnails/14.jpg)
2012/7/23 14
PSPACE-hardness of soundness of reWF-nets
For each Linear Bounded Automata (LBA) with an input string, we can
always construct an reWF-net (in polynomial time) by which we can decide
whether the LBA accepts this input string.
Ω = (Q, Γ, Σ, Δ, q0, qf , #, $)
– Q = {q0, q1, …, qm, qf} set of states, initial state q0, final state qf
– Γ = {a1,…, an} tape alphabet
– Σ ⊆ Γ input alphabet
– Δ ⊆ Q×Γ×{R, L}×Q×Γ set of transitions
– # left bound symbol
– $ right bound symbol
# a a b b a b a a a b b b $
controller
![Page 15: Complexity of the Soundness Problem of Bounded Workflow Nets](https://reader031.fdocuments.in/reader031/viewer/2022012411/616a683d11a7b741a3522907/html5/thumbnails/15.jpg)
2012/7/23 15
PSPACE-hardness of soundness of reWF-nets
Step1: use places to represent the tape information, machine state, and
read/write head position.
Let Q={q0, q1, …, qm, qf}, m ≥ 0, Γ={a1, a2, …, an}, n > 0, |S| = l, and cells
storing #S$ be labelled 0, 1, …, l, and l+1, respectively.
# s1 sl $
0 1 2 l l+1
A0,# Al+1,$
A1,1
A1,n
Al,1
Al,n Ai,j
Bi,j
B0,0 Bl+1,0
B0,m
B1,0
B1,m
Bl,0
Bl,m Bl+1,m
p0
A token in Bi,j
means that the
read/write head is
scanning cell i
and the machine
is at state qj.
A token in Ai,j
means that
symbol aj is in
cell i. A token in p0
means that the
machine is at the
final state qf.
![Page 16: Complexity of the Soundness Problem of Bounded Workflow Nets](https://reader031.fdocuments.in/reader031/viewer/2022012411/616a683d11a7b741a3522907/html5/thumbnails/16.jpg)
2012/7/23 16
PSPACE-hardness of soundness of reWF-nets
Ω = (Q, Γ, Σ, Δ, q0, qf , #, $)
– Q = {q0, q1, q2, q3, qf}
– Γ = {a, b, X}
– Σ = {a, b}
– Δ = {(q0, #, R, q1, #), (q1, $, L, qf , $), (q1, X, R, q1, X), (q1, a, R, q2, X),
(q2, a, R, q2, a), (q2, X, R, q2, X), (q2, b, L, q3, X), (q3, a, L, q3, a),
(q3, X, L, q3, X), (q3, #, R, q1, #)}
# $
Ω
For example: the above LBA with the empty string as its input.
Note: the LBA produce the language {ai1bi1ai2bi2…aimbim | i1, i2,…, im,m∈N}
![Page 17: Complexity of the Soundness Problem of Bounded Workflow Nets](https://reader031.fdocuments.in/reader031/viewer/2022012411/616a683d11a7b741a3522907/html5/thumbnails/17.jpg)
2012/7/23 17
PSPACE-hardness of soundness of reWF-nets
Ω = (Q, Γ, Σ, Δ, q0, qf , #, $)
– Q = {q0, q1, q2, q3, qf}
– Γ = {a, b, X}
– Σ = {a, b}
– Δ = {(q0, #, R, q1, #), (q1, $, L, qf , $), (q1, X, R, q1, X), (q1, a, R, q2, X),
(q2, a, R, q2, a), (q2, X, R, q2, X), (q2, b, L, q3, X), (q3, a, L, q3, a),
(q3, X, L, q3, X), (q3, #, R, q1, #)}
Step1: use places to
represent tape information,
machine state, & read/write
head position.
![Page 18: Complexity of the Soundness Problem of Bounded Workflow Nets](https://reader031.fdocuments.in/reader031/viewer/2022012411/616a683d11a7b741a3522907/html5/thumbnails/18.jpg)
2012/7/23 18
PSPACE-hardness of soundness of reWF-nets
Ω = (Q, Γ, Σ, Δ, q0, qf , #, $)
– Q = {q0, q1, q2, q3, qf}
– Γ = {a, b, X}
– Σ = {a, b}
– Δ = {(q0, #, R, q1, #), (q1, $, L, qf , $), (q1, X, R, q1, X), (q1, a, R, q2, X),
(q2, a, R, q2, a), (q2, X, R, q2, X), (q2, b, L, q3, X), (q3, a, L, q3, a),
(q3, X, L, q3, X), (q3, #, R, q1, #)}
Step2: use a net transition to
produce the machine’s initial
configuration.
![Page 19: Complexity of the Soundness Problem of Bounded Workflow Nets](https://reader031.fdocuments.in/reader031/viewer/2022012411/616a683d11a7b741a3522907/html5/thumbnails/19.jpg)
2012/7/23 19
PSPACE-hardness of soundness of reWF-nets
Ω = (Q, Γ, Σ, Δ, q0, qf , #, $)
– Q = {q0, q1, q2, q3, qf}
– Γ = {a, b, X}
– Σ = {a, b}
– Δ = {(q0, #, R, q1, #), (q1, $, L, qf , $), (q1, X, R, q1, X), (q1, a, R, q2, X),
(q2, a, R, q2, a), (q2, X, R, q2, X), (q2, b, L, q3, X), (q3, a, L, q3, a),
(q3, X, L, q3, X), (q3, #, R, q1, #)}
Step3: use net transitions to
model machine transitions.
![Page 20: Complexity of the Soundness Problem of Bounded Workflow Nets](https://reader031.fdocuments.in/reader031/viewer/2022012411/616a683d11a7b741a3522907/html5/thumbnails/20.jpg)
2012/7/23 20
PSPACE-hardness of soundness of reWF-nets
Ω = (Q, Γ, Σ, Δ, q0, qf , #, $)
– Q = {q0, q1, q2, q3, qf}
– Γ = {a, b, X}
– Σ = {a, b}
– Δ = {(q0, #, R, q1, #), (q1, $, L, qf , $), (q1, X, R, q1, X), (q1, a, R, q2, X),
(q2, a, R, q2, a), (q2, X, R, q2, X), (q2, b, L, q3, X), (q3, a, L, q3, a),
(q3, X, L, q3, X), (q3, #, R, q1, #)}
Step4: use a net transition,
associating with reset arcs,
to remove remainder tokens.
![Page 21: Complexity of the Soundness Problem of Bounded Workflow Nets](https://reader031.fdocuments.in/reader031/viewer/2022012411/616a683d11a7b741a3522907/html5/thumbnails/21.jpg)
2012/7/23 21
PSPACE-hardness of soundness of reWF-nets
Ω = (Q, Γ, Σ, Δ, q0, qf , #, $)
– Q = {q0, q1, q2, q3, qf}
– Γ = {a, b, X}
– Σ = {a, b}
– Δ = {(q0, #, R, q1, #), (q1, $, L, qf , $), (q1, X, R, q1, X), (q1, a, R, q2, X),
(q2, a, R, q2, a), (q2, X, R, q2, X), (q2, b, L, q3, X), (q3, a, L, q3, a),
(q3, X, L, q3, X), (q3, #, R, q1, #)}
Step5: use a net transition to
input tokens in order to make
each net transition have a
friable right.
![Page 22: Complexity of the Soundness Problem of Bounded Workflow Nets](https://reader031.fdocuments.in/reader031/viewer/2022012411/616a683d11a7b741a3522907/html5/thumbnails/22.jpg)
2012/7/23 22
PSPACE-hardness of soundness of reWF-nets
Ω = (Q, Γ, Σ, Δ, q0, qf , #, $)
– Q = {q0, q1, q2, q3, qf}
– Γ = {a, b, X}
– Σ = {a, b}
– Δ = {(q0, #, R, q1, #), (q1, $, L, qf , $), (q1, X, R, q1, X), (q1, a, R, q2, X),
(q2, a, R, q2, a), (q2, X, R, q2, X), (q2, b, L, q3, X), (q3, a, L, q3, a),
(q3, X, L, q3, X), (q3, #, R, q1, #)}
Step6: use a net transition to
connect with each place by a
self-loop in order to make the
net be strongly connected.
![Page 23: Complexity of the Soundness Problem of Bounded Workflow Nets](https://reader031.fdocuments.in/reader031/viewer/2022012411/616a683d11a7b741a3522907/html5/thumbnails/23.jpg)
2012/7/23 23
PSPACE-hardness of soundness of reWF-nets
Ω = (Q, Γ, Σ, Δ, q0, qf , #, $)
– Q = {q0, q1, q2, q3, qf}
– Γ = {a, b, X}
– Σ = {a, b}
– Δ = {(q0, #, R, q1, #), (q1, $, L, qf , $), (q1, X, R, q1, X), (q1, a, R, q2, X),
(q2, a, R, q2, a), (q2, X, R, q2, X), (q2, b, L, q3, X), (q3, a, L, q3, a),
(q3, X, L, q3, X), (q3, #, R, q1, #)}
Step7: finally, use a net
transition to finish the whole
computation.
![Page 24: Complexity of the Soundness Problem of Bounded Workflow Nets](https://reader031.fdocuments.in/reader031/viewer/2022012411/616a683d11a7b741a3522907/html5/thumbnails/24.jpg)
2012/7/23 24
PSPACE-hardness of soundness of reWF-nets
Lemma: The LBA accepts the input string iff the trivial extention of the
constructed reWF-net is live.
Lemma: The trivial extention of the constructed reWF-net is bounded.
Theorem: The soundness problem of reWF-nets is PSPACE-hard.
![Page 25: Complexity of the Soundness Problem of Bounded Workflow Nets](https://reader031.fdocuments.in/reader031/viewer/2022012411/616a683d11a7b741a3522907/html5/thumbnails/25.jpg)
Thanks!
2012/7/23 25