5 Formal Languages and Concurrent Behaviours 153
Definition 35 : ENI-systems
An elementary net system with inhibitor arcs (or ENI-system) is a rela-
tional tuple ENI
df
=(P, T, F,C
init
, Inh) such that the first four components
form an (underlying) EN-system and Inh ⊆ P ×T is a set of inhibitor arcs.
As inhibitor arcs are introduced on top of the model of EN-systems, wherever
it is possible notions and notations concerning the structure and configurations
of an ENI-system are inherited from its underlying EN-system. Thus, for
example, the initial configuration of the ENI-systems in Figure 5.14 is the
initial configuration of the EN-system in Figure 5.10. The only new notation
is
◦
t denoting the set of all the places p where the presence of a token inhibits
the enabling of a transition t, i.e., (p, t) ∈ Inh. For example, we have
◦
r = {p5}
and
◦
a =
◦
m =
◦
g =
◦
u = ∅ in the case of ENI.
The dynamic aspects of an ENI-system are also derived from the under-
lying EN-system, with proper attention being paid to the inhibiting features
of the new kind of arcs. In fact, all one needs to re-define is the enabling con-
dition for steps, by stating that a step of transitions U of an ENI-system is
enabled at a configuration C if it is enabled at C in the underlying EN-system
and, in addition, no place in
◦
U belongs to C,where
◦
U consists of all places
connected by inhibitor arcs to transitions in U . It is important here to stress
that the change of state effected by an executed step is exactly the same as in
the underlying EN-system; in other words, inhibitor arcs have only impact on
the enabling of steps. In the case of ENI, a is a singleton step enabled in the
initial configuration, but the other singleton step r enabled in the initial con-
figuration of the underlying EN-system is not since p5 ∈
◦
r ∩C
init
. Note that
it would be quite natural and harmless as it has no effect on the dynamics of
an ENI-system to additionally assume that for each of its transitions t,thesets
•
t, t
•
and
◦
t are mutually disjoint . As far as executing step sequences of
ENI are concerned, we have C
init
[a{p3, p4, p5} and C
init
[a{m, g}{p2, p6, p7}.
Having introduced the step sequence semantics of ENI-systems, we have
another look at ENI. This ENI-system generates the step sequence σ
exmpl
df
=
a{m, g}{u, r} Splitting the last step into ur leads to the sequence σ
invalid
df
=
a{m, g}ur which is not a valid behaviour of ENI (yet the splitting of {u, r} into
ru leads to a valid step sequence). Thus, also the first part of Fact 20 does not,
in general, hold for ENI-systems. In fact, not only the diamond property no
longer holds for ENI-systems, but even the property that every step sequence
of an EN-system can be linearised to yield some valid firing sequence is not
true for ENI-systems. Consider, for example, the ENI-system ENI
on the right
of Figure 5.14 which has been obtained from ENI by adding an inhibitor arc
between p1 and u ensuring that the consumer can only use an item if there is
still a chance that the producer may produce another item in the future. It is
easy to see that ENI
generates the step sequence amg{u, r}, but any attempt
to linearise its only non-singleton step, ur, results in an illegal behaviour.