LIU et al.: INTERACTIVE PETRI NETS 293
{M
0
}, which still fulfills the definition of reversibility. How-
ever, we do not consider this special case in this paper since
this kind of net, which is dead at the initial marking, is not
meaningful. In other words, we always assume that there is at
least a transition enabled at the initial marking.
A nonempty subset of places S (respectively Q)iscalleda
siphon (respectively trap)if
•
S ⊆ S
•
(respectively
•
Q ⊇ Q
•
).
A siphon is minimal if it does not contain any other siphon.
A net N =(P, T, F) is called as:
1) an ACN if ∀p
1
, p
2
∈ P : p
•
1
∩ p
•
2
= ∅ ⇒ p
•
1
⊆ p
•
2
∨
p
•
2
⊆ p
•
1
;
2) an FCN if ∀p
1
, p
2
∈ P : p
1
= p
2
∧ p
•
1
∩ p
•
2
= ∅ ⇒
|p
•
1
| = |p
•
2
| =1;
3) a marked graph (MG) if ∀p ∈ P : |p
•
| = |
•
p| =1;
4) a state machine (SM) if ∀t ∈ T : |t
•
| = |
•
t| =1.
III. IPN
AND COMPATIBILITY
This section defines IPNs, presents their compatibility, and
reveals the complexity to analyze it.
A. IPN
First, a logic process is defined to model the state transition
of a subsystem.
Definition 1: A logic process (LP) is a net N =(P, T, F )
that satisfies the following two points.
1) N has two special places α and β, where α ∈ P is
called source place, β ∈ P is called sink place, and
•
α = β
•
= ∅.
2) Let N
E
=(P, T ∪{b},F ∪{(b, α), (β, b)}) be the triv-
ial extension of N and M
0
= α be its initial marking.
Then, N
E
is strongly connected, and (N
E
,M
0
) is live
and safe.
If places c
1
−c
16
in Fig. 2 are deleted, then the resulting nets
are three LPs. An LP starts from a “source” place α and ends
at a “sink” place β. Safety of (N
E
,M
0
) means that it has a
finite number of states and each place can have at most one
token. Safety and liveness imply that it can return to its initial
state after its completion. Transition b in N
E
is called a bridge
transition.
Property 1: Let N =(P, T, F) be an LP and M
0
= α be its
initial marking. Then, (N
E
,M
0
) is reversible.
Proof: Let M ∈ R(N
E
,M
0
). Because (N
E
,M
0
) is live
and safe, we can easily draw the following conclusion:
1) M (α)=0if and only if M (P \{α}) > 0, and 2) M(α)=
1 if and only if M (P \{α})=0. That is, α and P \{α}
cannot be marked at the same time. Because (N
E
,M) is also
live, bridge transition b is live at M . Hence, after firing b
in (N
E
,M), there is M
∈ R(N
E
,M) such that M
(α)=1.
Hence, M
(P \{α})=0, i.e., M
= M
0
. Hence, (N
E
,M
0
) is
reversible.
Note that, it is known by Property 1 that, when the sink place
β has a token in (N
E
,M
0
), other places have no tokens. In
fact, an LP is a sound workflow net, and the aforementioned
conclusion is easily derived by the soundness of workflow nets
[3]. A subsystem needs message channels to communicate with
other subsystems. Hence, the following definition is given.
Fig. 2. Three LPCs.
Definition 2: A logic process with channels (LPC) is a net
N =(P
A
∪ P
I
∪ P
O
,T,F) such that the following holds.
1) The subnet generated by P
A
= ∅ is an LP, where P
A
is a
set of action places of N.
2) P
I
is a set of input channel places, P
O
is a set of output
channel places, P
I
∩P
O
=∅, and P
A
∩(P
I
∪P
O
)=∅.
Fig. 2 shows three LPCs in which α
1
−α
3
are source places,
β
1
−β
3
are sink places, and c
1
−c
16
are channel places. A set of
LPCs can make up an IPN.
Definition 3: IPNs are defined recursively as follows.
1) An LPC N =(P
A
∪ P
C
∪ P
I
∪ P
O
,T,F) is an IPN
where P
C
= ∅.
2) Let N
i
=(P
Ai
∪ P
Ci
∪ P
Ii
∪ P
Oi
,T
i
,F
i
), i ∈ N
2
,be
two IPNs such that (P
A1
∪ P
C1
) ∩ (P
A2
∪ P
C2
)=∅,
P
I1
∩ P
I2
= P
O1
∩ P
O2
= ∅, (P
O1
∩ P
I2
) ∪ (P
O2
∩
P
I1
)=P
S
= ∅, and T
1
∩ T
2
= ∅. Then, the
net N =(P
A
∪ P
C
∪ P
I
∪ P
O
,T,F) is an IPN
where P
A
= P
A1
∪ P
A2
, P
C
= P
C1
∪ P
C2
∪ P
S
,
P
I
=(P
I1
∪ P
I2
) \ P
S
, P
O
=(P
O1
∪ P
O2
) \ P
S
,
T = T
1
∪ T
2
, and F = F
1
∪ F
2
.
Fig. 3 shows an IPN that is composed of the three LPCs in
Fig. 2. {c
1
,c
6
,c
12
} is the set of input channel places, and {c
2
−
c
5
,c
7
− c
11
,c
13
− c
16
} is the set of internal channel places.
Clearly, an IPN N is the union of m LPCs N
1
−N
m
,
m ≥ 1, via a set of common places (i.e., P
S
). To facilitate
its description, an IPN is denoted by N = N
1
⊕ N
2
⊕···⊕
N
m
= ⊕
m
i=1
N
i
. In Definition 3, P
A
(respectively P
C
, P
I
,
P
O
, P
I
∪ P
O
)iscalledasetofaction (respectively internal
channel, input channel, output channel, and external channel)
places of N. Input channel places can only be combined with
output ones. After two LPCs are composed via a set common
channel places, these common places become internal ones and