28.01.2015 Views

Semantics, Verification, and Implementation of Workflows ... - YAWL

Semantics, Verification, and Implementation of Workflows ... - YAWL

Semantics, Verification, and Implementation of Workflows ... - YAWL

SHOW MORE
SHOW LESS

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

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!