**3. Net system**

Definition 3

A 6-tuple Σ= (S,T;F,K,W,M0) is a net system if (S,T;F) is a directed net and:

K: S→{1,2,⋯}∪{∞} ∧ W: F→{1,2,⋯} ∧ M0: → {0,1,2,⋯} such that ∀s∈ S: M0 (s) ≤ K(s), where K,W,M0 are respectively the capacity function, the weight function and the initial marking. ◆

A mapping M : → {0,1,2,⋯} is a marking if it satisfies

$$\forall \mathbf{s} \in \mathbb{S} \colon \mathbb{M}(\mathbf{s}) \le \mathbf{K}(\mathbf{s}).$$

Conventionally, elements in S are called places and elements in T are transitions. A place is capable to hold certain kind of resources, with an allowance given by K. Infinite capacity does not mean infinite space for resources. It is just an indication that the capacity of that place is not a factor for a transition to become enabled (see definition below). A transition resembles a change of resource quantities (consumed or produced) and a change in kind. The precise change is given by transition rules. In the rest of this chapter, Σ is always assumed finite, i.e. Σ has a finite number of places and transitions.

Definition 4


It is easy to prove that the successor M' is indeed a marking.

A marking represents a resource distribution on S. A transition firing causes the flow of resources along arcs in F, and thus F is called the flow relation of ∑.

It is easy to see that M[t> is determined by ﹒ t ∪ t﹒ , the extension of t, and the change from M to M' is confined to ﹒t ∪ t﹒. This is the principle of local determinism. A marking is a global state, but the transition rules refer to only the extension of a single transition, not the complete marking. Many system models take global states as a means of system control. But this is not always implementable, since a global state is not always instantly known. It takes time to know the current global state, and this delay may be significant to an effective real time control.

Figure 2 illustrates how to represent a net system graphically. The black dot inside place s is a token, denoting M0(s) = 1. Empty places have no token (resource). Conventionally, M(s)=0, W(x,y) =1 and K(s) = ∞ are shown by default.

**Figure 2.** A Net System

Definition 5

110 Petri Nets – Manufacturing and Computer Science

on a net leads to Enlogy(GNT).

**3. Net system** 

Definition 3

Definition 4

M'

This fact is denoted by M[t>.

+W(t,s)-W(s,t) for s in ﹒

to M' is confined to ﹒

(s)= M(s) – W(s,t) for s in ﹒

It is easy to see that M[t> is determined by ﹒

The S-completion operation on a net leads to Synchrony while the T-completion operation

Synchrony will be briefly introduced in Section 3, since it provides guidance to workflow modelling. It is impossible in this chapter to go any further on SNT and GNT. The point is,

K: S→{1,2,⋯}∪{∞} ∧ W: F→{1,2,⋯} ∧ M0: → {0,1,2,⋯} such that ∀s∈ S: M0 (s) ≤ K(s), where K,W,M0 are respectively the capacity function, the weight function and the initial marking. ◆

 ∀s∈ S: M(s) ≤ K(s). Conventionally, elements in S are called places and elements in T are transitions. A place is capable to hold certain kind of resources, with an allowance given by K. Infinite capacity does not mean infinite space for resources. It is just an indication that the capacity of that place is not a factor for a transition to become enabled (see definition below). A transition resembles a change of resource quantities (consumed or produced) and a change in kind. The precise change is given by transition rules. In the rest of this chapter, Σ is always

A marking represents a resource distribution on S. A transition firing causes the flow of

t ∪ t﹒

state, but the transition rules refer to only the extension of a single transition, not the

: M(s)+W(t,s)≤K(s)**.** 

t, and M'(s) = M(s)

.◆

given by

(s) = M(s) otherwise. This fact is denoted by M[t>M'


, the extension of t, and the change from M

, M'(s) = M(s)+W(t,s) for s in t﹒

t ∪ t﹒. This is the principle of local determinism. A marking is a global

A directed net implies a unique undirected net that leads to Net Topology (GNT).

successful applications of Petri nets rely on both SNT and GNT, not only SNT.

A 6-tuple Σ= (S,T;F,K,W,M0) is a net system if (S,T;F) is a directed net and:

assumed finite, i.e. Σ has a finite number of places and transitions.

2. Transition t may fire, if M[t>, to yield a successor marking M'

resources along arcs in F, and thus F is called the flow relation of ∑.

t∩t ﹒ , and M'

It is easy to prove that the successor M' is indeed a marking.

1. Transition t is enabled by marking M if ∀s ∈﹒t: W(s,t)≤M(s)∧∀s ∈ t﹒

t - t﹒

A mapping M : → {0,1,2,⋯} is a marking if it satisfies

A special class of directed nets is the occurrence nets that lead to Concurrency (GNT).

Let Σ=(S,T;F,K,W,M0) be a net system, M is a marking and t1, t2 are transitions.


Two concurrently enabled transitions can fire either concurrently or one after another.

Theorem 1

The marking reached by concurrently fired transitions can also be reached by the transitions fired one after another.◆

This theorem guarantees that the next definition includes markings reached by concurrent transition firings.

Definition 6

The set of markings reachable from M0 by consecutive transition firings is usually denoted by [M0>.◆

#### 112 Petri Nets – Manufacturing and Computer Science

The set [M0> may be infinite for a finite system. The algorithm for computing [M0> produces a finite tree, denoted by T(Σ), and this tree can be re-structured to become a graph, denoted by G(Σ). G(Σ) will be used for the computing of synchronous distances later on. All these concepts and algorithms are in the category of techniques, we will go no further here.

Workflow Modelling Based on Synchrony 113

artificial systems. We have to redefine this concept of synchronous distance to serve our

A net system as defined by Definition 3 and 4 is conventionally called a Place/Transition-

LetΣ= (S,T;F,K,W,M0) be a P/T-system. A sequence of transitions δ= t1t2⋯tn is called a transition sequence if they can fire one after another in the given order, starting from the

An infinite sequence of transitions is a transition sequence if any of its finite prefix is a

Let Σ=(S,T;F,K,W,M0) be a P/T-system and T1, T2 be subsets of T, T1≠ ∅, T2≠ ∅. Let � be a finite transition sequence, i.e. δ ∈ ρ. Let #(δ, T1), #(δ, T2) denote the numbers of firings of transitions in T1,T2 respectively, and #(δ, T1,T2) = #(δ, T1) -#(δ, T2). The synchronous

σ(T1,T2) = max{#(δ, T1,T2)∣δ∈ ρ} - min{#(δ, T1,T2)∣δ∈ ρ }if exists, other wise σ (T1,T2) = ∞.

Figure 3 (a) is P/T-system Σ1 and its set of transition sequences is {a, ab, b, ba}. We have, for T1 = {a} and T2 ={b}, max{#(δ, T1,T2)∣δ∈ ρ} = 1 and min{#(δ, T1,T2)∣δ∈ ρ } = -1, so σ(T1,T2) =

Note that we write σ(a,b) =2 instead of σ(T1,T2) =2 in figure 3 by convention when both T1,T2

The set of transition sequences of Σ2 is infinite and it contains infinite sequences. It is easy to check that any repeatable portion in a finite or infinite transition sequence contains the same

In what follows ρ denotes the set of all transition sequences of Σ.

distance between T1 and T2, denoted by σ(T1,T2), is defined by

need.

Definition 7

Definition 8

◆

2.

(a) Σ1, (b) Σ<sup>2</sup>

**Figure 3.** σ(a,b) =2

are singletons.

**4.1. Synchronous distance in a P/T-system** 

system, P/T-system for short.

transition sequence. ◆

initial marking. The length of δ is n.

So far we have not said a word about how to relate a net to the real world. This reflects an important aspect of Petri net, that is, a net is unexplained. This nature of nets has its good point and bad point. The good point is: the same net or net system may be explained in different application areas to solve different problems; the bad point is: unexplained transition firings lead to general analysis methods that are bound to be of low efficiency, since they cannot make use of application specific properties.

A net is "physically implementable" when every element in S∪T has an explaination for a fixed application problem, and every transition firing describes real changes in that application area. A net describes how real changes relate with each other. This chapter aims to show how to build, with the guidance of GNT, net systems for workflow modelling and how to find efficient analysis methods.

Some transitions are defined as "instant transitions" in Timed Petri Nets, for they fire instantly when they become enabled. What would happen when two instant transitions are in conflict? Conflict resolution takes time since it needs to be detected and it requires a decision from the system environment. Generally speaking, an enabled transition may be disabled (by others) without firing.
