<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>Minimising the Synthesised ENL-systems</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Aishah Ahmed</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Marta Pietkiewicz-Koutny</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>School of Computing, Newcastle University</institution>
          ,
          <addr-line>Newcastle upon Tyne NE4 5TG</addr-line>
          ,
          <country country="UK">United Kingdom</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>Elementary Net Systems with Localities (enl-systems) is a class of Petri nets introduced to model gals (globally asynchronous locally synchronous) systems, where some of the components might be considered as logically or physically close and acting synchronously, while others might be considered as loosely connected or residing at distant locations and communicating with the rest of the system in an asynchronous way. The specification of the behaviour of a gals system comes very often in the form of a transition system. The automated synthesis, based on regions, is an approach that allows to construct Petri net models from their transition system specifications. In our previous papers we developed algorithms and tool support for the synthesis of enl-systems from step transition systems, where arcs are labelled by steps (sets) of executed actions. In this paper we focus on the minimisation of the synthesised nets. In particular, we discuss the properties of minimal, companion, and complementary regions, and their role in the process of minimisation of enl-systems. Furthermore, we propose a strategy to eliminate redundant regions. Our theoretical results are backed by experiments (the algorithms for the minimisation are implemented within the workcraft framework).</p>
      </abstract>
      <kwd-group>
        <kwd>eol&gt;theory of concurrency</kwd>
        <kwd>Petri nets</kwd>
        <kwd>localities</kwd>
        <kwd>analysis and synthesis</kwd>
        <kwd>step sequence semantics</kwd>
        <kwd>theory of regions</kwd>
        <kwd>transition systems</kwd>
        <kwd>WORKCRAFT framework</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1. Introduction</title>
      <p>
        A number of computational systems exhibit behaviour that follows the ‘globally asynchronous
locally (maximally) synchronous’ paradigm. Examples can be found in hardware design, where
a vlsi chip may contain multiple clocks responsible for synchronising diferent subsets of
gates [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ], and in biologically inspired membrane systems representing cells within which
biochemical reactions happen in synchronised pulses [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ]. To formalise such systems, [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ]
introduced Place/Transition-nets with localities (ptl-nets), where each locality defines a distinct
set of events which must be executed synchronously, i.e., in a maximally concurrent manner
(often called local maximal concurrency).
      </p>
      <p>
        An attractive way of constructing complex computing systems is their automated synthesis
from behavioural specifications given in terms of suitable transition systems. In such a case, the
synthesis procedure is often based on the regions of a transition system, a notion introduced
in [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ], and later used to solve the synthesis problem for diferent classes of Petri nets [
        <xref ref-type="bibr" rid="ref10 ref5 ref6 ref7 ref8 ref9">5, 6, 7, 8,
9, 10</xref>
        ]. A comprehensive survey of the synthesis problem and region theory is presented in [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ].
      </p>
      <p>
        The vast majority of results in the area of synthesis of Petri nets use the standard transition
systems, where the arcs are labelled with single events/actions, as initial specifications of systems’
behaviour. In this paper, however, we follow the approach, used in [
        <xref ref-type="bibr" rid="ref10 ref12 ref13 ref14 ref15">12, 13, 14, 15, 10</xref>
        ], employing
step transition systems instead, where arcs are labelled with sets of executed events/actions.
      </p>
      <p>
        The nets with localities, as already mentioned, were first introduced in [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ] using as a base a
class of Place/Transition nets. The idea of actions’ localities was later adapted to Elementary Net
Systems (en-systems) in [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ], where a solution to the synthesis problem for enl-systems was
presented. Further advances in the area of synthesising nets with localities from step transition
systems are the subjects of [
        <xref ref-type="bibr" rid="ref13 ref14 ref15">13, 14, 15</xref>
        ]. The last of them, [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ], concentrated on finding the rules
for reducing the number of regions that are essential to synthesise enl-systems.
      </p>
      <p>
        In our previous papers, [
        <xref ref-type="bibr" rid="ref16 ref17">16, 17</xref>
        ], we developed algorithms and tool support for the synthesis
of enl-systems from step transition systems. In this paper we continue the work started in [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ]
and focus on the minimisation of enl-systems. The nets obtained from the synthesis procedure,
called saturated nets, contain many conditions that are redundant from their behaviour point of
view. Removing such conditions is important to get more manageable and readable solutions to
the synthesis problem. The approaches to remove redundant conditions from nets were
investigated in the literature and implemented in several tools [
        <xref ref-type="bibr" rid="ref18 ref19">18, 19</xref>
        ]. Many synthesis procedures
concentrate on returning smaller solutions based on so-called minimal regions [
        <xref ref-type="bibr" rid="ref20 ref21 ref22 ref23 ref24">20, 21, 22, 23, 24</xref>
        ].
In our approach, minimal regions, as defined for our class of step transition systems, are also
important for building smaller solutions to the synthesis problem. Furthermore, in this
paper, following [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ], we are interested in the role of minimal regions in defining state-machine
components of the synthesised and minimised enl-systems. Our theoretical results are backed
by experiments (the algorithms for the minimisation are implemented within the workcraft
framework [
        <xref ref-type="bibr" rid="ref25 ref26">25, 26</xref>
        ]).
      </p>
      <p>To explain the basic idea behind enl-systems, let us consider the net in Figure 1 modelling
two co-located consumers and one producer residing in a remote location. In the initial state,
the net can execute the singleton step {c4 }. Another enabled step is {p2 } which removes
the token from b1 and puts two tokens, into b0 and b2 . In this new state, there are three
enabled steps, viz. {p1 }, {c1 , c4 } and {p1 , c1 , c4 }. The last one, {p1 , c1 , c4 }, corresponds to
what is usually called maximal concurrency as no more activities can be added to it without
violating the constrains imposed by the available resources (represented by tokens). However,
the previously enabled step {c4 } which is still resource (or token) enabled is disallowed by the
control mechanism of enl-systems. It rejects a resource enabled step like {c4 } since we can
add to it c1 co-located with c4 obtaining a step which is resource enabled. In other words, the
control mechanism employed by enl-systems (and ptl-nets) is that of local maximal concurrency
as indeed postulated by the gals systems execution rule.</p>
      <p>
        The paper is organised as follows. The next section recalls some basic notions concerning
step transition systems as well as enl-systems and their synthesis. Section 3 recalls, from [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ],
three reduction rules that can be used to safely eliminate redundant regions/conditions from
the synthesised nets. Section 4 defines minimal regions for the class of enlst-systems and
Section 5 discusses the properties of diferent kinds of regions and their roles in the process
of minimisation of enl-systems. Section 6 presents a strategy to eliminate redundant regions
from the synthesised nets. The paper ends with a conclusion that includes some directions for
future work. Proofs are omitted due to the page limit.
      </p>
      <p>p1
p2
b1
b2
b0</p>
    </sec>
    <sec id="sec-2">
      <title>2. Preliminaries</title>
      <p>
        In this section, we recall suitably adapted notions and results from [
        <xref ref-type="bibr" rid="ref12 ref14 ref15">12, 14, 15</xref>
        ].
      </p>
      <p>Throughout the paper,  is a fixed finite nonempty set of events. A step is a nonempty set of
events, and a co-location relation ≏ is any equivalence relation over . For every event  ∈ ,
[]≏ is the equivalence class of ≏ to which  belongs (i.e., the locality of ). For an event  and a
step  , we denote  ≏  whenever there is at least one event  ∈  satisfying  ≏  .
Definition 1. A step transition system (or st-system) is a triple ts = (, , 0), where  is a
nonempty finite set of states,  ⊆  × (P() ∖ {∅}) ×  is a set of transitions (arcs), and
0 ∈  is the initial state. ♢</p>
      <p>In diagrams, st-systems are represented as labelled directed graphs, and singleton steps
annotating transitions are denoted without brackets.</p>
      <p>To ease the presentation, we assume that each event of  occurs in at least one of the steps
labelling the transitions of ts.</p>
      <p>The set of all steps labelling transitions outgoing from  will be denoted by allSteps. For a
transition t = (, , ′) ∈ , we have therefore  ∈ allSteps, and respectively call  and ′
the source and target of t. Furthermore, t is thick if | | ≥ 2.</p>
      <p>ts is called thin if, for every event  ∈ , there is (, {}, ′) ∈ .</p>
      <p>A sequence of transitions (1, 1, 2)(2, 2, 3) . . . (, , +1) is a path from 1 to +1.
A state  is reachable if there is a path from 0 to .</p>
      <p>Two st-systems, ts = (, , 0) and ts′ = (′, ′, 0′), are isomorphic if there is a bijection
 :  → ′ such that  (0) = 0′ and ′ = {( (), ,  (′)) | (, , ′) ∈ }. We denote this
by ts ∼= ts′.</p>
      <p>Definition 2. An elementary net system with localities w.r.t. a co-location relation ≏ (or
enl≏system) is a tuple enl = (, , , ≏, 0), where  is a finite set of conditions such that ∩ = ∅,
 ⊆ ( × ) ∪ ( × ) is the flow relation , and 0 ⊆  is the initial case (in general, any
 ⊆  is a case).</p>
      <sec id="sec-2-1">
        <title>We will also say that enl is an elementary net system with localities (or enl-system) if mentioning</title>
        <p>≏ is not important. ♢</p>
        <p>In diagrams, conditions (local states) are represented by circles, events (actions) by boxes, the
lfow relation by directed arcs, and each case (global state) by tokens (small black dots) placed
inside those conditions which belong to this case. Moreover, boxes representing co-located
events are shaded in the same way (see Figure 1).</p>
        <p>For every event , its pre-conditions and post-conditions are given respectively by ∙  = { |
(, ) ∈  } and ∙ = { | (, ) ∈  }, and both sets are assumed to be nonempty and disjoint.
The dot-notation extends to sets of events in the usual way, e.g., ∙  = ⋃︀{∙  |  ∈  }. Two
distinct events,  and  , are in conflict (or conflicting) if they share a pre-condition, or share a
post-condition. Furthermore, we assume that there are no isolated conditions in enl.</p>
        <p>The semantics of enl is based on steps of simultaneously executed events, and can be
understood as local maximal concurrency. We first define potential steps of enl as all nonempty sets of
mutually non-conflicting events. A potential step  is then resource enabled at a case  if ∙  ⊆ 
and  ∙ ∩  = ∅, and control enabled if, in addition, there is no event  ∈/  such that  ≏  and
the step  ∪ {} is resource enabled at . We denote these respectively by  ∈ resenabled ()
and  ∈ enabled (). A control enabled step  ∈ enabled () can be executed leading from  to
the case ′ = ( ∖ ∙  ) ∪  ∙ . We denote this by [ ⟩′.</p>
        <p>The set of reachable cases of enl, denoted reachenl, is the least set of cases containing 0 such
that if  ∈ reachenl and [ ⟩′, then ′ ∈ reachenl.</p>
        <p>The st-system generated by enl is tsenl = (reachenl, , 0), where  = {(, , ′) |  ∈
reachenl ∧ [ ⟩′}.</p>
        <p>enl is a net realisation of an st-system ts if tsenl ∼= ts.</p>
        <p>To ease the presentation, we assume that enl does not have dead events, i.e., for each event ,
there are  ∈ reachenl and  ∈ enabled () such that  ∈  .</p>
        <p>Let enl = (, , , ≏, 0) be an enl≏-system. We say that enl is a state machine</p>
        <sec id="sec-2-1-1">
          <title>Definition 3.</title>
          <p>enl≏-system if:
1. ∀ ∈  : |∙ | = 1 = |∙ |;
2. |0| = 1.
♢
Definition 4. Let enl = (, , , ≏, 0) be an enl≏-system. A subsystem of enl is an
enl≏system enl′ = (′, ′,  ′, ≏′, ′0) such that the following conditions hold:
1. ′ ⊆  and ′ ⊆ ;
2. ∀ ∈ ′ ∀ ∈  : ((, ) ∈  ∨ (, ) ∈  ) =⇒  ∈ ′;
3.  ′ =  ∩ ((′ × ′) ∪ (′ × ′)); ≏′ = ≏ ∩ ′ × ′ and ′0 = 0 ∩ ′.
A subsystem enl′ is connected if the graph (′ ∪ ′,  ′) is connected. Also, point 2 above says
that the subsystem enl′ is generated by the subset of conditions ′ of the enl≏-system enl. ♢
Definition 5. Let enl = (, , , ≏, 0) be an enl≏-system. We say that enl is a state
machine decomposable enl≏-system if there exists a set of connected subsystems of enl, enl =
(, , , ≏, 0 ) ( = 1, . . . , ), satisfying the following:
1. ∀ ∈ {1, . . . , } : enl is a state machine enl≏ -system;
2.  = ⋃︀ ,  = ⋃︀  and  = ⋃︀ .</p>
          <p>The enl are called state machine (or sequential) components of enl.</p>
          <p>The general synthesis problem we consider can be formulated thus:</p>
        </sec>
      </sec>
      <sec id="sec-2-2">
        <title>Problem 1. Given an st-system ts and a co-location relation ≏, find an efective way of checking</title>
        <p>whether there is an enl≏-system which is a net realisation of ts. If the answer is positive construct
such an enl≏-system. ♢</p>
        <p>The above problem can be approached by considering a link between the nodes (global states)
of an st-system with the conditions (local states) of a hypothetical enl-system realising it,
captured by the notion of regions with explicit input and output events.</p>
        <p>Definition 6. A region (with explicit input and output events) of an st-system ts = (, , 0)
is a triple r = (in, , out) ∈ P() × P() × P(), such that in =  = ∅ implies  =  or
 = ∅ and, for every transition (, , ′) of ts, the following hold:
r1 If  ∈  and ′ ∈/  then | ∩ out| = 1.
r2 If  ∈/  and ′ ∈  then | ∩ in| = 1.
r3 If  ∩ out ̸= ∅ then  ∈  and ′ ∈/ .
r4 If  ∩ in ̸= ∅ then  ∈/  and ′ ∈ .</p>
        <p>In a region r = (in, , out), the set in comprises events responsible for entering the set of
states , and out comprises events responsible for leaving . Note that ¯r = (,  ∖ , ) is
also a region (the complement of region r).</p>
        <p>In general, a region r cannot be identified only by its set of states . However, if ts is thin,
then its diferent regions are based on diferent sets of states.</p>
        <p>There are exactly two trivial regions satisfying  = ∅ or  = , viz. (∅, ∅, ∅) and (∅, , ∅).</p>
        <p>The set of all non-trivial regions of ts will be denoted by Rts and, for every state , R =
{r ∈ Rts |  ∈ } is the set of all non-trivial regions (in, , out) containing .</p>
        <p>The sets of pre-regions and post-regions of an event , ∘  and ∘ , comprise all the non-trivial
regions (in, , out) respectively satisfying  ∈ out and  ∈ in, viz. ∘  = {r ∈ Rts |  ∈ out}
and ∘ = {r ∈ Rts |  ∈ in}. This extends in the usual way to sets of events, for example,
∘  = ⋃︀{ ∘  |  ∈  }. Also, we will write  ∈ r∘ ⇐⇒ r ∈ ∘  and  ∈ ∘ r ⇐⇒ r ∈ ∘ .</p>
        <p>The set of potential steps of ts comprises all nonempty sets  of events such that ∘  ∩ ∘  =
∘ ∩  ∘ = ∅, for each pair of distinct events ,  ∈  . A potential step  is then region enabled
at  ∈  if ∘  ⊆ R and  ∘ ∩ R = ∅. We denote this by  ∈ regenabled ().
Definition 7. An st-system ts is an enl step transition system w.r.t. a co-location relation ≏ (or
enlst≏-system) if the following hold:
a1 Each state is reachable.
♢
♢
a2 For every event , both ∘  and ∘ are nonempty.
a3 For all distinct states  and ′, R ̸= R′ .
a4 For every state  and step  ,  ∈ allSteps if  ∈ regenabled () and there is no event
 ̸∈  such that  ≏  and  ∪ {} ∈ regenabled ().</p>
      </sec>
      <sec id="sec-2-3">
        <title>We also say that ts is an enlst-system (if mentioning ≏ is not important).</title>
        <p>One can show that the st-system generated by an enl≏-system is an enlst≏-system. The
converse is also true, and a suitable translation is based on the regions of st-systems.
Definition 8. Let ts be an enlst≏-system. The tuple associated with ts is defined by enlt≏s =
(Rts, , ts, ≏, R0 ), where 0 is the initial state of ts and
ts = {(r, ) ∈ Rts ×  | r ∈ ∘ } ∪ {(, r) ∈  × Rts | r ∈ ∘ }.
♢
♢</p>
        <p>
          The above construction always produces an enl≏-system which generates an st-system
isomorphic to ts (see [
          <xref ref-type="bibr" rid="ref12">12</xref>
          ]).
        </p>
        <p>Theorem 1. Let ts be an enlst≏-system. Then enlt≏s is an enl≏-system such that ts ∼= tsenlt≏s .
Moreover, the unique isomorphism  between ts and tsenlt≏s is given by  () = R, for every state
 of ts.</p>
      </sec>
    </sec>
    <sec id="sec-3">
      <title>3. Optimising solutions to the synthesis problem</title>
      <p>
        In this section we recall some notions and results from [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ].
      </p>
      <p>The enl-system enlt≏s obtained from the synthesis of the enlst-system ts may contain many
conditions which are redundant from the point of view of its behaviour, .., deletion of such
conditions (and their adjacent arcs) would lead to a net that generates the st-system, which is
still isomorphic to ts.</p>
      <p>Suppose that we have reduced enlt≏s in this way obtaining a sub-enl-system enl. We would
like to reduce enl further by deleting a condition/region r (and its adjacent arcs) without, as
before, violating the property of it being an enl-system 1 and making sure that the resultant
net still generates the st-system isomorphic to ts. We denote the enl-system after such one
step reduction: enlr.</p>
      <p>
        In [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ], it was proved that complement regions are very often redundant:
Reduction Rule 1. If r = (, , ) and ¯r = (,  ∖ , ) are two conditions in enl and
deleting ¯r leads to an enl-system, then the st-systems generated by enl and enl¯r are isomorphic
and ¯r is redundant.
♢
1Every enl-system enl = (, , , ≏, 0) should satisfy: ∀ ∈  (∙  ̸= ∅ ∧ ∙ ̸= ∅ ∧ ∙  ∩ ∙ = ∅).
      </p>
      <p>
        Another source of redundancy among conditions/regions in the synthesised net are “big"
regions that are compositions of smaller regions. To define a composition operator, [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ] introduces
the concept of compatible regions.
      </p>
      <p>Definition 9. A region (, , ) is compatible with another region (′, ′, ′) if the
following three conditions hold:
2. For every  ∈  exactly one of the following holds:
• For all the transitions (, , ′) such that  ∈  we have ′ ∈ ′.</p>
      <p>• For all the transitions (, , ′) such that  ∈  we have ′ ∈/ ′.
3. For every  ∈  exactly one of the following holds:
• For all the transitions (, , ′) such that  ∈  we have  ∈ ′.</p>
      <p>• For all the transitions (, , ′) such that  ∈  we have  ∈/ ′.</p>
      <sec id="sec-3-1">
        <title>If region r is compatible with region r′ and region r′ is compatible with r we say that the two regions are compatible.</title>
        <p>♢</p>
        <p>
          In [
          <xref ref-type="bibr" rid="ref15">15</xref>
          ], it was proved that the composition of two compatible regions (defined below) is also a
region. If r = (, , ) and r′ = (′, ′, ′) are two non-trivial compatible regions of an
enlst-system ts, then the following is a (possibly trivial) region of ts:
        </p>
        <p>
          r ⊕ r′ =df ( ∪ ′ ∖ ,  ∪ ′,  ∪ ′ ∖ ),
where  is a set of events that belong only to steps labelling transitions hidden/buried in  ∪ ′
(with its source in  and its target in ′ or the other way round). The region r ⊕ r′ is called the
composition of r and r′. In [
          <xref ref-type="bibr" rid="ref15">15</xref>
          ], the following reduction rule was proved:
Reduction Rule 2. If r = (, , ), r′ = (′, ′, ′) and r ⊕ r′ are three conditions/regions
in enl, then the st-systems generated by enl and enlr⊕ r′ are isomorphic and r ⊕ r′ is redundant. ♢
        </p>
        <p>The third reduction rule considers regions of ts = (, , 0) based on the same set of states.
We will call such regions companion regions. For a given set of states , they will belong to the
set denoted by Rts.</p>
        <p>
          In [
          <xref ref-type="bibr" rid="ref15">15</xref>
          ], it was proved that if the events contained in the set  () of a region r = (, , )
can be found in the  () sets of other companion regions then r is redundant and can be
deleted. Formally:
Reduction Rule 3. Let r = (, , ) be a condition/region of enl such that:
 ⊆
 ⊆
⋃︁{′ | (′, , ′) is condition in enl diferent from r}
⋃︁{′ | (′, , ′) is condition in enl diferent from r}
Then the st-systems generated by enl and enlr are isomorphic and r is redundant.
(1)
(2)
♢
        </p>
      </sec>
    </sec>
    <sec id="sec-4">
      <title>4. Minimal regions</title>
      <p>
        For many classes of Petri nets, for which the synthesis problem was investigated, a region was
defined as a subset of states of a transition system. For such classes of nets and their transition
systems a minimal region was defined ... the set inclusion ⊂ [
        <xref ref-type="bibr" rid="ref23 ref27 ref6 ref7">6, 7, 23, 27</xref>
        ]. Also, composition
of regions (as sets) was defined by using the set union operator ( ∪), which is both commutative
and associative.
      </p>
      <p>The regions of enlst-systems are triples of the form: r = (, , ). The minimal regions
in this class of (step) transition systems are defined ... the strict pre-order ≺ on the set of
regions, that utilises the idea of regions’ composition by means of ⊕ :</p>
      <p>
        r ≺ r′ if there is a non-trivial region r′′ such that r ⊕ r′′ = r′ [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ].
      </p>
      <p>Formally, we have the following definition of a minimal region:</p>
      <sec id="sec-4-1">
        <title>Definition 10.</title>
        <p>A region r ∈ Rts is minimal if ∀ ̂r︀ ∈ Rts : ̂r︀ ̸≺ r.</p>
        <p>The set of minimal regions of ts w.r.t. ≺ will be denoted by Rts.</p>
        <p>We observe that if a non-trivial region is non-minimal then it can be represented as a
composition of two other non-trivial regions. This follows from the definition of the relation ≺
and the fact that the composition operator ⊕ is commutative, which, in turn, follows immediately
from the definition of ⊕ .</p>
        <p>As an example, consider the enlst-system in Figure 2(a). Its non-trivial regions are:
♢
r1
r2
r5
r6
= (∅, {0}, {})
= (∅, {0}, {1, 2})
= ({1}, {1}, ∅)
= ({2}, {2}, ∅)
r3
r4
r7
r8
= ¯r1 = ({}, {1, 2}, ∅)
= ¯r2 = ({1, 2}, {1, 2}, ∅)
= ¯r5 = (∅, {0, 2}, {1})
= ¯r6 = (∅, {0, 1}, {2})</p>
        <p>The minimal regions of the enlst-system in Figure 2(a) are: r1, r2, r3, r5 and r6. The remaining
regions are non-minimal (their set is denoted by R⊕ts): r4 = r5 ⊕ r6 ( = ∅); r7 = r2 ⊕ r6
( = {2}); r8 = r2 ⊕ r5 ( = {1}).</p>
        <p>The reduced enl-system solution for the enlst-system in Figure 2(a) that uses only regions
minimal ... ≺ is shown in Figure 2(c).</p>
        <p>Note that the operator ⊕ is not associative as can be shown by using, again, the example of
the enlst-system in Figure 2(a). We can observe that: (r5 ⊕ r6) ⊕ r1 ̸= r5 ⊕ (r6 ⊕ r1). While r5
and r6 are compatible and their composition produces r4 (r4 = r5 ⊕ r6), regions r6 and r1 are
not compatible, because r1 is not compatible with r6, and they cannot be composed.</p>
        <p>Also notice that there might be two companion regions (regions based on the same set of
states) such that one of them is a minimal region and the second one is a non-minimal region.
See, for example, regions r3 = ({}, {1, 2}, ∅) and r4 = ({1, 2}, {1, 2}, ∅) of the
enlstsystem in Figure 2(a), where r3 is minimal and r4 is non-minimal. So, the minimality of a region
cannot be decided by looking at its set of states only.</p>
        <p>
          The following result, about the representation of non-trivial regions, is similar to the results
proved for other classes of nets (and their transition systems) that can be found in the literature:
Elementary Net Systems [
          <xref ref-type="bibr" rid="ref6">6</xref>
          ], pure and bounded Place/Transition Nets [
          <xref ref-type="bibr" rid="ref7">7</xref>
          ], Safe Nets [
          <xref ref-type="bibr" rid="ref23">23</xref>
          ] or
Elementary Net Systems with Inhibitor Arcs (ENI-systems) [
          <xref ref-type="bibr" rid="ref27">27</xref>
          ].
        </p>
        <p>Theorem 2. Every r = (, , ) ∈ Rts can be represented as a composition of minimal
regions, where for each pair of diferent minimal regions in this representation, ̂r︀ = (̂︀, , ̂︁)
̂︀
and ̃r︀ = (, , ̃︁), ̂︀ ∩ ̃︀ = ∅.</p>
        <p>̃︀ ̃︀
Theorem 2 and Reduction Rule 2 imply that one can construct a solution to the synthesis
problem based on minimal regions ... the strict pre-order ≺ . The consequence of the fact
that the operator ⊕ is not associative, is that we cannot drop the brackets, when we represent a
non-trivial region of an enlst-system as a composition of its minimal regions (for example,
r = r1 ⊕ (r2 ⊕ . . . (r− 2 ⊕ (r− 1 ⊕ r)) . . .), where r ( = 1, . . . , ) are minimal regions in
this representation of r).</p>
      </sec>
    </sec>
    <sec id="sec-5">
      <title>5. Properties of regions</title>
      <p>In this section we gather facts regarding relationships of complementary, compatible, companion
and minimal regions of an enlst-system ts = (, , 0).</p>
      <sec id="sec-5-1">
        <title>Fact 1. Any pair of complementary regions of ts, r and ¯r, form a pair of compatible regions and</title>
        <p>r ⊕ ¯r = (∅, , ∅). ♢
From Fact 1 it follows that if ts has only minimal regions among non-trivial regions, then only
the pairs of complementary regions can be composed resulting in a trivial region.
Fact 2. Let r1 = (1, 1, 1) and r2 = (2, 2, 2) be two non-trivial compatible regions
of an enlst-system ts. Then 1 ∩ 2 = ∅ and 1 ∩ 2 = ∅.</p>
        <p>Now, we introduce a notion of strong compatibility of regions.</p>
        <p>Definition 11. A region (, , ) is strongly compatible with another region (′, ′, ′) if
the following three conditions hold:
1.  ∩ ′ = ∅.
•  ∈ in′.</p>
        <p>• For all the transitions (, , ′) such that  ∈  we have ′ ∈/ ′.
3. For every  ∈  exactly one of the following holds:
•  ∈ out′.</p>
        <p>• For all the transitions (, , ′) such that  ∈  we have  ∈/ ′.</p>
      </sec>
      <sec id="sec-5-2">
        <title>If region r is strongly compatible with region r′ and region r′ is strongly compatible with r we say that the two regions are strongly compatible.</title>
        <p>♢</p>
      </sec>
      <sec id="sec-5-3">
        <title>Fact 3. Two regions, which are strongly compatible are compatible.</title>
        <p>The composition operator defined for the strongly compatible regions (rather than compatible
regions) will be denoted by ⊕ . The strict pre-order relation for the set of regions that utilises
operator ⊕  instead of ⊕ will be denoted by ≺ . The set of minimal regions of ts w.r.t. ≺  will
be denoted by Rts,.</p>
        <p>The implication of Fact 3 is that Reduction Rule 2 works with strongly compatible regions
(we can replace operator ⊕ by ⊕  in that rule). Also, we can strengthen Fact 1 to:</p>
      </sec>
      <sec id="sec-5-4">
        <title>Fact 4. Any pair of complementary regions of ts, r and ¯r, form a pair of strongly compatible</title>
        <p>regions and r ⊕  ¯r = (∅, , ∅). ♢</p>
        <p>We will give examples of compatible and strongly compatible pairs of regions using the
enlst-system in Figure 2(a). The pairs of regions {r1, r4} and {r2, r3} are compatible, but not
strongly compatible. However, the pairs {r1, r3}, {r2, r4}, {r2, r5}, {r2, r6}, {r5, r6}, {r5, r7}
and {r6, r8} are strongly compatible pairs of regions. Observe also that the pairs {r1, r5} and
{r1, r6} are not compatible, because r1 is not compatible with neither r5 nor r6.</p>
        <p>The next proposition shows that unlike ⊕ operator, ⊕  is associative.</p>
        <p>Proposition 1. The operator ⊕  is associative.</p>
        <p>Proposition 2. Let r1 = (1, 1, 1) and r2 = (2, 2, 2) be compatible regions of an
st-system ts = (, , 0), which do not satisfy the conditions to be strongly compatible regions of
ts. Then there exists a companion region of r1, r′1 ∈ Rts1 , and a companion region of r2, r′2 ∈ Rts2 ,
such that r1 and r′2 are strongly compatible and r′1 and r2 are strongly compatible. Furthermore,
r1 ⊕  r′2 = r′1 ⊕  r2 = r1 ⊕ r2.</p>
        <p>To illustrate the result of Proposition 2, we can use again the enlst-system in Figure 2(a).
A pair of its regions, r4 and r1, are compatible, but not strongly compatible regions. However,
there are regions r3 ∈ Rts4 and r2 ∈ Rts1 , such that r4 and r2 are strongly compatible and r3
and r1 are strongly compatible. Also, we have r4 ⊕  r2 = r3 ⊕  r1 = r4 ⊕ r1 = (∅, , ∅).
Corollary 1. Let ts = (, , 0) be an enlst-system. Then
1. Rts = Rts,.
2. Every r ∈ Rts can be represented as a composition of minimal regions, where each pair of
diferent minimal regions in this representation, r = (, , ) and r′ = (′, ′, ′), is
a pair of strongly compatible regions.</p>
        <p>
          The next result, about special families of non-trivial regions of ts, is inspired by a result
proved for the class of Elementary Net Systems in [
          <xref ref-type="bibr" rid="ref6">6</xref>
          ]. We have adapted this result here to the
context of enl-systems by changing one of the original conditions that a family of regions
should satisfy, but the implied result is the same: a family of regions that satisfy the conditions
of Theorem 3, treated as a set of conditions of the synthesised net, would generate a state
machine component of this net. Points 2 and 3 of the consequent of Theorem 3 guarantee the
satisfaction of Definition 3(1) and the point 1 of the consequent of Theorem 3 guarantees the
satisfaction of Definition 3(2).
        </p>
        <p>Theorem 3. Let R = {r1, r2, . . . , r} be a family of non-trivial regions of ts = (, , 0),
where r = (, , ),  ∈ {1, . . . , }, satisfy the following:
1. Every two diferent regions r, r ∈ R are strongly compatible regions.
2. ∀ ̂r︀ = (, , ̂︁) ∈ Rts : ̂r︀ ̸∈ R =⇒ (∃r ∈ R : ̂︀ ∩  ̸= ∅).</p>
        <p>̂︀ ̂︀</p>
      </sec>
      <sec id="sec-5-5">
        <title>Then:</title>
        <p>1. ⋃︀  = ;
2. ∀ ∈  : | ∘  ∩ R| ≤ 1 and |∘ ∩ R| ≤ 1;
3. ∀ ∈  :  ∈ ∘ r ⇐⇒ ∃ :  ∈ r ∘ .</p>
        <p>
          The saturated enl-system that is a solution to Problem 1 for a given enlst-system ts, enl =
enlt≏s, and is based on all non-trivial regions, is state machine decomposable (see Definition 5),
as due to Fact 4 every pair of complementary regions satisfies the conditions of Theorem 3
and would form a state machine component of enl. Furthermore, from Corollary 1 it follows
that, similarly as for the class of Elementary Net Systems (see [
          <xref ref-type="bibr" rid="ref6">6</xref>
          ]), the enl-system obtained
from enl by deleting all non-minimal regions following Reduction Rule 2 is also state machine
decomposable as every region can be represented as a composition of minimal regions (w.r.t.
≺ ) and selected subsets of Rts = Rts, would satisfy the conditions of Theorem 3.
        </p>
        <p>As an example we can take the saturated enl-system synthesised from the enlst-system
in Figure 2(a), shown in Figure 2(b), and its minimised version shown in Figure 2(c). The
state machine components of the former enl-system are generated by the following subsets of
conditions/regions:</p>
        <p>r1 ⊕  r3 = r2 ⊕  r5 ⊕  r6 = r2 ⊕  r4 = r7 ⊕  r5 = r8 ⊕  r6 = (∅, , ∅).</p>
        <p>The minimised enl-system in Figure 2(c) has the first two state machine components from the
components listed above.</p>
      </sec>
    </sec>
    <sec id="sec-6">
      <title>6. A strategy to eliminate redundant regions</title>
      <p>
        The three reduction rules give conditions for deleting one of the redundant regions at a time.
Therefore, we need a strategy to delete as many redundant regions as possible to obtain a net,
where all (or almost all) remaining regions are needed (essential). The regions are redundant
or essential only in the context of other regions. Diferent strategies lead to diferent sets of
essential (or nearly essential) regions. Such sets of regions were called in [
        <xref ref-type="bibr" rid="ref28">28</xref>
        ] admissible.
      </p>
      <p>As an example we can take again the enlst-system in Figure 2(a). We observe that region
r4 = ¯r2 can be deleted according to Reduction Rule 1 (as the complement of region r2) or
according to Reduction Rule 2 (as a non-minimal region: r4 = r5 ⊕ r6).</p>
      <p>When looking for a strategy for deleting redundant regions, we will take into consideration
the following criteria:
• Limiting as much as possible the non-determinism in the process of computing admissible
regions.
• Efectiveness of the strategy gauged in terms of the number of the removed regions.
• Eficiency of the strategy gauged in terms of time needed to compute a set of admissible
regions.</p>
      <p>Our first attempt at formulating a strategy will be based on the first criterion listed above.
Reduction Rule 2 showed that all non-minimal regions are redundant 2, so we can eliminate
ifrst the non-minimal regions. After this step, for a given enlst-system ts, we obtain from
the unique set of regions, Rts, the unique set of minimal regions: Rts. The application of
Reduction Rule 1 and Reduction Rule 3 might not lead to a unique resultant set of regions. We
might decide to keep certain companion regions and delete other companion regions in case of
Reduction Rule 3. Similarly, we can keep both or one (random one) out of two complementary
regions. As, in general, the Reduction Rule 3, leads to fewer possible choices of regions to
delete, and might be even irrelevant in the case of thin step transition systems, where there are
no companion regions, we might decide that this rule should be applied before the Reduction
Rule 1, which can lead to many possible combinations of regions to keep/delete. This strategy,
called Strategy (2,3,1), can be defined as follows:
1. Use Reduction Rule 2 to delete all non-minimal regions.
2. Use Reduction Rule 3 to delete any redundant companion regions that might be present
among the minimal regions.
3. Use Reduction Rule 1 to delete any redundant complementary regions that might be
present after the first two steps of the strategy.</p>
      <p>
        To check how good this strategy is from the second criterion point of view we consider a set
of enlst-systems generated by nets composed of several sequential subsystems, where all the
events are co-located. Such systems have a lot of companion regions. We will call them ts,− ,
where the index  denotes the number of sequential subsystems, and the index  denotes the
2Reduction Rule 2 uses operator ⊕ and it was proved in [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ] for this operator, but from Corollary 1(1) we have
Rts = Rts,, so it does not matter whether we use ≺ and ⊕ , or ≺  and ⊕ , to define the set of minimal regions.
      </p>
      <p>()
ts
ts2,2− 
ts2,3− 
ts2,4− 
ts2,5− 
ts3,2− 
ts3,3− 
ts3,4− 
ts3,5− 
ts4,2− 
ts4,3− 
ts4,4− 
ts4,5−</p>
      <p>q0
{e, f }
q1
{g, h}
q2
e
g
f
h</p>
      <p>()
number of events in each of the line-like sequential subsystem. As an example of such a step
transition system we can see an enlst-system ts2,2−  in Figure 3(a).</p>
      <p>Using the set of step transition systems ts,−  ( = 2, . . . , 4;  = 2, . . . , 5), we compare
the efectiveness of region removal of Strategy (2,3,1) and Strategy (3,2,1) (Strategy (2,3,1) with
the first two steps reversed). The result of this comparison is presented in Table 1.</p>
      <p>The results in Table 1 are not so surprising. The removal of non-minimal regions makes only
sense in the context of all non-trivial regions (as the first step of the strategy). When removing
companion regions, the algorithm processes groups of companion regions (each based on a
shared set of states) separately from each other. From each group some subset of regions may
be removed, at random, according to Reduction Rule 3. Once some of the minimal companion
regions are removed (if we remove companion regions rfist), some of the regions that were
previously non-minimal would become minimal as it won’t be possible to represent them as
compositions of minimal regions using the remaining minimal regions. Therefore, they won’t
be deleted by the Reduction Rule 2, if it is applied after Reduction Rule 3. The results in Table 1
show how great would be the loss of efectiveness if we used Strategy (3,2,1) for enlst-systems
with a big number of companion regions.</p>
      <p>While the Reduction Rule 2, applied first in our strategy, can be considered as a method for
eliminating non-minimal regions, non-minimal from the ‘state information’ point of view, the
Reduction Rule 3 can be understood as a method for eliminating regions that are redundant
from the ‘event information’ point of view. However, some subsets of companion regions will
remain after the application of Reduction Rule 3, because they are essential as shown below:
Fact 5. Let r = (, , ) be a non-trivial region of ts = (, , 0) and let R ⊆ Rts be a set
of its companion regions (including r) that were left after the application of the Reduction Rule 3
and let |R| ≥ 2. Then all the regions of R do not satisfy the same conditions of the Reduction</p>
      <sec id="sec-6-1">
        <title>Rule 3 (all do not satisfy condition (1) or all do not satisfy condition (2) or all do not satisfy both conditions: (1) and (2)).</title>
        <p>Corollary 2. Let R = {r1, r2, . . . , r} ⊆ Rts be a set of companion regions based on  that
were left after the application of the Reduction Rule 3. Then, for every region r = (, , ) of
R that does not satisfy condition (1) (respectively (2)) of Reduction Rule 3 there exists a unique
 ⊆  (respectively ′ ⊆ ) with events that are not present in the  (respectively )
sets of other regions from R. So, companion regions of R are ‘indexed’ by the unique subsets of
events of their  (respectively ) sets. We will call these subsets of events in-indices (respectively
out-indices) of  for the regions of R. ♢
Notice that sets R in Corollary 2 (and in Fact 5) might be equal to Rts. For example, for ts in
Figure 2(a), we have R{0} = Rt{s0} = {r1, r2}. Also, the indexing sets of events do not need to
be singleton sets (as, for example, set {1, 2} for {0} of r2 of ts in Figure 2(a)).</p>
        <p>We will further illustrate the above results using the enlst-system in Figure 3(a). Its
nontrivial regions are listed below:
(∅, {0}, {})
({}, {1}, {})
({}, {2}, ∅)
({}, {1}, {ℎ})
({ℎ}, {2}, ∅)
(∅, {0}, { })
({ }, {1}, {})
({ }, {1}, {ℎ})
¯
r1
¯
r2
¯
r3
¯
r4
¯
r5
¯
r6
¯
r7
¯
r8
=
=
=
=
=
=
=
=
({}, {1, 2}, ∅)
({}, {0, 2}, {})
(∅, {0, 1}, {})
({ℎ}, {0, 2}, {})
(∅, {0, 1}, {ℎ})
({ }, {1, 2}, ∅)
({}, {0, 2}, { })
({ℎ}, {0, 2}, { })</p>
        <p>The implemented tool, after applying Reduction Rule 2, will delete 8 out of 16 regions, leaving
the minimal regions (r1 - r8). The set of minimal regions will be the same whether they are
defined w.r.t. ≺ or ≺  strict pre-order (see Corollary 1(1)) as every non-minimal region that can
be expressed as a composition of compatible regions can be also expressed as a composition of
strongly compatible regions (see Proposition 2). For example, ¯r3 = r1 ⊕  r2 = r1 ⊕ r7, where the
ifrst two regions are strongly compatible, but the second two regions are only compatible, but
not strongly compatible. The algorithm that implements Reduction Rule 3, when applied to this
example, would delete two out of four regions based on the set of states {1} leaving either r2
and r8 or r4 and r7. The remaining pairs of companion regions, based on sets of states {0},{1}
and {2}, will remain as they are essential (having diferent in-indices or/and out-indices for
the shared sets of states; see Corollary 2). The Reduction Rule 1, the last to be used in Strategy
(2,3,1), is not applicable to this example as all the complementary regions of r1 - r8 were already
deleted as non-minimal regions (see the results for ts2,2−  in Table 1).</p>
      </sec>
    </sec>
    <sec id="sec-7">
      <title>7. Conclusions</title>
      <p>In this paper we discussed the minimisation of the synthesised enl-systems and the strategy
to eliminate redundant regions that involves three reduction rules. Also, we investigated the
properties of minimal regions that play a crucial role in the minimisation process. We showed
that synthesised and minimised nets that are based on all minimal regions (after the application
of the Reduction Rule 2) do not lose the property of the saturated enl-systems of being state
machine decomposable. We believe 3 that after the application of the Reduction Rule 3 this
property still holds for the resultant net. However, after applying Reduction Rule 1, some
synthesised enl-systems are no longer decomposable. As an example, we can take the
enlstsystem generated by the enl-system in Figure 1. The synthesis procedure for this example will
produce a saturated net that has only minimal regions (12 regions). Some of them are redundant
and can be deleted according to Reduction Rule 1. Figure 1 shows one of the possible minimised
versions of this net that is not state machine decomposable.</p>
      <p>In the future work, we plan to investigate the relationship between the split of enl-systems
into state machine components (based on conditions) and the split into localities (based on
events). Also, we want to develop an improved algorithm implementing Reduction Rule 1, which
would allow to target certain regions for deletion from the pairs of complementary regions.
Acknowledgement
We are grateful to the anonymous reviewers for their constructive comments, which have
helped us to improve the presentation of the paper and to clarify our ideas.</p>
      <p>The first author is grateful to the National Transitional Council of Libya for funding her PhD
studentship and research.
3This still needs to be formally proved.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>S.</given-names>
            <surname>Dasgupta</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Potop-Butucaru</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            <surname>Caillaud</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Yakovlev</surname>
          </string-name>
          ,
          <article-title>Moving from weakly endochronous systems to delay-insensitive circuits</article-title>
          ,
          <source>Electronic Notes in Theoretical Compututer Science</source>
          <volume>146</volume>
          (
          <year>2006</year>
          )
          <fpage>81</fpage>
          -
          <lpage>103</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>G.</given-names>
            <surname>Păun</surname>
          </string-name>
          ,
          <source>Membrane Computing: An Introduction, Natural Computing Series</source>
          , Springer,
          <year>2002</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>J.</given-names>
            <surname>Kleijn</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Koutny</surname>
          </string-name>
          , G. Rozenberg,
          <article-title>Towards a Petri net semantics for membrane systems</article-title>
          , in: R. Freund, G. Paun,
          <string-name>
            <given-names>G.</given-names>
            <surname>Rozenberg</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A</given-names>
            . Salomaa (Eds.),
            <surname>Membrane</surname>
          </string-name>
          <string-name>
            <surname>Computing</surname>
          </string-name>
          , 6th International Workshop, WMC 2005, Vienna, Austria,
          <source>July 18-21</source>
          ,
          <year>2005</year>
          ,
          <string-name>
            <given-names>Revised</given-names>
            <surname>Selected</surname>
          </string-name>
          and Invited Papers, volume
          <volume>3850</volume>
          of Lecture Notes in Computer Science, Springer,
          <year>2005</year>
          , pp.
          <fpage>292</fpage>
          -
          <lpage>309</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <given-names>A.</given-names>
            <surname>Ehrenfeucht</surname>
          </string-name>
          ,
          <string-name>
            <surname>G.</surname>
          </string-name>
          <article-title>Rozenberg, Partial (set) 2-structures</article-title>
          . Part I:
          <article-title>Basic notions and the representation problem. Part II: State spaces of concurrent systems</article-title>
          ,
          <source>Acta Informatica</source>
          <volume>27</volume>
          (
          <year>1990</year>
          )
          <fpage>315</fpage>
          -
          <lpage>368</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <given-names>É.</given-names>
            <surname>Badouel</surname>
          </string-name>
          , P. Darondeau, Theory of regions, in: W. Reisig, G. Rozenberg (Eds.),
          <source>Lectures on Petri Nets I: Basic Models, Advances in Petri Nets</source>
          , volume
          <volume>1491</volume>
          of Lecture Notes in Computer Science, Springer,
          <year>1996</year>
          , pp.
          <fpage>529</fpage>
          -
          <lpage>586</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <given-names>L.</given-names>
            <surname>Bernardinello</surname>
          </string-name>
          ,
          <article-title>Synthesis of net systems</article-title>
          , in: M. A.
          <string-name>
            <surname>Marsan</surname>
          </string-name>
          (Ed.),
          <source>Application and Theory of Petri Nets</source>
          <year>1993</year>
          , 14th International Conference, Chicago, Illinois, USA, June 21-25,
          <year>1993</year>
          . Proceedings, volume
          <volume>691</volume>
          of Lecture Notes in Computer Science, Springer,
          <year>1993</year>
          , pp.
          <fpage>89</fpage>
          -
          <lpage>105</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <given-names>L.</given-names>
            <surname>Bernardinello</surname>
          </string-name>
          ,
          <string-name>
            <given-names>G. D.</given-names>
            <surname>Michelis</surname>
          </string-name>
          ,
          <string-name>
            <given-names>K.</given-names>
            <surname>Petruni</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Vigna</surname>
          </string-name>
          ,
          <article-title>On the synchronic structure of transition systems</article-title>
          , in: J.
          <string-name>
            <surname>Desel</surname>
          </string-name>
          (Ed.),
          <source>Proceedings of the International Workshop on Structures in Concurrency Theory, STRICT</source>
          <year>1995</year>
          , Berlin, Germany, May 11-13,
          <year>1995</year>
          , Workshops in Computing, Springer,
          <year>1995</year>
          , pp.
          <fpage>69</fpage>
          -
          <lpage>84</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [8]
          <string-name>
            <given-names>M.</given-names>
            <surname>Mukund</surname>
          </string-name>
          ,
          <article-title>Petri nets and step transition systems</article-title>
          ,
          <source>International Journal of Foundations of Computer Science</source>
          <volume>3</volume>
          (
          <year>1992</year>
          )
          <fpage>443</fpage>
          -
          <lpage>478</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [9]
          <string-name>
            <given-names>M.</given-names>
            <surname>Nielsen</surname>
          </string-name>
          , G. Rozenberg,
          <string-name>
            <given-names>P. S.</given-names>
            <surname>Thiagarajan</surname>
          </string-name>
          ,
          <article-title>Elementary transition systems</article-title>
          ,
          <source>Theoretical Computer Science</source>
          <volume>96</volume>
          (
          <year>1992</year>
          )
          <fpage>3</fpage>
          -
          <lpage>33</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          [10]
          <string-name>
            <given-names>M.</given-names>
            <surname>Pietkiewicz-Koutny</surname>
          </string-name>
          ,
          <article-title>The synthesis problem for elementary net systems with inhibitor arcs</article-title>
          ,
          <source>Fundamenta Informaticae</source>
          <volume>40</volume>
          (
          <year>1999</year>
          )
          <fpage>251</fpage>
          -
          <lpage>283</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          [11]
          <string-name>
            <surname>É. Badouel</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          <string-name>
            <surname>Bernardinello</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          <string-name>
            <surname>Darondeau</surname>
          </string-name>
          , Petri Net Synthesis,
          <source>Texts in Theoretical Computer Science. An EATCS Series</source>
          , Springer,
          <year>2015</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          [12]
          <string-name>
            <given-names>M.</given-names>
            <surname>Koutny</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Pietkiewicz-Koutny</surname>
          </string-name>
          ,
          <article-title>Transition systems of elementary net systems with localities</article-title>
          , in: C. Baier, H. Hermanns (Eds.),
          <source>Concurrency Theory</source>
          <year>2006</year>
          , 17th International Conference, CONCUR 2006, Bonn, Germany,
          <source>August 27-30</source>
          ,
          <year>2006</year>
          . Proceedings, volume
          <volume>4137</volume>
          of Lecture Notes in Computer Science, Springer,
          <year>2006</year>
          , pp.
          <fpage>173</fpage>
          -
          <lpage>187</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          [13]
          <string-name>
            <given-names>M.</given-names>
            <surname>Koutny</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Pietkiewicz-Koutny</surname>
          </string-name>
          ,
          <article-title>Synthesis of elementary net systems with context arcs and localities</article-title>
          ,
          <source>Fundamenta Informaticae</source>
          <volume>88</volume>
          (
          <year>2008</year>
          )
          <fpage>307</fpage>
          -
          <lpage>328</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          [14]
          <string-name>
            <given-names>M.</given-names>
            <surname>Koutny</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Pietkiewicz-Koutny</surname>
          </string-name>
          ,
          <article-title>Synthesis of Petri nets with localities</article-title>
          ,
          <source>Scientific Annals of Computer Science</source>
          <volume>19</volume>
          (
          <year>2009</year>
          )
          <fpage>1</fpage>
          -
          <lpage>23</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          [15]
          <string-name>
            <given-names>M.</given-names>
            <surname>Koutny</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Pietkiewicz-Koutny</surname>
          </string-name>
          ,
          <article-title>Minimal regions of ENL-transition systems</article-title>
          ,
          <source>Fundamenta Informaticae</source>
          <volume>101</volume>
          (
          <year>2010</year>
          )
          <fpage>45</fpage>
          -
          <lpage>58</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          [16]
          <string-name>
            <given-names>A.</given-names>
            <surname>Ahmed</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Pietkiewicz-Koutny</surname>
          </string-name>
          ,
          <article-title>Algorithms for the synthesis of elementary net systems with localities</article-title>
          , in: M.
          <string-name>
            <surname>Köhler-Bußmeier</surname>
            ,
            <given-names>E.</given-names>
          </string-name>
          <string-name>
            <surname>Kindler</surname>
          </string-name>
          , H. Rölke (Eds.),
          <source>Proceedings of the International Workshop on Petri Nets and Software Engineering</source>
          ,
          <string-name>
            <surname>PNSE</surname>
          </string-name>
          <year>2020</year>
          , Paris, France, June 24,
          <year>2020</year>
          (due to COVID-19
          <source>: virtual workshop)</source>
          , volume
          <volume>2651</volume>
          <source>of CEUR Workshop Proceedings, CEUR-WS.org</source>
          ,
          <year>2020</year>
          , pp.
          <fpage>86</fpage>
          -
          <lpage>107</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          [17]
          <string-name>
            <given-names>A.</given-names>
            <surname>Ahmed</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Koutny</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Pietkiewicz-Koutny</surname>
          </string-name>
          ,
          <article-title>Synthesising elementary net systems with localities</article-title>
          ,
          <source>Theoretical Computer Science</source>
          <volume>908</volume>
          (
          <year>2022</year>
          )
          <fpage>123</fpage>
          -
          <lpage>140</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          [18]
          <string-name>
            <surname>W. M. P. van der Aalst</surname>
            ,
            <given-names>B. F. van Dongen</given-names>
          </string-name>
          ,
          <string-name>
            <given-names>C. W.</given-names>
            <surname>Günther</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Rozinat</surname>
          </string-name>
          , E. Verbeek, T. Weijters,
          <article-title>Prom: The process mining toolkit</article-title>
          , in: A.
          <string-name>
            <surname>K. A. de Medeiros</surname>
          </string-name>
          , B. Weber (Eds.),
          <source>Proceedings of the Business Process Management Demonstration Track (BPMDemos</source>
          <year>2009</year>
          ), Ulm, Germany, September 8,
          <year>2009</year>
          , volume
          <volume>489</volume>
          <source>of CEUR Workshop Proceedings, CEUR-WS.org</source>
          ,
          <year>2009</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          [19]
          <string-name>
            <given-names>R.</given-names>
            <surname>Bergenthum</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Desel</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Lorenz</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Mauser</surname>
          </string-name>
          ,
          <article-title>Synthesis of Petri nets from scenarios with viptool, in:</article-title>
          <string-name>
            <surname>K. M. van Hee</surname>
          </string-name>
          , R. Valk (Eds.),
          <source>Applications and Theory of Petri Nets</source>
          , 29th International Conference,
          <source>PETRI NETS</source>
          <year>2008</year>
          ,
          <article-title>Xi'an, China</article-title>
          , June 23-27,
          <year>2008</year>
          . Proceedings, volume
          <volume>5062</volume>
          of Lecture Notes in Computer Science, Springer,
          <year>2008</year>
          , pp.
          <fpage>388</fpage>
          -
          <lpage>398</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          [20]
          <string-name>
            <given-names>R.</given-names>
            <surname>Bergenthum</surname>
          </string-name>
          ,
          <article-title>Prime miner - process discovery using prime event structures</article-title>
          , in: International Conference on Process Mining,
          <string-name>
            <surname>ICPM</surname>
          </string-name>
          <year>2019</year>
          , Aachen, Germany, June 24-26,
          <year>2019</year>
          , IEEE,
          <year>2019</year>
          , pp.
          <fpage>41</fpage>
          -
          <lpage>48</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref21">
        <mixed-citation>
          [21]
          <string-name>
            <given-names>J.</given-names>
            <surname>Carmona</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Cortadella</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Kishinevsky</surname>
          </string-name>
          ,
          <article-title>Genet: A tool for the synthesis and mining of Petri nets</article-title>
          , in: Application of Concurrency to System
          <source>Design</source>
          <year>2009</year>
          , 9th International Conference, ACSD 2009, Augsburg, Germany,
          <fpage>1</fpage>
          -
          <issue>3</issue>
          <year>July 2009</year>
          , IEEE Computer Society,
          <year>2009</year>
          , pp.
          <fpage>181</fpage>
          -
          <lpage>185</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref22">
        <mixed-citation>
          [22]
          <string-name>
            <given-names>J.</given-names>
            <surname>Cortadella</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Kishinevsky</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Kondratyev</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L.</given-names>
            <surname>Lavagno</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Yakovlev</surname>
          </string-name>
          ,
          <article-title>Petrify: A tool for manipulating concurrent specifications and synthesis of asynchronous controllers</article-title>
          ,
          <source>IEICE Transactions on Information and Systems</source>
          E80-D (
          <year>1997</year>
          )
          <fpage>315</fpage>
          -
          <lpage>325</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref23">
        <mixed-citation>
          [23]
          <string-name>
            <given-names>J.</given-names>
            <surname>Cortadella</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Kishinevsky</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Kondratyev</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L.</given-names>
            <surname>Lavagno</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Yakovlev</surname>
          </string-name>
          ,
          <source>Logic Synthesis of Asynchronous Controllers and Interfaces</source>
          , Springer Berlin Heidelberg,
          <year>2002</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref24">
        <mixed-citation>
          [24]
          <string-name>
            <given-names>L. L.</given-names>
            <surname>Mannel</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Bergenthum</surname>
          </string-name>
          ,
          <string-name>
            <surname>W. M. P. van der Aalst</surname>
          </string-name>
          ,
          <article-title>Removing implicit places using regions for process discovery</article-title>
          , in: W. M. P. van der Aalst,
          <string-name>
            <given-names>R.</given-names>
            <surname>Bergenthum</surname>
          </string-name>
          , J. Carmona (Eds.),
          <source>Proceedings of the International Workshop on Algorithms &amp; Theories for the Analysis of Event Data</source>
          <year>2020</year>
          ,
          <string-name>
            <surname>ATAED</surname>
          </string-name>
          <year>2020</year>
          , Paris, France, June 24,
          <year>2020</year>
          (due to COVID-19
          <source>: virtual workshop)</source>
          , volume
          <volume>2625</volume>
          <source>of CEUR Workshop Proceedings, CEUR-WS.org</source>
          ,
          <year>2020</year>
          , pp.
          <fpage>20</fpage>
          -
          <lpage>32</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref25">
        <mixed-citation>
          [25]
          <string-name>
            <given-names>I.</given-names>
            <surname>Poliakov</surname>
          </string-name>
          ,
          <string-name>
            <given-names>V.</given-names>
            <surname>Khomenko</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Yakovlev</surname>
          </string-name>
          ,
          <article-title>Workcraft - A framework for interpreted graph models</article-title>
          , in: G. Franceschinis,
          <string-name>
            <surname>K.</surname>
          </string-name>
          Wolf (Eds.),
          <source>Applications and Theory of Petri Nets</source>
          , 30th International Conference,
          <source>PETRI NETS</source>
          <year>2009</year>
          , Paris, France, June 22-26,
          <year>2009</year>
          . Proceedings, volume
          <volume>5606</volume>
          of Lecture Notes in Computer Science, Springer,
          <year>2009</year>
          , pp.
          <fpage>333</fpage>
          -
          <lpage>342</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref26">
        <mixed-citation>
          [26]
          <string-name>
            <surname>Workcraft</surname>
          </string-name>
          , https://workcraft.org/,
          <year>2018</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref27">
        <mixed-citation>
          [27]
          <string-name>
            <given-names>M.</given-names>
            <surname>Pietkiewicz-Koutny</surname>
          </string-name>
          ,
          <article-title>Synthesis of ENI-systems using minimal regions</article-title>
          , in: D.
          <string-name>
            <surname>Sangiorgi</surname>
          </string-name>
          , R. de Simone (Eds.),
          <source>Concurrency Theory</source>
          <year>1998</year>
          , 9th International Conference, CONCUR 1998: Nice, France, September 8-
          <issue>11</issue>
          ,
          <year>1998</year>
          . Proceedings, volume
          <volume>1466</volume>
          of Lecture Notes in Computer Science, Springer,
          <year>1998</year>
          , pp.
          <fpage>565</fpage>
          -
          <lpage>580</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref28">
        <mixed-citation>
          [28]
          <string-name>
            <given-names>J.</given-names>
            <surname>Desel</surname>
          </string-name>
          , W. Reisig,
          <article-title>The synthesis problem of Petri nets</article-title>
          ,
          <source>Acta Informatica</source>
          <volume>33</volume>
          (
          <year>1996</year>
          )
          <fpage>297</fpage>
          -
          <lpage>315</lpage>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>