Semantics, Verification, and Implementation of Workflows ... - YAWL
Semantics, Verification, and Implementation of Workflows ... - YAWL
Semantics, Verification, and Implementation of Workflows ... - YAWL
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
Chapter 2. Formal foundations<br />
The reachability graph is a directed labelled graph where the elements <strong>of</strong> the<br />
reachability set form the nodes <strong>and</strong> the tuple consisting <strong>of</strong> a source marking that<br />
enables a transition, the transition <strong>and</strong> the target marking that is reached by<br />
firing the transition form the edges. The graph can be used to determine the<br />
possible states <strong>of</strong> a reset net from an initial marking.<br />
Definition 2.13 (Reachability graph) Let N = (P, T, F, R) be a reset net <strong>and</strong><br />
M ∈ IM(N). The directed labelled graph G = (V, E) with label set L = T is the<br />
reachability graph <strong>of</strong> the marked net (N, M) iff<br />
1. V = N[M〉 <strong>and</strong><br />
t<br />
2. for any transition t ∈ T <strong>and</strong> markings M 1 , M 2 ∈ IM(N) : M 1 → M 2 ⇔<br />
(M 1 , t, M 2 ) ∈ E.<br />
p1<br />
p2 t2<br />
t2<br />
t1<br />
t1 p4 p1 p2+p3<br />
t3<br />
p3+p4<br />
p4<br />
t3<br />
2p4<br />
p3<br />
t3<br />
Figure 2.3: A reset net with an initial marking <strong>and</strong> its reachability graph<br />
Example 4: In Figure 2.3, a reset net with an initial marking M = p1 is shown<br />
together with its reachability graph. The reachability set N[M〉 = {p1, p2 +<br />
p3, p3 + p4, p4, 2p4}. There are two occurrence sequences t1, t2, t3 <strong>and</strong> t1, t2.<br />
From marking p2 + p3, it is possible to fire either t2 or t3. If t2 is fired at p2 + p3,<br />
another marking p3 + p4 is reached, which still enables t3. Firing t3 at p3 + p4<br />
results in 2p4. Note that there are no tokens in p2 <strong>and</strong> therefore, the reset arc<br />
<strong>of</strong> p3 does not have an effect. On the other h<strong>and</strong>, if t3 is fired at p2 + p3, a<br />
marking p4 is reached as t3 will remove all tokens from p2. As a result, transition<br />
t2 cannot be enabled.<br />
Liveness, boundedness <strong>and</strong> safeness are defined as in previous work [Pet81,<br />
Mur89]. Liveness, boundedness <strong>and</strong> safeness can be determined from the reachability<br />
graph.<br />
Definition 2.14 (Liveness, boundedness, safeness [Pet81, Mur89]) A transition<br />
is live if it can be enabled from every reachable marking. A place is safe if<br />
it never contains more than one token at the same time. A place is k-bounded if<br />
it will never contain more than k tokens. A place is bounded if it is k-bounded<br />
for some k.<br />
If all places in a reset net are bounded, the reset net is also bounded <strong>and</strong><br />
hence, it is possible to generate a finite reachability set. If a place is unbounded,<br />
the reachability set contains an infinite number <strong>of</strong> states (an infinite state space).<br />
In such cases, reachability <strong>of</strong> a marking cannot be determined but coverability<br />
can be determined. Coverability is a relaxed notion that can h<strong>and</strong>le unbounded<br />
behaviour. A marking M 2 is said to be coverable from another marking M 1 in a<br />
PhD Thesis – c○ 2006 M.T.K Wynn – Page 15