<!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>Synthesis of Labelled Transition Systems into Equal-Conflict Petri Nets</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Uli Schlachter?</string-name>
          <email>schlachter@informatik.uni-oldenburg.de</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Valentin Spreckels</string-name>
          <email>spreckels@informatik.uni-oldenburg.de</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Department of Computing Science, Carl von Ossietzky Universität D-26111 Oldenburg</institution>
          ,
          <country country="DE">Germany</country>
        </aff>
      </contrib-group>
      <fpage>122</fpage>
      <lpage>130</lpage>
      <abstract>
        <p>This paper introduces properties preset-equality for equalconflict Petri nets and enabling-equivalence for their reachability graphs. It explores the relation between these properties and shows its use for synthesis of equal-conflict Petri nets from labelled transition systems. ? Supported by DFG (German Research Foundation) through grant Be 1267/15-1 ARS (Algorithms for Reengineering and Synthesis).</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>Introduction</title>
      <p>
        The task in Petri net synthesis is to construct a Petri net whose reachability
graph is isomorphic to a given labelled transition system (lts). The theory behind
Petri net synthesis is based on regions of the lts and goes back to [
        <xref ref-type="bibr" rid="ref16 ref17">16,17</xref>
        ]. It was
developed for many classes of Petri nets [
        <xref ref-type="bibr" rid="ref1 ref2 ref4 ref6 ref7 ref8">4,1,2,6,7,8</xref>
        ] and was implemented in
several tools, e.g. Petrify [
        <xref ref-type="bibr" rid="ref13 ref14 ref15">14,13,15</xref>
        ], GENET [
        <xref ref-type="bibr" rid="ref11 ref12">12,11</xref>
        ], Synet [
        <xref ref-type="bibr" rid="ref1 ref3">1,3</xref>
        ], and our own
tool APT [
        <xref ref-type="bibr" rid="ref10 ref20 ref9">10,9,20</xref>
        ].
      </p>
      <p>In this paper, we investigate the synthesis of equal-conflict Petri nets.
Equalconflictness is a combination of two other properties: All transitions consuming
tokens from a place consume the same number of tokens (homogeneous) and
transitions with non-disjoint presets have equal presets (weighted free-choice).</p>
      <p>
        Our approach has two phases: First we identify structural constraints on the
desired Petri net based on the lts. Then a predicate is formulated that restricts
regions so that only equal-conflict solutions are found. This predicate can then
be used in the framework of [
        <xref ref-type="bibr" rid="ref20">20</xref>
        ] to actually produce a Petri net. Combining
this predicate with the existing predicate for plain yields a predicate for (plain)
free-choice Petri nets.
      </p>
      <p>Figure 1 shows that equal-conflict Petri nets are less expressive than general
Petri nets. It shows an lts A and a Petri net N so that RG(N ) ∼= A, but no
equal-conflict Petri net can generate A, as will be shown later.</p>
      <p>After the preliminaries in section 2, section 3 defines the predicate announced
above and shows its correctness. Section 4 extends this result to plain and pure
Petri nets and Section 5 concludes this paper.</p>
    </sec>
    <sec id="sec-2">
      <title>Petri Nets, Labelled Transition Systems and Regions</title>
      <p>A (finite, initially marked, place-transition, arc-weighted, unlabelled) Petri net
is a tuple (P, T, F, M0) such that P is a finite set of places, T is a finite set of
transitions, with P ∩ T = ∅, F is a flow function F : ((P × T ) ∪ (T × P )) → N, and
M0 is the initial marking, where a marking is a mapping M : P → N, indicating
the number of tokens in each place. F (p, t) = w &gt; 0 (resp. F (t, p) = w &gt; 0)
means that there is an arc from p to t (resp. from t to p) with arc weight w. A
transition t ∈ T is enabled by a marking M , denoted by M [ti, if for all places
p ∈ P , M (p) ≥ F (p, t). If t is enabled at M , then t can occur (or fire ) in M ,
leading to the marking M 0 defined by ∀p ∈ P : M 0(p) = M (p) − F (p, t) + F (t, p)
(notation: M [tiM 0). We denote by [M0i the set of markings, which are reachable
from M0 by (repeated) firing. For a place p of a Petri net N = (P, T, F, M0), let
•p = {t ∈ T | F (t, p) &gt; 0} be its preset, and p• = {t ∈ T | F (p, t) &gt; 0} its postset.
Analogously, for a transition t define its preset as •t = {p ∈ P | F (p, t) &gt; 0},
and its postset as t• = {p ∈ P | F (t, p) &gt; 0}. N is called pure or side-condition
free if p• ∩ •p = ∅ for all p ∈ P ; plain (also known as ordinary) if F (t, p) ≤ 1
and F (p, t) ≤ 1 for all p ∈ P and t ∈ T ; bounded if ∃k ∈ N : ∀M ∈ [M0i : ∀p ∈
P : M (p) ≤ k (i.e., a limit of the number of tokens on any place exists); simply live
if ∀t ∈ T : ∃M ∈ [M0i : M [ti; homogeneous if ∀p ∈ P : ∃k ∈ N : ∀t ∈ p• : F (p, t) =
k; weighted free-choice if ∀t1, t2 ∈ T : •t1 ∩•t2 6= ∅ ⇒ •t1 = •t2; and equal-conflict
if it is homogeneous and weighted free-choice.</p>
      <p>An lts (labelled transition system with initial state) is a tuple (S, →, T, s0),
where S is a set of states, T is a set of labels with S ∩ T = ∅, → ⊆ (S × T × S) is
the transition relation, and s0 ∈ S is an initial state. A label t is enabled in a state
s if there is some state s0 such that (s, t, s0) ∈ →. Two lts A1 = (S1, →1, T, s01)
and A2 = (S2, →2, T, s02) over the same set of labels T are isomorphic (notation:
A1 =∼ A2) if there is a bijection ζ : S1 → S2 with ζ(s01) = s02 and (s, t, s0) ∈
→1 ⇐⇒ (ζ(s), t, ζ(s0)) ∈ →2, for all s, s0 ∈ S1.</p>
      <p>The reachability graph of N , with initial marking M0 and transitions T , is
the lts RG(N ) = ([M0i, {(M, t, M 0) | M, M 0 ∈ [M0i ∧ t ∈ T ∧ M [tiM 0}, T, M0).
If an lts A is isomorphic to the reachability graph of a Petri net N , then we will
also say that N is a solution of A.</p>
      <p>A region of an lts A = (S, →, T, s0) is a tuple (R, B, F) ∈ (NS , NT , NT ) such
that for all arcs (s, t, s0) ∈ → in A, both R(s) ≥ B(t) and R(s0) = R(s) − B(t) +
F(t) hold. Intuitively, this describes a possible place in a Petri net generating A
where B(t), resp. F(t), describes the number of tokens consumed, resp. produced,
by a transition t ∈ T and R(s) is the number of tokens on this place in state
s ∈ S. The requirement above then describes an occurrence of transition t. Thus,
a region corresponds to a Petri net with a single place. Similarly, a set of regions
corresponds to a Petri net with multiple places. We call a region homogeneous
if its corresponding Petri net is homogeneous and use the same convention for
sets of regions and other properties, like equal-conflict and weighted free-choice.
3</p>
    </sec>
    <sec id="sec-3">
      <title>Equal-Conflict Synthesis</title>
      <p>This section investigates the following two properties: Two transitions t1, t2 ∈ T
of a Petri net N are preset-equal if they have the same preset, •t1 = •t2. Two
labels t1, t2 ∈ T of an lts A are enabling-equivalent if no state s ∈ S only
enables one of the two labels, i.e. ∀s ∈ S : (∃s0 ∈ S : (s, t1, s0) ∈ →) ⇔ (∃s0 ∈
S : (s, t2, s0) ∈ →).</p>
      <p>As an example for this definition, consider the equal-conflict Petri net N from
Figure 2. The transition t1 is not preset-equal with any other transition, but t2
and t3 are preset-equal. A similar relationship can be seen in RG(N ): There are
states where only t1 is enabled, so it is not enabling-equivalent with any other
label, but t2 and t3 are enabling-equivalent.</p>
      <p>The following theorems show that these two properties (almost) imply each
other in equal-conflict Petri nets and their reachability graphs. This relationship
is then used to define additional constraints on the regions found by Petri net
synthesis, so that equal-conflict Petri nets are computed.</p>
      <p>Theorem 1. Let N be a homogeneous Petri net. Then the preset-equal property
on N implies the enabling-equivalence property on RG(N ).</p>
      <p>Proof. Let t1, t2 ∈ T be two preset-equal transitions. Since N is homogeneous,
we get for each p ∈ P that F (p, t1) = F (p, t2). By the definition of enabledness,
any given marking enables either both transitions or neither.
tu
This theorem allows us to show that there is no equal-conflict Petri net N with
RG(N ) ∼= A, where A was shown in Figure 1. Assume that an equal-conflict Petri
net N exists. We can see that t1 and t3 are not enabling-equivalent, because in s3
only t1 is enabled. By the previous theorem, they are not preset-equal. Since we
are desiring an equal-conflict solution, they must have disjoint presets. However,
in the initial state both t1 and t3 are enabled, but firing one of them disables
the other. This is only possible if they have non-disjoint presets in N , hence we
get a contradiction. Thus, there is no equal-conflict Petri net that generates A.</p>
      <p>For the opposite implication, namely deriving preset-equality from
enablingequivalence, we can only show a weaker result: There is a Petri net where
enabling-equivalent transitions are preset-equal. Examples for this construction
are provided in Figure 3.</p>
      <p>Theorem 2. Let N be an equal-conflict Petri net. Then there is an
equalconflict Petri net N 0 with RG(N ) = RG(N 0) so that enabling-equivalent
transitions in RG(N 0) are preset-equal in N 0.</p>
      <p>Proof. The following step can inductively be used to modify N so that any
t1, t2 ∈ T which are enabling-equivalent, but not preset-equal, become
presetequal. The result of this construction will be the needed N 0.</p>
      <p>For any transition t3 that is preset-equal with t2 (including t2 itself) and
any place p ∈ •t1, add a side-condition between t3 and p with weight F (p, t1).
This means both F (p, t3) (previously zero by assumption) and F (t3, p) (possibly
non-zero) are increased by F (p, t1). Also, do the analogous operation with t1 and
t2 swapped.</p>
      <p>The resulting net will still be equal-conflict by construction, but it will also
satisfy •t1 = •t2. Also, its behaviour was not modified, because the effects of
transitions were not modified and no transition becomes disabled in a marking
that previously enabled it, because by enabling-equivalence enough tokens for
the added flows are available. tu
N1 :</p>
      <p>N10 :</p>
      <p>N2 :</p>
      <p>N20 :
2
t1
t2
2
t1
t2
t1
t2
t1
t2</p>
      <p>With the results so far we can assume w.l.o.g. that in equal-conflict Petri nets,
transitions are enabling-equivalent iff they are preset-equal. This can be used to
define a predicate on regions, as follows.</p>
      <p>Let an lts A over the set of labels T be given that should be solved by an
equal-conflict Petri net N with A ∼= RG(N ). First, the enabling-equivalent labels
in A are computed. This produces a partitioning E ⊆ 2T of the set of labels into
enabling-equivalent classes. Next, we say that a region (R, B, F) is compatible
with the desired equal-conflict Petri net N = (P, T, F, M0), if it is homogeneous,
meaning that for all transitions t1, t2 ∈ T if B(t1) &gt; 0 ∧ B(t2) &gt; 0 then B(t1) =
B(t2), and its postset is in E ∪ {∅}. These two conditions (homogeneous and
postset in E) are expressed by the following predicate:</p>
      <p>_
e∈E∪{∅}

</p>
      <p>^
t1,t2∈e</p>
      <p>B(t1) = B(t2) ∧ B(t2) &gt; 0
!</p>
      <p>
∧ ^ B(t) = 0</p>
      <p>
        
t6∈e
The algorithm from [
        <xref ref-type="bibr" rid="ref20">20</xref>
        ] formalises regions as an SMT problem [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ] and then
solves this problem. Adding this new predicate to the SMT problem yields an
algorithm for the synthesis of equal-conflict Petri nets.
      </p>
      <p>As an example of this, let us come back to the lts A from Figure 1. We
already argued that this lts cannot be solved by an equal-conflict Petri net and
will now look more formally at this problem. Because no two labels are
enablingequivalent, we have E = {{t1}, {t2}, {t3}}. Our predicate indicates that at most
one transition can consume tokens from a place.</p>
      <p>We will try to find a region (R, B, F) that prevents1 t1 in state s2, i.e. that
satisfies R(s2) &lt; B(t1). From this formula we already conclude that 0 &lt; B(t1),
because R(s2) ∈ N. By definition of a region, we have R(s0) − B(t3) + F(t3) =
R(s2) &lt; B(t1). Because of the edge (s0, t1, s1) we know by definition of a region
that B(t1) ≤ R(s0). Adding the last two inequalities produces −B(t3)+F(t3) &lt; 0,
which implies that 0 &lt; B(t3). Thus, we have shown that 0 &lt; B(t1) and 0 &lt; B(t3),
which is however not compatible with the predicate, since there is no e ∈ E ∪ {∅}
with t1, t3 ∈ e. This means that the assumption that t1 can be prevented in state
s2 was wrong and A cannot be solved by an equal-conflict Petri net.
Theorem 3. Given a finite lts A, the synthesis procedure produces an
equalconflict Petri net NR with RG(NR) ∼= A iff there is an equal-conflict Petri net
N with RG(N ) ∼= A.</p>
      <p>Proof. (⇒): If the algorithm finds a Petri net N , then each place of N
corresponds to a region satisfying the predicate. This means that N is homogeneous
and the postset of each place is in E ∪ {∅}. Since elements of E are disjoint, N
is an equal-conflict Petri net.</p>
      <p>
        (⇐): To show that a solution is always found if one exists, assume a suitable
Petri net N exists. By Theorem 2 we can w.l.o.g. assume that enabling-equivalent
transitions are preset-equal in N . The contraposition of Theorem 1 shows that
non-enabling-equivalent transitions must not be preset-equal, which means that
their presets must be disjoint by weighted free-choice. Thus, the regions
corresponding to the places of N satisfy the above predicate and are a possible result
of the algorithm. tu
1 We are attempting to solve the ESSP instance (s2, t1). For more details, see [
        <xref ref-type="bibr" rid="ref20">20</xref>
        ]
      </p>
    </sec>
    <sec id="sec-4">
      <title>Incorporating Additional Properties</title>
      <p>
        So far we can synthesise equal-conflict Petri nets via the new predicate and the
algorithm from [
        <xref ref-type="bibr" rid="ref20">20</xref>
        ]. However, the later algorithm allows to combine multiple
predicates so that, for example, pure equal-conflict Petri nets are found.
Specifically, predicates for the following properties are given: plain, pure, conflict-free,
homogeneous, k-bounded, generalised T-net, generalised marked graph,
placeoutput-nonbranching, and distributed. In this section, we show that these
predicates can be combined with the new predicate for equal-conflict synthesis.
      </p>
      <p>Theorem 2 is not applicable for synthesising pure equal-conflict Petri nets,
because it only shows the existence of an equivalent non-pure Petri net, as the
example N2 and N20 in Figure 3 demonstrates. Additionally, Figure 4 has an
example N3 and N30 showing that plainness is not preserved, too. All properties
from the list above except for plain and pure are unaffected by the construction
from Theorem 2, or are already more restrictive than equal-conflictness. The
following Theorem 4 closes this gap.</p>
      <p>N3 :</p>
      <p>N4 :
t1</p>
      <p>t2
t3</p>
      <p>N30 :
t1
t2
t1
2
t2
N400 :</p>
      <p>N300 :
t3
t1</p>
      <p>t2
t1
t2</p>
      <p>Theorem 4. Let N be an equal-conflict Petri net that is pure or both bounded
and plain. Then there is an equal-conflict Petri net N 0 with RG(N ) ∼= RG(N 0)
so that enabling-equivalent transitions in RG(N 0) are preset-equal in N 0.
Additionally, N 0 is pure if N is pure and plain if N is plain.</p>
      <p>Proof. First we modify the transitions which can never occur, so that we can
assume simple liveness for the remaining transitions. Let D ⊆ T be the set of
all such dead transitions. We construct N 0 by removing all flows connected to a
transition in D. Then, we add a new place p with M0(p) = 0 and add flows so that
∀t ∈ D : F (p, t) = 1. This place ensures that all transitions in D cannot occur.
Because dead transitions do not influence the behaviour of the Petri net, we have
RG(N ) ∼= RG(N 0). Also, this construction preserves plainness and pureness.</p>
      <p>Next, let T 0 ⊆ T be a set of pairwise enabling-equivalent transitions
containing t1, t2 ∈ T 0 that are not preset-equal. By simple liveness, there are two cases:
Either there are reachable markings M, M 0 with M 0[t1iM and ¬M [t1i, or t1 can
be fired infinitely often once it is enabled.</p>
      <p>In the first case, by enabling-equivalence we get M 0[t2iM and ¬M [t2i. Thus,
firing t1 disables t2 and by the firing rule we deduce •t1 ∩ •t2 6= ∅. Because N is
weighted free-choice, this implies that •t1 = •t2. Since t2 was arbitrary, we have
that all transitions that are enabling-equivalent with t1 are in fact preset-equal
with it. Thus, in this case we have N 0 = N .</p>
      <p>In the latter case, by the firing rule we have ∀p ∈ P : F (t1, p) ≥ F (p, t1).
If N is pure (and possibly plain), it follows that F (p, t1) = 0 and so t1 has an
empty preset. By enabling-equivalence we get analogously •t2 = ∅ and hence
•t1 = ∅ = •t2. We have again N 0 = N .</p>
      <p>If N is bounded and plain, then by boundedness we get ∀p ∈ P : F (t1, p) =
F (p, t1) ∧ F (t2, p) = F (p, t2). By plainness, the only option for t1 and t2 not
to be preset-equal is if (w.l.o.g.) F (t1, p) = 1 and F (t2, p) = 0 for some place
p ∈ P . Let T 00 ⊆ T 0 contain all transitions t ∈ T 0 with F (t, p) = 0. We can add
a side condition between each t ∈ T 00 and p of weight one without modifying
the behaviour of the Petri net, because by enabling-equivalence with t1 there is
always a token in p when t ∈ T 00 is enabled. This produces the pure and
equalconflict Petri net N 0 with RG(N 0) = RG(N ).
tu
With this theorem, the construction from the previous section also works when
the new predicate for equal-conflict Petri net synthesis is combined with
predicates for other properties.
5</p>
    </sec>
    <sec id="sec-5">
      <title>Conclusion</title>
      <p>
        In this paper we extended the family of Petri net classes which can be targeted
for Petri net synthesis. The synthesis can now target equal-conflict Petri nets
and, by combination with other predicates (c.f. [
        <xref ref-type="bibr" rid="ref20">20</xref>
        ]) also sub-classes, e.g.
freechoice2, which was identified as problematic in [
        <xref ref-type="bibr" rid="ref20">20</xref>
        ], because it was not clear
how to identify transitions that should have the same presets. This problem was
solved by introducing a preprocessing step that identifies which transitions
necessarily have the same presets based on the structure of the lts to be synthesised.
The result of this preprocessing step is then used to formulate a predicate that
restricts the places found by Petri net synthesis.
      </p>
      <p>
        A construction similar to Theorem 2 is called equalisation in [
        <xref ref-type="bibr" rid="ref19">19</xref>
        ], but used
in a different context. In [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ] the synthesis of free-choice Petri nets is handled by
label splitting, which means that in the resulting Petri net different transitions
might produce the same event, which our approach avoids. Another algorithm
2 Combining equal-conflict with plain restricts to homogeneous free-choice Petri nets,
but here homogeneous is not actually a restriction.
is sketched in [
        <xref ref-type="bibr" rid="ref21">21</xref>
        ]. This is a recursive approach based on integer linear
programming (ILP) where the computation of a new place which would violate the
free-choice condition is handled by discarding the already-found places. The
authors point out that their approach negatively influences running times since
places are computed repeatedly. In contrast to this, the present paper uses a
pre-processing phase so that the free-choice condition is never violated. Also, we
are using satisfiability modulo theories (SMT) problems, where only some
solution is sought, while ILP problems are optimisation problems which we believe
are harder to solve.
      </p>
      <p>
        Besides implementing this new approach in our tool APT [
        <xref ref-type="bibr" rid="ref10 ref20 ref9">10,9,20</xref>
        ], we also
want to extend Petri net synthesis to further classes of nets. For example,
both weighted free-choice and asymmetric-choice3 are generalisations of
equalconflictness which need further consideration, but might be tractable in a similar
way.
      </p>
      <p>Acknowledgements: The authors are grateful to the anonymous reviewers
for their helpful remarks and to Eike Best for his help in preparing this paper.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <surname>Badouel</surname>
            ,
            <given-names>E.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Bernardinello</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Darondeau</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          :
          <article-title>Polynomial algorithms for the synthesis of bounded nets</article-title>
          . In: Mosses,
          <string-name>
            <given-names>P.D.</given-names>
            ,
            <surname>Nielsen</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            ,
            <surname>Schwartzbach</surname>
          </string-name>
          ,
          <string-name>
            <surname>M.I. (eds.) TAPSOFT</surname>
          </string-name>
          <year>1995</year>
          .
          <article-title>LNCS</article-title>
          , vol.
          <volume>915</volume>
          , pp.
          <fpage>364</fpage>
          -
          <lpage>378</lpage>
          . Springer (
          <year>1995</year>
          ), http: //dx.doi.org/10.1007/3-540-59293-8_
          <fpage>207</fpage>
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>Badouel</surname>
            ,
            <given-names>E.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Bernardinello</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Darondeau</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          : Petri Net Synthesis. Springer (
          <year>2015</year>
          ), http://dx.doi.org/10.1007/978-3-
          <fpage>662</fpage>
          -47967-4
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <surname>Badouel</surname>
            ,
            <given-names>E.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Caillaud</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Darondeau</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          :
          <article-title>Distributing finite automata through Petri net synthesis</article-title>
          .
          <source>Formal Asp. Comput</source>
          .
          <volume>13</volume>
          (
          <issue>6</issue>
          ),
          <fpage>447</fpage>
          -
          <lpage>470</lpage>
          (
          <year>2002</year>
          ), http://dx.doi. org/10.1007/s001650200022
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <surname>Badouel</surname>
            ,
            <given-names>E.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Darondeau</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          :
          <article-title>Theory of regions</article-title>
          . In: Reisig,
          <string-name>
            <given-names>W.</given-names>
            ,
            <surname>Rozenberg</surname>
          </string-name>
          ,
          <string-name>
            <surname>G</surname>
          </string-name>
          . (eds.)
          <source>Lectures on Petri Nets I: Basic Models, Advances in Petri Nets. LNCS</source>
          , vol.
          <volume>1491</volume>
          , pp.
          <fpage>529</fpage>
          -
          <lpage>586</lpage>
          . Springer (
          <year>1996</year>
          ), http://dx.doi.org/10.1007/3-540-65306-6_
          <fpage>22</fpage>
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <surname>Barrett</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Stump</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Tinelli</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          :
          <article-title>The SMT-LIB Standard: Version 2.0</article-title>
          . In: Gupta,
          <string-name>
            <given-names>A.</given-names>
            ,
            <surname>Kroening</surname>
          </string-name>
          ,
          <string-name>
            <surname>D</surname>
          </string-name>
          . (eds.)
          <source>Proceedings of the 8th International Workshop on Satisfiability Modulo Theories (Edinburgh</source>
          , UK) (
          <year>2010</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <surname>Best</surname>
            ,
            <given-names>E.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Devillers</surname>
            ,
            <given-names>R.R.</given-names>
          </string-name>
          :
          <article-title>Characterisation of the state spaces of live and bounded marked graph Petri nets</article-title>
          . In: Dediu,
          <string-name>
            <given-names>A.H.</given-names>
            ,
            <surname>Martín-Vide</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            ,
            <surname>Sierra-Rodríguez</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.L.</given-names>
            ,
            <surname>Truthe</surname>
          </string-name>
          ,
          <string-name>
            <surname>B. (eds.) LATA</surname>
          </string-name>
          <year>2014</year>
          .
          <article-title>LNCS</article-title>
          , vol.
          <volume>8370</volume>
          , pp.
          <fpage>161</fpage>
          -
          <lpage>172</lpage>
          . Springer (
          <year>2014</year>
          ), http://dx.doi.org/10.1007/978-3-
          <fpage>319</fpage>
          -04921-2_
          <fpage>13</fpage>
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <surname>Best</surname>
            ,
            <given-names>E.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Devillers</surname>
            ,
            <given-names>R.R.</given-names>
          </string-name>
          :
          <article-title>State space axioms for t-systems</article-title>
          .
          <source>Acta Inf</source>
          .
          <volume>52</volume>
          (
          <issue>2-3</issue>
          ),
          <fpage>133</fpage>
          -
          <lpage>152</lpage>
          (
          <year>2015</year>
          ), http://dx.doi.org/10.1007/s00236-015-0219-0
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <surname>Best</surname>
            ,
            <given-names>E.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Devillers</surname>
            ,
            <given-names>R.R.</given-names>
          </string-name>
          :
          <article-title>Synthesis of bounded choice-free Petri nets</article-title>
          . In: Aceto,
          <string-name>
            <given-names>L.</given-names>
            ,
            <surname>de Frutos-Escrig</surname>
          </string-name>
          ,
          <string-name>
            <surname>D</surname>
          </string-name>
          . (eds.)
          <article-title>CONCUR 2015</article-title>
          .
          <article-title>LIPIcs</article-title>
          , vol.
          <volume>42</volume>
          , pp.
          <fpage>128</fpage>
          -
          <lpage>141</lpage>
          . Schloss Dagstuhl (
          <year>2015</year>
          ), http://dx.doi.org/10.4230/LIPIcs.CONCUR.
          <year>2015</year>
          .128
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <surname>Best</surname>
            ,
            <given-names>E.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Schlachter</surname>
            ,
            <given-names>U.</given-names>
          </string-name>
          :
          <article-title>Analysis of Petri nets and transition systems</article-title>
          . In: Knight,
          <string-name>
            <given-names>S.</given-names>
            ,
            <surname>Lanese</surname>
          </string-name>
          ,
          <string-name>
            <given-names>I.</given-names>
            ,
            <surname>Lluch-Lafuente</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            ,
            <surname>Vieira</surname>
          </string-name>
          , H.T. (eds.)
          <article-title>ICE 2015</article-title>
          .
          <article-title>EPTCS</article-title>
          , vol.
          <volume>189</volume>
          , pp.
          <fpage>53</fpage>
          -
          <lpage>67</lpage>
          (
          <year>2015</year>
          ), http://dx.doi.org/10.4204/EPTCS.189.6
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <surname>Borde</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Dierkes</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ferrari</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Gieseking</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Göbel</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Grunwald</surname>
            , R., von der Linde,
            <given-names>B.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lückehe</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Schlachter</surname>
            ,
            <given-names>U.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Schierholz</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Schwammberger</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Spreckels</surname>
          </string-name>
          , V.:
          <article-title>APT: analysis of Petri nets and labeled transition systems</article-title>
          , https://github.com/CvO-Theory/apt
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11.
          <string-name>
            <surname>Carmona</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Cortadella</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kishinevsky</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          :
          <article-title>New region-based algorithms for deriving bounded Petri nets</article-title>
          .
          <source>IEEE Trans. Computers</source>
          <volume>59</volume>
          (
          <issue>3</issue>
          ),
          <fpage>371</fpage>
          -
          <lpage>384</lpage>
          (
          <year>2010</year>
          ), http: //dx.doi.org/10.1109/TC.
          <year>2009</year>
          .131
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          12.
          <string-name>
            <surname>Carmona</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Cortadella</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kishinevsky</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kondratyev</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lavagno</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Yakovlev</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>A symbolic algorithm for the synthesis of bounded Petri nets</article-title>
          .
          <source>In: van Hee and Valk [18]</source>
          , pp.
          <fpage>92</fpage>
          -
          <lpage>111</lpage>
          , http://dx.doi.org/10.1007/ 978-3-
          <fpage>540</fpage>
          -68746-7_
          <fpage>10</fpage>
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          13.
          <string-name>
            <surname>Cortadella</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kishinevsky</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kondratyev</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lavagno</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Yakovlev</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>Petrify: A tool for manipulating concurrent specifications and synthesis of asynchronous controllers (</article-title>
          <year>1996</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          14.
          <string-name>
            <surname>Cortadella</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kishinevsky</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lavagno</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Yakovlev</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>Synthesizing Petri nets from state-based models</article-title>
          . In: Rudell,
          <string-name>
            <surname>R.L. (ed.) ICCAD</surname>
          </string-name>
          <year>1995</year>
          . pp.
          <fpage>164</fpage>
          -
          <lpage>171</lpage>
          . IEEE Computer Society / ACM (
          <year>1995</year>
          ), http://dx.doi.org/10.1109/ICCAD.
          <year>1995</year>
          .480008
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          15.
          <string-name>
            <surname>Cortadella</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kishinevsky</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lavagno</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Yakovlev</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>Deriving Petri nets for finite transition systems</article-title>
          .
          <source>IEEE Trans. Computers</source>
          <volume>47</volume>
          (
          <issue>8</issue>
          ),
          <fpage>859</fpage>
          -
          <lpage>882</lpage>
          (
          <year>1998</year>
          ), http: //dx.doi.org/10.1109/12.707587
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          16.
          <string-name>
            <surname>Ehrenfeucht</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Rozenberg</surname>
          </string-name>
          , G.:
          <article-title>Partial (set) 2-structures. part I: basic notions and the representation problem</article-title>
          .
          <source>Acta Inf</source>
          .
          <volume>27</volume>
          (
          <issue>4</issue>
          ),
          <fpage>315</fpage>
          -
          <lpage>342</lpage>
          (
          <year>1990</year>
          ), http://dx.doi. org/10.1007/BF00264611
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          17.
          <string-name>
            <surname>Ehrenfeucht</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Rozenberg</surname>
          </string-name>
          , G.:
          <article-title>Partial (set) 2-structures. part II: state spaces of concurrent systems</article-title>
          .
          <source>Acta Inf</source>
          .
          <volume>27</volume>
          (
          <issue>4</issue>
          ),
          <fpage>343</fpage>
          -
          <lpage>368</lpage>
          (
          <year>1990</year>
          ), http://dx.doi.org/10. 1007/BF00264612
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          18. van Hee,
          <string-name>
            <given-names>K.M.</given-names>
            ,
            <surname>Valk</surname>
          </string-name>
          ,
          <string-name>
            <surname>R</surname>
          </string-name>
          . (eds.):
          <source>ICATPN</source>
          <year>2008</year>
          ,
          <article-title>LNCS</article-title>
          , vol.
          <volume>5062</volume>
          . Springer (
          <year>2008</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          19.
          <string-name>
            <surname>Recalde</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Teruel</surname>
            ,
            <given-names>E.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Silva</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          :
          <article-title>Improving the decision power of rank theorems</article-title>
          .
          <source>IEEE Trans. Syst. Man, Cybern. B, Cybern. 4</source>
          ,
          <fpage>3768</fpage>
          -
          <lpage>3773</lpage>
          (
          <year>1997</year>
          ), http://dx.doi. org/10.1109/ICSMC.
          <year>1997</year>
          .633256
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          20.
          <string-name>
            <surname>Schlachter</surname>
            ,
            <given-names>U.</given-names>
          </string-name>
          :
          <article-title>Petri net synthesis for restricted classes of nets</article-title>
          . In: Kordon,
          <string-name>
            <given-names>F.</given-names>
            ,
            <surname>Moldt</surname>
          </string-name>
          ,
          <string-name>
            <surname>D</surname>
          </string-name>
          . (eds.)
          <article-title>ICATPN 2016</article-title>
          .
          <article-title>LNCS</article-title>
          , vol.
          <volume>9698</volume>
          , pp.
          <fpage>79</fpage>
          -
          <lpage>97</lpage>
          . Springer (
          <year>2016</year>
          ), http://dx.doi.org/10.1007/978-3-
          <fpage>319</fpage>
          -39086-
          <issue>4</issue>
          _
          <fpage>6</fpage>
        </mixed-citation>
      </ref>
      <ref id="ref21">
        <mixed-citation>
          21.
          <string-name>
            <surname>van der Werf</surname>
            ,
            <given-names>J.M.E.M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>van Dongen</surname>
            ,
            <given-names>B.F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Hurkens</surname>
            ,
            <given-names>C.A.J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Serebrenik</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>Process discovery using integer linear programming</article-title>
          .
          <source>In: van Hee and Valk [18]</source>
          , pp.
          <fpage>368</fpage>
          -
          <lpage>387</lpage>
          , http://dx.doi.org/10.1007/978-3-
          <fpage>540</fpage>
          -68746-7_
          <fpage>24</fpage>
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>