**6.1. Synchronizer**

#### Definition 10

120 Petri Nets – Manufacturing and Computer Science

Let u be a task in T, u is a start task if it is before every other task, i.e. ∀t∈T:¬(t<u); u is an end task if u has no immediate successor. It is assumed that there is a unique start task, i.e.

Let T1, T2 be nonempty subsets of T. T2 is called an immediate successor set of T1 , denoted by T1<T2, if ∀u∈T1∀v∈T2:u<v. It is easy to prove that T1 and T2 are disjoint, and tasks in T1 (T2) are not ordered. Synchronization for management need can only be introduced between T1 and T2. Here, the synchronization between T1 and T2 must be place synchronization since they are different transitions. In case T1 and T2 are both singletons, the synchronization can only be the immediate successor relation. As an example, let be T1 = {a, b} and T2 = {c, d}, σ(T1,T2)=2 and σ(T1,2T2 )=2 are two different ways of synchronization. Taking into account the fact that every task, if it is included on a route, can only be (effectively, redo is not counted) executed once, σ(T1,T2)=2 requires that tasks a ,b being executed in parallel followed by tasks c, d being executed in parallel; σ(T1,2T2)=2 requires that tasks a, b being executed in parallel followed by either task c or task d being executed alone. Data from a given case will be used for the selection between task c and task d. It is clear that

Now the processing of a given case goes like this: it begins from the unique start task, each task on the route carries out its duty and fills in blank(s) it is responsible for on the B-form, and passes it to its immediate successor(s) via the engine. The engine takes care of quality checking, successor selection and appointing executer(s) for selected task(s); and finally, the

P/T-systems will be used for the modelling of workflow logic. A synchronizer is a special

To capture the fact that every task (transition) is executed (effectively) at most once for a single business case and workflow logic contains no iteration, a concept of restricted P/T-

A P/T-system Σ=(S,T;F,K,W,M0) is a RP/T-system if it is acyclic (F+∩(F-1)+) =∅) and any

The P/T-system in Figure 2 is a good example: as a normal P/T-system, transition t2 can fire twice when p1 has 2 tokens; but as a RP/T-system, t2 can fire only once at the same marking. In fact, transitions t2 and t3 would fire when p1 has 2 tokens for a RP/T-system, though t2

Note that RP/T-systems are not a new class of net systems. If we introduce a control place c for every transition t such that c has an empty pre-set and {t} is its post-set, and initially it has one token. Apparently, with an added control place for every transition, every transition

all cases share a unique beginning to recognize and to accept a case.

synchronous distances would be of no use if redo is taken into account.

place to connect transitions (tasks) with immediate successor relation (<).

engine passes the B-form to appointed executer(s).

**6. Synchronizer and workflow logic** 

systems, RP/T-systems for short, is proposed.

transition is restricted to fire at most once. ◆

can fire at most once by conventional transition rules.

remains enabled after its first firing.

Definition 9

A place p in a RP/T-system is a synchronizer if T1 and T2 are the pre-set and post-set of p and they are not empty; and ∀t ∈ T1: W(t, p) = b and ∀t ∈ T2: W(p, t) = a where b and a are integers such that 0≤ a ≤ n and 0≤ b ≤ m ; n, m are respectively the numbers of transitions in T1 and T2; and K(p) = ab.◆

The RP/T-system in Figure 2 has two synchronizers p1 and p2 since K(p1) = 2 and K(p2) = 2.

The synchronizer defined by Definition 10 is usually denoted by p = ( T1, T2, (a, b)) or p = ( . p, p. , (a, b)). Figure 8 (a) is the graphical presentation of a synchronizer p and (b) is the detail of p, explaining how synchronization is achieved. Theorem 4 concludes that σ(bT1, aT2) = ab, i.e. the weighted synchronous distance between T1 and T2 are ab where b is the weight for all transitions in T1 and a is the weight for all transitions in T2.

**Figure 8.** A Synchronizer and its Detail

Definition 11

Let p = ( T1, T2, (a, b)) be a synchronizer and n, m be the numbers of transitions in T1 and T2. P can be classified as below:

```
n=m=1, p is sequential synchronizer, 
m>1, p is a split, 
n>1, p is a join, 
a>1 and a=n, p is an ALL-join, 
1<a<n, p is an OR-join, 
a=1 and a<n, p is a XOR-join, 
b>1 and b=n, p is an ALL-split, 
1<b<m, p is an OR-split, 
b=1 and b<m, p is a XOR-split.
```
Here we have deliberately chosen terms used by Prof. Aalst for WF-net. The difference is, our synchronizers are places while synchronization is achieved via transitions in WF-net. Synchrony in Section 3 has made it clear that synchronization with a distance greater than zero is place synchronization. We will see what advantages the concept of synchronizers brings with it when we approach to management logic.

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

Figure 9 shows how to achieve mixed synchronization where p1 is an XOR-split and p2 is an ALL-split. What follows task t would be one of t1 and t2 plus both t3 and t4.

Workflow Modelling Based on Synchrony 123

∩ t'≠ ∅}.

Definition 13

t3).

∀u ∈ T:¬(next(t,u)∧next(u, t').

**Figure 11.** A System not Well-ordered

case resembles all conceivable cases.

Definition 14

token in s0.◆

For RP/T-systemΣ= (S,T;F,K,W,M0), relation next T×T is given by next = {(t, t') |t

We write next(t, t') for (t, t') ∈ next. Σ is well ordered if, for any t, t' in T, next(t, t') implies

The system in Figure 11 is not well-ordered, since we have next(t1, t3) and next(t1, t2)∧ next(t2,

Remember that we are seeking for net systems that are suitable for modelling workflow logic. If t1, t2 and t3 are tasks, then the B-form would be passed from t1 to t3 twice: one directly and one via t2. This redundancy leads to structure complexity and analytical

Every transition has nonempty pre- and post- sets; there is a unique place s0 such that it has an empty pre-set and its post-set is a singleton {t0} and K(s0) = 1, W(s0, t0) = 1; every intermediate place p is a synchronizer; every end-place, i.e. a place with an empty post-set, has a capacity 1 and its input arc(s) has 1 as its weight; The initial marking has a unique

A task is initiated upon receiving a B-form, and passes it over to its successor upon termination. Thus, its pre-set and post-set are nonempty. The unique place s0 is the place to receive initiated B-forms one by one and one at a time. Transition t0 is the unique start task. An end-place is to receive completed B-forms, one by one and one at a time. All tasks must be well synchronized, so intermediate places are synchronizers. The weight on an input arc (t, p) of synchronizer p represents that W(t, p) immediate successors need the B-form completed by t, and the weight on an output arc of p represents that B-forms completed by W(p, t) different immediate predecessors of t are needed by t. The unique token in s0 represents an abstract single case. It is an abstract case since no data is needed. An abstract

difficulty. Besides, there might be semantic inconsistency for this or that reason.

A well-ordered RP/T-systemΣ= (S,T;F,K,W,M0) is a workflow logic if :

**Figure 9.** ALL-split and XOR-split mixture

### Definition 12

Let x, y be variables of integer type. The place p1 = (T1, T2, (a, y)), p2 = (T1, T2, (x, b)) and p3 = (T1, T2, (x, y)) are variations of synchronizer p = (T1, T2, (a, b)) as long as 0 < x ≤n and 0 < y≤ m. p1, p2 and p3 are flexible synchronizers, since x and y can take different values.◆

Figure 10 explains how flexible synchronizers work: x may take 1 or 2 as its value to achieve different synchronization.

**Figure 10.** Flexible Synchronizers p1 and p2

We have not found a way to express flexible synchronization in terms of WF-net since an OR-split or OR-join transition in WF-net does not tell the exact number "OR" represents.

### **6.2. Workflow logic**

RP/T-systems are candidates for modelling workflow logic, but not every RP/T-system is suitable.

Definition 13

122 Petri Nets – Manufacturing and Computer Science

**Figure 9.** ALL-split and XOR-split mixture

**Figure 10.** Flexible Synchronizers p1 and p2

**6.2. Workflow logic** 

suitable.

Definition 12

different synchronization.

Figure 9 shows how to achieve mixed synchronization where p1 is an XOR-split and p2 is an

Let x, y be variables of integer type. The place p1 = (T1, T2, (a, y)), p2 = (T1, T2, (x, b)) and p3 = (T1, T2, (x, y)) are variations of synchronizer p = (T1, T2, (a, b)) as long as 0 < x ≤n and 0 < y≤

Figure 10 explains how flexible synchronizers work: x may take 1 or 2 as its value to achieve

We have not found a way to express flexible synchronization in terms of WF-net since an OR-split or OR-join transition in WF-net does not tell the exact number "OR" represents.

RP/T-systems are candidates for modelling workflow logic, but not every RP/T-system is

m. p1, p2 and p3 are flexible synchronizers, since x and y can take different values.◆

ALL-split. What follows task t would be one of t1 and t2 plus both t3 and t4.

For RP/T-systemΣ= (S,T;F,K,W,M0), relation next T×T is given by next = {(t, t') |t ∩ t'≠ ∅}. We write next(t, t') for (t, t') ∈ next. Σ is well ordered if, for any t, t' in T, next(t, t') implies ∀u ∈ T:¬(next(t,u)∧next(u, t').

The system in Figure 11 is not well-ordered, since we have next(t1, t3) and next(t1, t2)∧ next(t2, t3).

**Figure 11.** A System not Well-ordered

Remember that we are seeking for net systems that are suitable for modelling workflow logic. If t1, t2 and t3 are tasks, then the B-form would be passed from t1 to t3 twice: one directly and one via t2. This redundancy leads to structure complexity and analytical difficulty. Besides, there might be semantic inconsistency for this or that reason.

Definition 14

A well-ordered RP/T-systemΣ= (S,T;F,K,W,M0) is a workflow logic if :

Every transition has nonempty pre- and post- sets; there is a unique place s0 such that it has an empty pre-set and its post-set is a singleton {t0} and K(s0) = 1, W(s0, t0) = 1; every intermediate place p is a synchronizer; every end-place, i.e. a place with an empty post-set, has a capacity 1 and its input arc(s) has 1 as its weight; The initial marking has a unique token in s0.◆

A task is initiated upon receiving a B-form, and passes it over to its successor upon termination. Thus, its pre-set and post-set are nonempty. The unique place s0 is the place to receive initiated B-forms one by one and one at a time. Transition t0 is the unique start task. An end-place is to receive completed B-forms, one by one and one at a time. All tasks must be well synchronized, so intermediate places are synchronizers. The weight on an input arc (t, p) of synchronizer p represents that W(t, p) immediate successors need the B-form completed by t, and the weight on an output arc of p represents that B-forms completed by W(p, t) different immediate predecessors of t are needed by t. The unique token in s0 represents an abstract single case. It is an abstract case since no data is needed. An abstract case resembles all conceivable cases.

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

The system in Figure 2 is workflow logic. The conventional transition rules would apply to a workflow logic if a control place is added to each of the transitions (so, no transition can fire for the second time for one case) and the detail of every synchronizer as given in Figure 8 is also made explicit. But, this would make workflow logic too complicated for practical use. The following is the transition rules for workflow logic.

Workflow Modelling Based on Synchrony 125

**Figure 12.** Not well- structured workflow logic

Soundness! This is the answer from WF-net. Soundness requires:

"A process contains no unnecessary tasks and every case submitted to the process must be completed in full and with no references to it (that is case tokens) remaining in the process."

(a)

(b)

**Figure 13.** Combined Twins

## Definition 15

LetΣ= (S,T;F,K,W, M0) be a workflow logic, t in T is a transition and M is a marking (i.e. the initial marking M0 or reachable from M0 by rules given here).


It is recommendable to compute the set of reachable markings for the workflow logic given in Figure 2. We denote with [M0 ≫ the set of reachable markings.

Redundancy is always closely connected to complexity. The property of being well-ordered has removed certain redundancy. The next definition reveals different redundancy.

#### Definition 16

A workflow logic is well-structured if for every synchronizer p and a reachable marking M, M(p) = K(p) implies the fact that either all transitions in the post-set of p are enabled, or none of them is enabled.◆

Figure 12 illustrates this definition: the workflow logic in (a) is not well- structured, since t3 is enabled but t4 is not when p2 has a token (the capacity of a synchronizer is known without saying). On the other hand, transitions t3, t4 and t5 are all enabled when p2 has 2 tokens in the system in (b).

Careful readers may have noticed that p2 in (b) is not a synchronizer. No, it is not. It is a variation of a synchronizer. The two transitions t3 and t5 in (b) are viewed as twins: either both of them to be on a route, or none of them to be selected since t4 requires 2 tokens. Thus, as far as route selection is concerned (workflow logic aims at the description of all possible routes), twin transitions could and should be combined as shown in Figure 13. Variations of synchronizers may be allowed in practice for convenience. But for the analysis of workflow logic, combined twins are preferred.

If the system in Figure 12 (b) is taken as workflow logic with a synchronizer variation, it reveals another problem: there would be two tokens upon the completion of one case when t3 and t5 are on its route. This is inconsistent with common knowledge: A single case cannot have two separated conclusions. This observation raises a question: what properties a well-defined workflow logic should have, in addition to being well-ordered and well-structured?

**Figure 12.** Not well- structured workflow logic

**Figure 13.** Combined Twins

124 Petri Nets – Manufacturing and Computer Science

conventional transition rule.

Definition 15

Definition 16

system in (b).

none of them is enabled.◆

logic, combined twins are preferred.

and well-structured?

The following is the transition rules for workflow logic.

initial marking M0 or reachable from M0 by rules given here).

in Figure 2. We denote with [M0 ≫ the set of reachable markings.

1. t is enabled by M (or at M), denoted by M[t≫, if ∀s ∈

The system in Figure 2 is workflow logic. The conventional transition rules would apply to a workflow logic if a control place is added to each of the transitions (so, no transition can fire for the second time for one case) and the detail of every synchronizer as given in Figure 8 is also made explicit. But, this would make workflow logic too complicated for practical use.

LetΣ= (S,T;F,K,W, M0) be a workflow logic, t in T is a transition and M is a marking (i.e. the

2. Once M[t≫ is true, it remains true until either t occurs or t is not enabled according to

3. The successor marking, when t fires, is computed according to the conventional rule.◆

It is recommendable to compute the set of reachable markings for the workflow logic given

Redundancy is always closely connected to complexity. The property of being well-ordered

A workflow logic is well-structured if for every synchronizer p and a reachable marking M, M(p) = K(p) implies the fact that either all transitions in the post-set of p are enabled, or

Figure 12 illustrates this definition: the workflow logic in (a) is not well- structured, since t3 is enabled but t4 is not when p2 has a token (the capacity of a synchronizer is known without saying). On the other hand, transitions t3, t4 and t5 are all enabled when p2 has 2 tokens in the

Careful readers may have noticed that p2 in (b) is not a synchronizer. No, it is not. It is a variation of a synchronizer. The two transitions t3 and t5 in (b) are viewed as twins: either both of them to be on a route, or none of them to be selected since t4 requires 2 tokens. Thus, as far as route selection is concerned (workflow logic aims at the description of all possible routes), twin transitions could and should be combined as shown in Figure 13. Variations of synchronizers may be allowed in practice for convenience. But for the analysis of workflow

If the system in Figure 12 (b) is taken as workflow logic with a synchronizer variation, it reveals another problem: there would be two tokens upon the completion of one case when t3 and t5 are on its route. This is inconsistent with common knowledge: A single case cannot have two separated conclusions. This observation raises a question: what properties a well-defined workflow logic should have, in addition to being well-ordered

has removed certain redundancy. The next definition reveals different redundancy.

t:M(s)=K(s),

Soundness! This is the answer from WF-net. Soundness requires:

"A process contains no unnecessary tasks and every case submitted to the process must be completed in full and with no references to it (that is case tokens) remaining in the process."

What we propose is throughness: the token in s0 (an abstract case) will be passed over by transition firings (tasks) via the engine, to a unique end-place. All properties required by soundness are covered by being through.

Workflow Modelling Based on Synchrony 127

t2 = {p}, then (t1, p, t2) can be replaced by a single

– {p}. All weights on remaining arcs remain.◆

p2 ={t} and W(p1, t) = W(t, p2) = 1, then (p1,t,p2) can be

–{t}. All weights on remaining arcs remain. ◆

p1 = ∅ and/or

Synchronizer p1 requires that a2 transitions from T0 to fire after the firings of a1 transitions from T1 while synchronizer p2 requires that b1 transitions from T0 to be fired before any transition firing from T2. Given a2 = b1, p1 and p2 are consistent with each other on T0: a1 transitions from T1 followed by b2 transitions from T2. Thus, the theorem is true. (p1,T0, p2) is in fact the detail of p. This reduction of omitting consistent detail is a net morphism in net topology. No wonder the property of being through is reserved. All reduction rules are in fact to conceal local details, and as such, they reserve throughness. But there will be no

∩.

It is easy to see that the combined effect of t1 and t2 on all places other than p is the same as

 = t1. ∪t2.

the effect of t. The dotted circles and arcs may exist, but not necessarily.

p2– {t} and p.

∩.

 = p1. ∪p2.

Note that places p1 and p2 are not necessarily synchronizers, i.e. it is possible .

more theorems and proofs to be given below for simplicity.

t2– {p} and t.

**Figure 14.** Reduction Rule 1

For synchronizer p = ({t1}, {t2}, (1,1)), if t1.

t = . t1∪.

Figure 15 illustrates this rule.

**Figure 15.** Reduction Rule 2

For transition t and places p1, p2, if p1.

p = . p1∪.

Figure 16 (a) illustrates this rule.

Reduction Rule 3

replaced by p, .

p2. = ∅. 

Reduction Rule 2

transition t with .

In what follows, workflow logic is always assumed well-structured.
