3. (W F
′
1
, i
1
), . . . , (W F
′
n
, i
n
) are extended WF-nets, with the corresponding initial markings
i
1
, i
2
, . . . , i
n
.
4. AC is the asynchronous communication relation: AC ⊆ T
◦
×T
◦
, where T
◦
= ∪
k∈{1,...,n}
T
k
,
T
k
is the set of transitions from the underlying WF-net of W F
′
k
. If (t, t
′
) ∈ AC, t ∈ T
i
, t
′
∈
T
j
, then i 6= j.
5. SC is the set of synchronous communication elements: SC ⊆ P (T
◦
) and:
- ∀u, v ∈ SC : u ∩ v = ∅.
- if t ∈ T
i
, t
′
∈ T
j
, t, t
′
∈ u, u ∈ SC, then i 6= j.
6. C = (P
C
, T
C
, F
C
) is the communication object:
- P
C
= {p
ac
|ac ∈ AC}.
- T
C
= {t
c
|∃t ∈ T
◦
: (t
′
, t) ∈ AC ∨ (t, t
′
) ∈ AC}.
- F
C
= {(p
ac
, t) ∈ P
C
× T
◦
|ac = (t
′
, t) ∈ AC} ∪ {(t, p
ac
) ∈ T
◦
× P
C
|ac = (t, t
′
) ∈
AC}
7. SN = (N, W, M
0
) is the system net of DIWF, such that:
- N = (P
N
, T
N
, F
N
) is a high level Petri net: P
N
= {I, p, q, O}, where O is a place
such that O
•
= ∅ and I is a place such that
•
I = ∅; T
N
= {terminate, remove};
F
N
= {(I, terminate), (p, terminate),
(terminate, O), (p, remove), (remove, q), (I, remove )}.
- W is the arc labelling function: W ((p, terminate)) = x, W ((p, remove)) = y,
W ((remove, q)) = L(y, l) and W (a) = 1 for the rest of the arcs.
- M
0
is the initial marking of the net: M
0
(I) = n, M
0
(p) = {(W F
′
1
, i
1
), . . . ,
(W F
′
n
, i
n
), (C , 0)}, M
0
(q) = 0 and M
0
(O) = 0
. - Λ is a partial labelling function such that:
- ∀u ∈ SC, ∀ t, t
′
∈ u, Λ(t) = Λ(t
′
) = l, l ∈ Lab
SC
.
- if t ∈ T
◦
such that (t, t
′
) ∈ AC or (t
′
, t) ∈ AC, then there exists t
c
∈ T
C
: Λ(t
c
) =
Λ(t) = l, l ∈ Lab
AC
.
- Λ(t
′
i
) = f, ∀i ∈ {1, . . . n} and Λ(terminate) = f.
- Λ(remove) = e and, if exit
i
∈ T
′
i
, then Λ(exit
i
) = e (i ∈ {1, . . . n}).
- ∀t, t
′
∈ T
i
(i ∈ {1, . . . , n}) : Λ(t) 6= Λ(t
′
).
In a DIWF-net there are n object-nets (extended WF-nets) representing the local work-
flows. We denote by t
′
i
the transition which empties the output place o
i
in an extended
WF-net W F
i
. V ar is the set of variables in the net. Variables x and y will take as
value an object-net in a certain marking. Lab is a set of labels: the labels in Lab
AC
are
used for the elements of AC and the labels from Lab
SC
are used for the elements of
SC. Lab
AC
and Lab
SC
are not necessary disjoint. The label f is used for labelling the
transition t
′
i
from W F
′
i
, ∀i ∈ {1, . . . , n}. AC represents the asynchronous communi-
cation relation: if (t, t
′
) ∈ AC, then, the transition t must execute before the transition
t
′
. SC represents the set of synchronous communication elements: if u ∈ SC, then,
all the transitions from u have to execute at the same time. C is an object-net which
describes the asynchronous communication: if ac = (t, t
′
) ∈ AC, then there is a corre-
sponding place p
ac
in P
C
. For every transition t ∈ T
◦
involved in an element of AC,
there is a transition t
c
∈ T
C
. Also, if ac = (t, t
′
) ∈ AC, then there exist two arcs
(t
c
, p
ac
), (p
ac
, t
′
c
) ∈ F
C
. In DIWF-nets, the expressions on arcs can be either variables
(x or y), the constant 1 or the function L(y, l). Λ is a partial function which labels tran-
sitions of the DIWF-net. If u ∈ SC, then all the transitions from u have the same label
l ∈ Lab
SC
. For every transition t involvedin an asynchronous communication element,
there is a transition t
c
in the object-net C and Λ(t) = Λ(t
c
) = l, l ∈ Lab
AC
.
We denote by A
net
the net tokens of the DIWF-net: A
net
= {(EN, m) / m is
28