<!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>A Framework for Efficiently Deciding Language Inclusion for Sound Unlabelled WF-Nets</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>D.M.M. Schunselaar?</string-name>
          <email>d.m.m.schunselaar@tue.nl</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>H.M.W. Verbeek?</string-name>
          <email>h.m.w.verbeek@tue.nl</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>W.M.P. van der Aalst?</string-name>
          <email>w.m.p.v.d.aalst@tue.nl</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>H.A. Reijers?</string-name>
          <email>h.a.reijers@tue.nl</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Eindhoven University of Technology</institution>
          ,
          <addr-line>P.O. Box 513, 5600 MB, Eindhoven</addr-line>
          ,
          <country country="NL">The Netherlands</country>
        </aff>
      </contrib-group>
      <fpage>135</fpage>
      <lpage>154</lpage>
      <abstract>
        <p>We present a framework to efficiently check language inclusion between two sound unlabelled WF-nets. That is, to efficiently check whether every successfully terminating transition sequence of one sound unlabelled WF-net also is a successfully terminating transition sequence of a second sound unlabelled WF-net. Existing approaches for checking language inclusion are typically based on the underlying transition systems of both nets, and hence are subject to the well-known stateexplosion problem. As a result, these approaches cannot check language inclusion on sound unlabelled WF-nets in polynomial time. Our framework allows for efficient language inclusion checks even if parallelism is present, by comparing specific net abstractions that can be computed and compared in polynomial time. For sound unlabelled WF-nets that are free-choice and do not contain loops, we prove that our approach is complete.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>Language inclusion refers to the problem of deciding whether a first language is
included in a second language, that is, whether every word of the first language
is also a word in the second language. For this paper, we assume that a language
is described by a sound unlabelled WF-net (a subclass of Petri nets), and that
every word in the language corresponds to a successfully terminating trace in
that WF-net. As a result, the problem can now be rephrased as deciding whether
every successfully terminating trace of a first sound unlabelled WF-net is also a
successfully terminating trace of a second sound unlabelled WF-net.</p>
      <p>
        There already is a large body of work on equivalences and/or similarities
between Petri nets, e.g., [
        <xref ref-type="bibr" rid="ref1 ref2 ref3">1–3</xref>
        ]. However, in some cases we do not need to decide
on language equivalence as language inclusion is already sufficient to investigate
relevant properties. For example, suppose we have a large repository of Petri nets
that are all different. To reduce the number of Petri nets we need to maintain,
we might want to remove any Petri net that has less behaviour than some other
? This research has been carried out as part of the Configurable Services for Local
      </p>
      <p>Governments (CoSeLoG) project (http://www.win.tue.nl/coselog/).
Petri net. This requires us to determine whether the language of a Petri net is
included in the language of another Petri net.</p>
      <p>
        Conformance checking is another interesting application area for language
inclusion. In conformance checking, one seeks to validate an event log against
a Petri net, i.e., does every trace in the event log correspond to a successfully
terminating transition sequence of the Petri net [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ]? If we can create a Petri
net that precisely captures the traces from the event log, then this question
corresponds to whether the language of this created Petri net is included in the
language of the original, given, Petri net.
      </p>
      <p>
        Another interesting application of language inclusion comes from the CoSeLoG
project1. In this project, we are cooperating with municipalities of different sizes
and with different characteristics. If, for instance, a first, small, municipality
wants to cooperate with a second, large, municipality, then the second
municipality might have more generic process models (that is, Petri nets) that also
support the first municipality. Although, language equivalence is unlikely to hold,
language inclusion might very well hold, which is already sufficient for a fruitful
cooperation. Apart from comparing the Petri nets of these municipalities, we
can also combine them into a more generic Petri net [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ], and check whether a
Petri net of a third municipality is already included in this generic Petri net. If
so, then this third municipality can be supported by this generic Petri net as
well, while it might not have been supported by the Petri net of the first or the
second municipality only. In the context of [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ], we already have standardised the
Petri nets, i.e., same activities names, and same level of abstraction.
      </p>
      <p>The main problem with Petri-net-based language inclusion is that it is defined
on the state-space underlying the Petri net (encoded as a transition system) and
is PSPACE-complete. Due to the state-space explosion problem, such a
transition system may be extremely large. Therefore, in general, it is computationally
expensive to decide on language inclusion using the underlying transition
systems.</p>
      <p>We present a framework for deciding whether and how Petri-net-based
language inclusion can be decided in a more efficient way for sound unlabelled
WF-nets. The framework is based on the general pattern: If a sound unlabelled
WF-net adheres only to some characteristics (e.g., is acyclic), then we can map
this net to an alternative representation using a mapping function λ. Using a
comparator ≤λ, we may then efficiently decide whether language inclusion holds
or not. As an example, Fig. 1 depicts a mapping function that maps every net to
its set of transitions. Using the subset operator as comparator, we can already
conclude that language inclusion does not hold, i.e., that the transition set of
the first net is not a subset of the transition set of the second net.</p>
      <p>For the case, sound unlabelled WF-nets that are free-choice and contain no
loops, we prove that our approach is complete. If the net is not free-choice or
contains loops, we present mapping functions and corresponding comparators
that can signal that language inclusion does not hold.
1 http://www.win.tue.nl/coselog/
{A, B, D, E, F, H, I}</p>
      <p>{A, B, C, D, E, F, G, H, I }
≤λ
(⊆)</p>
      <p>The structure of the paper is as follows. In Sect. 2, we present the approaches
from literature and present the mappings found in literature. Preliminaries are
provided in Sect. 3. Section 4 presents the general framework for our approach,
which includes different mapping functions and comparators to tackle the
language inclusion problem at hand. Finally, the conclusions and directions for
future work are elaborated on in Sect. 5.
2</p>
    </sec>
    <sec id="sec-2">
      <title>Related Work</title>
      <p>
        There are solutions for checking whether the language of a first Petri net is
included in the language of a second Petri net, see [
        <xref ref-type="bibr" rid="ref6 ref7 ref8">6–8</xref>
        ]. However, these
solutions use the transition systems underlying both Petri nets. Unfortunately, these
transition systems may become very large in the presence of parallelism.
Therefore, as mentioned, we are designing a framework for deciding whether and how
Petri-net-based language inclusion can be decided in a more efficient way. An
important element of this framework is mapping a net to an alternative
representation. In the remainder of this section, we present different candidates for
such mappings as found in the literature. Note that this list is not exhaustive,
but that our framework can easily incorporate other, new, mappings.
      </p>
      <p>
        The first mapping we consider is based on the α-relation [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ]. The α-relation
denotes direct succession between activities and was originally designed for
process discovery. In [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ], a characterisation is given for the nets discoverable by
the α-relation. Extensions have been made to the α-relation in [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ] to be able
to discover a larger set of nets.
      </p>
      <p>
        The α-relation denotes direct succession, the relation used in behavioural
profiles [
        <xref ref-type="bibr" rid="ref12 ref13 ref3">3, 12, 13</xref>
        ] denotes the eventual succession. Based on the behavioural
profiles, work has been done for language equivalence, but language inclusion has
not been addressed. A more generic approach based on behavioural profiles is
presented in [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ], where eventual succession is still considered, but the distance
between occurrences of transition is bounded. Using behavioural profiles, [
        <xref ref-type="bibr" rid="ref14">14</xref>
        ]
considers an abstraction, but this abstraction is not language-equivalence
preserving, i.e., the language of the abstraction is different from the language of the
original net.
      </p>
      <p>
        An approach similar to behavioural profiles is the approach using causal
footprints [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ]. Causal footprints denote causality between activities. In [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ],
causal footprints are used to deduce structural properties of sound WF-nets.
Using causal footprints, [
        <xref ref-type="bibr" rid="ref16">16</xref>
        ] denotes the similarity between nets. This similarity
can be used to deduce language equivalence (similarity of 1), but this approach
is not tailored towards language inclusion.
      </p>
      <p>
        Causal nets [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ] allow us to model processes in such a way that causality
between activities is made explicit. Language inclusion of causal nets has been
defined in [
        <xref ref-type="bibr" rid="ref17">17</xref>
        ]. Furthermore, [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ] presents an operational algorithm to transform
a net to a causal net by transforming place and transition into activities.
      </p>
      <p>
        Process nets [
        <xref ref-type="bibr" rid="ref18">18</xref>
        ] allow us to encode causal runs. Such a causal run is expressed
as a marked graph. The approach was originally designed for the validation of
nets. Therefore, no language equivalence or language inclusion is defined on
process nets.
      </p>
      <p>
        The last mapping we mention is the mapping from a net to its basis of
semipositive transition invariants [
        <xref ref-type="bibr" rid="ref19">19</xref>
        ]. The intuitive notion of such an invariant is
that if we start at a given marking, and execute all the transitions from the
invariant as many times as the invariant indicates, we return to the marking we
started with. As such, every behavioural cycle in the Petri net is covered by such
an invariant, but this not work the other way around: It may be possible that
an invariant does not correspond to any behavioural cycle (due to the fact that
we may not have sufficient tokens to execute exactly the transitions from the
invariant).
      </p>
      <p>
        In this paper, we consider the α-mapping, and the work that has been done
on behavioural profiles, due to the fact they can be computed efficiently (in case
of free-choice Petri nets [
        <xref ref-type="bibr" rid="ref20">20</xref>
        ]) on the structure of the net. The other abstractions
can be used, but some do no always run in a time polynomial with respect to
the size of the net. Causal footprints are closely related to behavioural profile.
Therefore, using causal footprints yields similar results as using behavioural
profiles. Hence, we do not use causal footprints. To use causal nets, we would
need an approach to deal with the places introduced in the transformation as
the same place might have different names in different process models. To use
process nets, we would need an approach to deduce language inclusion between
sets of sets of marked graphs. Furthermore, the number of process nets might be
exponential in the number of choices, as there is no choice in a marked graph and
every trace needs to be encoded in at least one marked graph. Finally, the main
problem with semi-positive transition invariants is that the basis of invariant
may be exponential in the size of the net.
      </p>
    </sec>
    <sec id="sec-3">
      <title>Preliminaries</title>
      <p>We use the following general notions: A denotes the set of actions, and N denotes
the set of non-negative integers.</p>
      <p>First, the notions of language, word of a language, and language inclusion
are defined. A word is a sequence of actions from A, a language is a set of words,
and a language is included in another language if and only if all the words of the
first language are part of the second language.</p>
      <p>Next, we introduce the notion of a transition system, and the language of a
transition system.</p>
      <sec id="sec-3-1">
        <title>Definition 1 (Transition System).</title>
        <p>is a tuple where:
– S is the set of states,
– →⊆ S × A × S is the set of transitions,
– α ∈ S is the initial state,
– ω ∈ S is the final state.</p>
        <p>A Transition System T S = (S, →, α, ω)</p>
        <p>A word of a transition system is a sequence of transitions starting from the
initial state and ending in the final state. The language of a transition system is
the set of all words which can be produced by the transitions system.</p>
        <p>Now we introduce some general Petri net concepts.</p>
        <p>Definition 2 ((Unlabelled) Petri net). A Petri net N = (P, T, F ) is a tuple
where:
– P is a set of places,
– T ⊆ A is a set of transitions, such that P ∩ T = ∅,
– F ⊆ (P × T ) ∪ (T × P ) is a flow relation.</p>
        <p>The preset of a transition/place n, denoted by •n, is the set of places/transitions
in S i ∈ P ∪ T : (i, n) ∈ F . The postset of a transition/place n, denoted by n•, is
the set of places/transitions in S i ∈ P ∪ T : (n, i) ∈ F . A Petri net is free-choice
if and only if for every two transitions, either the presets of every two transitions
is disjoint, or they are the same.</p>
        <sec id="sec-3-1-1">
          <title>Definition 3 (Bag over Set). Let S be a set. A bag over S is a function from</title>
        </sec>
        <sec id="sec-3-1-2">
          <title>S to the natural numbers N such that only a finite number of elements from S</title>
          <p>is assigned a non-zero function value.</p>
          <p>Note that a finite set is also a bag, namely the function assigning 1 to every
element in the set and 0 otherwise.</p>
          <p>The set of all bags over S is denoted B(S). For a bag b over S and s ∈ S,
b(s) denotes the number of occurrences of s in b, often called the cardinality of
s in b. We use brackets to explicitly enumerate a bag and superscripts to denote
cardinalities. For example, [a2, b3, c] is the bag with two a’s, three b’s and one
c; the bag [s2 | P (s)], where P is a predicate on S, contains two elements s for
every s such that P (s) holds. The sum of two bags b1 and b2, denoted b1 + b2,
is defined as [sn | s ∈ S ∧ n = b1(s) + b2(s)]. The difference of two bags b1 and
b2, denoted b1 − b2, is defined as [sn | s ∈ S ∧ n = (b1(s) − b2(s)) max 0]. Bag b1
is a subbag of b2, denoted b1 ≤ b2, if and only if ∀s ∈ S : b1(s) ≤ b2(s).</p>
          <p>A marking of a Petri net is a bag over the set of places. A transition t is
enabled in a marking M , denoted by M [ti, if and only if the preset of t is a
subbag of M . Firing an enabled transition t from a marking M resulting in
another marking M 0 is denoted by M [tiM 0. Marking M 0 is obtained by taking
the difference between M and the preset of t and summing it with the postset
of t, i.e. M 0 = M − •t + t•.</p>
          <p>Definition 4 (Transition System of a Petri net). Let N = (P, T, F ) be
a Petri net, let Mi be a marking of N , and let Mo be a marking of N , then
the transition system T S = T S(N, Mi, Mo), belonging to N , is constructed as
follows:
– α = Mi,
– ω = Mo,
– S is the smallest set X, such that:
• α ∈ X, ω ∈ X, and
• if s ∈ X ∧ s[tis0 for some t ∈ T and s0 ∈ B(P ), then s0 ∈ X.
– →= {(s1, t, s2) | s1, s2 ∈ S ∧ t ∈ T ∧ s1[tis2}.</p>
          <p>The language of a Petri net is the language of the transition system as
constructed in Def. 4.</p>
          <p>
            As mentioned, we limit ourselves to WF-nets [
            <xref ref-type="bibr" rid="ref21">21</xref>
            ]. A WF-net has a unique
input and output place, i.e., the preset of the input place is empty and the postset
of the output place is empty. Furthermore, every transition is on a path between
the input place and the output place. With T S(N ), we denote the transition
system belonging to the WF-net N with unique input place i and output place
o (i.e., T S(N ) = T S(N, [i], [o])).
          </p>
          <p>
            We require a WF-net to be sound [
            <xref ref-type="bibr" rid="ref21">21</xref>
            ].
          </p>
          <p>
            Definition 5 (Soundness [
            <xref ref-type="bibr" rid="ref21">21</xref>
            ]). Let N = (P, T, F ) be a WF-net, let T S =
(S, →, α, ω) be a transition system belonging to N , i.e., T S = T S(N ), then N
is sound if and only if (note that α is [i] and ω is [o]):
– ∀m ∈ S : (m, ω) ∈→∗, where →∗ is the transitive closure of →,
– ∀t ∈ T : ∃s, s0 ∈ S : (s, t, s0) ∈→.
          </p>
          <p>In the remainder of this paper, N denotes the set of all sound unlabelled
WF-nets. Note that whenever we say WF-net the unlabelled variant is intended
unless stated differently.</p>
          <p>As mentioned in the related work section, there exist approaches to compute
language inclusion on the transition system. However, this computation does
not need to be polynomial in the size of the Petri net. Therefore, we provide in
Sect. 4 an approach to deduce language inclusion based on the structure of the
Petri net.</p>
        </sec>
      </sec>
    </sec>
    <sec id="sec-4">
      <title>Approach</title>
      <p>In this section, we determine in which situations language inclusion can be
efficiently computed on the transition system, and what can be done to avoid using
the transition system in other situations. For the latter, we use our framework,
i.e., when the net has certain characteristics, this net is mapped onto an
alternative representation. Using a comparator, language inclusion can be decided,
similar to the example given in the introduction.</p>
      <p>Whether it is computationally efficient to use the transition system and, if
not, which mapping can be used, depends heavily on the constructs used in the
Petri nets, i.e., on the characteristics of both nets. For example, if both nets are
sequential and acyclic, then language inclusion can be efficiently computed on the
transition systems. If both nets are acyclic, then the eventually-follows relation
between transitions may provide valuable information on language inclusion,
where the eventually-follows relation between two transitions denote that the
first can be followed by the second.</p>
      <p>The remainder of this section is organised as follows: We first define an
abstract mapping, then introduce characteristics, and finally define a comparator.
Afterwards, we revisit the used (concrete) mappings from literature. Having the
concrete mappings in place, the characteristics are defined, and a
polynomialtime algorithm is provided to compute these characteristics on the free-choice
WF-nets. Using the mappings and characteristics, we provide comparators and
accompanying abstractions together, as they are tightly linked.
4.1
In our abstract framework, an abstraction consists of three elements: (1) a
mapping function, mapping a Petri net into an abstract representation, (2) a set of
characteristics denoting when this abstraction can be applied, and (3) a
comparator to compare the abstract representations (mapping to the booleans). The
first and the last follow straightforward from the previous explanations, but the
second requires some extra explanation and mainly on the can be applied part.</p>
      <p>We say a Petri net adheres to certain characteristics if and only if these
characteristics are valid for this Petri net. This allows abstractions to be used
when characteristics are added, i.e., the addition of an characteristic does not
invalidate the results presented in this paper.</p>
      <p>Two different kinds of abstractions are considered: (1) a positive abstraction
between N and N 0 denoting that: If the comparator yields true, N is guaranteed
to be language included in N 0, and (2) a negative abstraction between N and N 0
denoting that: If the comparator yields false, N is guaranteed to be not language
included in N 0. This allows our framework to be more flexible.
4.2</p>
      <sec id="sec-4-1">
        <title>Mappings</title>
        <p>Having the abstract framework with abstractions in place, we now present the
specific mappings used (based on the reasoning in Sect. 2) in the remainder of</p>
        <p>A</p>
        <p>B
this paper. Please note that we do not claim that these mappings are
exhaustive: Other mappings may exist that allow for efficient positive and/or negative
abstractions that are not covered by this paper. However, these mappings (and
corresponding comparator) can be easily added to our framework.</p>
        <p>The T -mapping provides us with the set of transitions from a WF-net, as
explained in the introduction (we denote this set as λT (N )).</p>
        <p>The α-mapping denotes that two transitions can follow each other directly
in a Petri net N , i.e., if (t1, t2) is part of the mapping (denoted by λα(N )), then
there is a trace in which t1 is directly followed by t2.</p>
        <p>The ∞-mapping denotes that two transitions can follow each other eventually
in a Petri net N , i.e., if (t1, t2) is part of the mapping (denoted by λ∞(N )), then
there is a trace in which t1 is eventually followed by t2.</p>
        <p>The presence of loops may be problematic for the ∞-mapping. For this
reason, we also include the k-mapping (generalisation of the α-mapping), which
denotes that there are at most k other activities between two transitions in
a Petri net N . As such, this mapping (denoted by λk(N )) corresponds to the
eventually-follows-within-k-steps-relation between transitions. As a result,
transitions that occur in a loop of length of at least k are not automatically related
in both ways by this mapping, e.g., assume a and b are in a loop, then (a, b)
in λk(N ) but (b, a) does not need to be in λk(N ) while (b, a) would have been
included in λ∞(N ).</p>
        <p>These latter three specific mappings are all based on relations between two
transitions, which poses a possible problem if a net only contains traces that
contain only a single transition. Clearly, for such a net these follows relations
are all empty, which yields equivalent mappings for the nets in Fig. 2. For this
reason, we add artificial start and end activities ( &gt;, ⊥) to any net. Note that
this does not limit the expressivity of the process models.
Since our framework depends on the exact definition of the characteristics, this
section defines the characteristics of sound WF-nets, and shows that we can
compute these characteristics efficiently in case of free-choice nets.</p>
        <p>The sequential characteristic denotes that from a state firing one transition,
means the other transitions enabled in the state are no longer enabled.
Definition 6 (Sequential Characteristic). Let N = (P, T, F ) ∈ N be a
sound WF-net, let T S = (S, →, α, ω) be the transition system belonging to N ,
i.e., T S = T S(N ), then N is sequential if and only if: ∀t1, t2 ∈ T, s ∈ S :
¬(•t1 + •t2 ≤ s)</p>
        <p>The acyclic characteristic denotes that it is not possible to reach a previously
visited state.</p>
        <p>Definition 7 (Acyclic Characteristic). Let N = (P, T, F ) ∈ N be a sound
WF-net, let T S = (S, →, α, ω) be the transition system belonging to N , i.e.,
T S = T S(N ), then N is acyclic if and only if: ∀n ∈ N, s0, . . . , sn ∈ S, t1, . . . , tn ∈
T : n &lt; 1 ∨ s0 6= sn ∨ ∃1 ≤ k ≤ n : (sk−1, tk, sk) 6∈→.</p>
        <p>In general, these characteristics are defined on the transition system, and
may be inefficient to compute. However, for free-choice nets we can compute
them in an efficient way, as the following theorems show.</p>
        <p>A</p>
        <p>B</p>
        <p>C</p>
        <p>
          In [
          <xref ref-type="bibr" rid="ref1">1</xref>
          ](Def. 26), a polynomial time algorithm is presented to compute the
minimal structural successor between places and transitions (MSS) for a free-choice
net, i.e., the minimal set of transitions and places between the execution of two
transitions. For some characteristics, we require that the considered transitions
can follow each other directly, thus a MSS has a size of 1, i.e., only a single place
is between the transitions. Consider Fig. 3, without the dashed parts, B and C
are non-sequential. However, with the dashed parts, B and C are sequential. In
the first case, the size of the MSS between A and C is 1, in the latter case the
size of the MSS between A and C is 3.
        </p>
        <p>Theorem 1. Let N = (P, T, F ) be a sound, free-choice WF-net, then N is
sequential if and only if: ∀u1, u2, u3 ∈ T : u1 • ∩ • u2 = ∅ ∨ u1 • ∩ • u3 =
∅ ∨ •u2 ∩ •u3 6= ∅ ∨ |MSS(u1, u2)| 6= 1 ∨ |MSS(u1, u3)| 6= 1.</p>
        <p>Proof. We need to prove: (∀t1, t2 ∈ T, s ∈ S : ¬(•t1 + •t2 ≤ s)) ⇔ (∀u1, u2, u3 ∈
T : u1 • ∩ • u2 = ∅ ∨ u1 • ∩ • u3 = ∅ ∨ •u2 ∩ •u3 6= ∅ ∨ |MSS(u1, u2)| 6=
1 ∨ |MSS(u1, u3)| 6= 1).
⇒ We prove this by contradiction, assume the left-hand side is true, but the
right-hand side is false, thus ∃u1, u2, u3 ∈ T : u1 • ∩ • u2 6= ∅ ∧ u1 • ∩ • u3 6=
∅ ∧ •u2 ∩ •u3 = ∅ ∧ |MSS(u1, u2)| = 1 ∧ |MSS(u1, u3)| = 1. From the
righthand side it follows that u2 and u3 are both enabled after executing u1 (by
soundness, we know u1 can fire). Furthermore, u2 and u3 can fire directly
after u1 by the M SS, and because their presets are disjoint there is no
ordering between u2 and u3. Hence, there is a state s such that •u2 +•u3 ≤ s.
⇐ Again we prove this by contradiction, assume the right-hand side is true,
but the left-hand side is false, thus ∃t1, t2 ∈ T, s ∈ S : •t1 + •t2 ≤ s. Since
we have a sound WF-net, we start with a single token in the input place.
This means there is a sequence of transitions to reach a state s where two
transitions are enabled say t1 and t2, let s be the first state. Then there is
a transition t to reach state s, let t fire from state s0, i.e., s0[tis. By the fact
that t1 and t2 can fire directly from s, we know that |MSS(t, t1)| = 1 and
|MSS(t, t2)| = 1. Now it remains to prove that the first 3 clauses are false,
that is: u1 • ∩ • u2 6= ∅ and u1 • ∩ • u3 6= ∅ and •u2 ∩ •u3 = ∅.</p>
        <p>• Assume t • ∩ • t1 = ∅, this means that s0[ti and s0[t1i. Then there are
two options: •t + •t1 ≤ s0, this means s0 is an earlier state in which two
( t + •t1 ≤
transitions are enabled (not possible by assumption), and ¬ •
s0). We now obtain by free-choiceness that •t = •t1. From the fact that
t1 is still enabled after firing t, and the fact that t • ∩ • t1 = ∅, we obtain
that •t + •t1 ≤ s0, this is not possible due to the free-choiceness and
soundness as this allows t1 to fire twice, and hence (by free-choiceness)
it is possible to mark the output place with two tokens.
• The proof for t • ∩ • t2 goes analogous.
• We only have the case where •t1 ∩ •t2 6= ∅, thus •t1 = •t2. Again by
soundness and free-choiceness it follows that t1 can fire twice from state
s, hence it is not sound.
tu
tu
Theorem 2. Let N = (P, T, F ) be a sound, free-choice WF-net, then N is
acyclic if and only if: ∀t1, . . . tn ∈ T : •t1 ∩ tn• = ∅ ∨ (∃1 ≤ k &lt; n : tk • ∩ • tk+1 =
∅).</p>
        <p>Proof. We need to prove: (∀n ∈ N, s0, . . . , sn ∈ S, t1, . . . , tn ∈ T : n &lt; 1 ∨ s0 6=
sn ∨ ∃1 ≤ k ≤ n : (sk−1, tk, sk) 6∈→) ⇔ (∀t1, . . . tn ∈ T : •t1 ∩ tn• = ∅ ∨ (∃1 ≤
k &lt; n : tk • ∩ • tk+1 = ∅)).
⇒ This follows from the free-choice property, i.e., as soon as we can mark a
place in the preset of a transition, then this token can only be removed after
this transition has been enabled. As a result, if we mark a place in the preset
of a previously enabled transition, then we can do this an infinite amount of
times as this transition has to be able to fire. Since the state-space is finite
(bounded net due to soundness) this means we have a path to a previously
visited state.
⇐ When we do not have a sequence of transition to mark a place again, this
means as soon as this place has been marked it will never be marked again.
Hence, we cannot revisit a state.</p>
        <p>From Thm. 1 and Thm. 2, we can conclude that, for free-choice WF-nets the
characteristics can be efficiently computed, i.e., in polynomial time. As a result,
we can use these characteristics in our framework.
This section builds on the previous sections by presenting concrete instantiations
of the framework, consisting of selected abstractions, that can be used to
efficiently decide language inclusion for nets with certain characteristics. Therefore,
in the remainder, we display different approaches, each tailored towards nets
with certain characteristics. We start with the approach which does not require
an abstraction of the Petri net.</p>
        <p>No abstraction needed In case the Petri net is sequential and free-choice,
the transition systems will not suffer from the state-space-explosion problem.
For this reason, we do not need an abstraction, as we can efficiently decide the
language inclusion problem on the transition systems.</p>
        <p>Negative abstraction using T -mapping The following negative abstraction
is valid for all sound WF-nets.</p>
        <p>Definition 8 ( T -Comparator). Let N = (P, T, F ) and N 0 = (P 0, T 0, F 0) be
sound WF-nets, let λT be the T -mapping, then λT (N ) ≤T λT (N 0) if and only
if: λT (N ) ⊆ λT (N 0)
Theorem 3. (λT , ≤T , ∅) is a negative abstraction.</p>
        <p>Proof. As both nets are sound WF-nets, all transitions of N are included in
L(N ). That is, for every t ∈ T there exists a trace σ ∈ L(N ) such that t ∈ σ.
Clearly, if there exists a transition t ∈ T such that t 6∈ T 0, then the traces in N
that contain t are not traces of N 0. Hence, language inclusion cannot hold.
tu
Negative abstraction using α-mapping The following negative abstraction
is also valid for all sound WF-nets. However, to our knowledge, only for
freechoice WF-nets there is a polynomial-time algorithm to compute the α-mapping.
Hence we can use the negative abstraction to efficiently decide language inclusion
either if we have a free-choice net or if the required α-mappings are given.
Definition 9 ( α-Comparator). Let N = (P, T, F ), N 0 = (P 0, T 0, F 0), be sound
WF-nets, let λα be the α-mapping, then λα(N ) ≤α λα(N 0) if and only if:
λα(N ) ⊆ λα(N 0)
Theorem 4. (λα, ≤α, ∅) is a negative abstraction.</p>
        <p>Proof. We need to prove that ¬(λα(N ) ≤α λα(N 0)) ⇒ ¬(L(N ) ⊆ L(N 0)) which
can be rewritten to L(N ) ⊆ L(N 0) ⇒ λα(N ) ≤α λα(N 0) which follows
straightforward from the definition of λα.
tu</p>
        <p>Theorem 4 yields the following result: Given two sound WF-nets and their
corresponding α-mappings, Def. 9 can be computed in polynomial time. Hence,
Thm. 4 yields in polynomial time whether the language is not included, i.e., if</p>
        <p>B</p>
        <p>C
A</p>
        <p>D</p>
        <p>A</p>
        <p>B</p>
        <p>D
λα(N ) ⊆ λα(N 0) yields false then the inclusion does not hold. In case no
αmapping is provided, we can, for free-choice WF-nets, compute the α-mapping
efficiently and determine if language inclusion does not hold.</p>
        <p>Using the α-mapping, we did not obtain a positive abstraction, as we cannot
do an inclusion of the relations between the different process models. Consider
the models in Fig. 4. Here, it is easy to see that the relations of the
righthand model are a subset of left-hand model. That is, in the left model we have
the relations λα(N ) = {(A, B), (A, C), (B, C), (C, B), (B, D), (C, D)}, and in the
right model we have the relations: λα(N 0) = {(A, B), (B, D)}. However, the word
ABD is included in the right model, but not in the left model.</p>
        <p>The problem is that we are omitting related activities, e.g., the A is followed,
in Fig. 4, by a C, while with omitting relations, we also omit these dependencies.</p>
        <p>Consider Fig. 5, at the bottom, for both models, we have transformed the
parallel execution into a sequential execution such that λα(right model) ⊆ λα(left
model). In the top two models, we have done the same, but this yields a model
allowing words not possible in the other model. So, we need to find an inclusion
operator, which can either differentiate between both models or considers both
models not to be included in the other. In the first case, we have false negatives
(see bottom model), in the second case, we have false positive (see top model).
The problem is: The α-mapping considers two activities exclusive if they cannot
follow each other directly. Hence, we have to look at the transitivity of these
relations.</p>
        <p>Positive abstraction using ∞-mapping In case the WF-net is acyclic, we
can use the ∞-mapping instead of the α-mapping. Using this mapping, we can
compute the transitive closure of the α-relations to deduce the relations between
all activities. However, similar to the α-mapping, a simple inclusion of the sets is
not strong enough to deduce language inclusion. Therefore, we need an approach
which takes into account the alternatives between different activities. Alternative
activities are activities which do not occur together in a trace. So, if an activity
does not occur in a word, then an alternative activity occurs in that word.
Theorem 5. Let N = (P, T, F ) be a sound acyclic free-choice net, then: ∀a ∈
T, σ ∈ L(N ) : a 6∈ σ ⇒ ∃b ∈ T : b ∈ σ ∧ (a, b) 6∈ λ∞(N ) ∧ (b, a) 6∈ λ∞(N ).
Proof. Assume there is an a ∈ T and a 6∈ σ (by soundness we know a can be
executed). This means there is a choice to not execute a. Since we have
freechoice nets, this means somewhere there are two transitions t1, t2 (•t1 = •t2),
A
A
&gt;
C
D
⊥
&gt;</p>
        <p>F
G
E</p>
        <p>A
A
D
&gt;
⊥</p>
        <p>B
B
E
A</p>
        <p>D
A
D</p>
        <p>C</p>
        <p>B
such that after t1 a can still follow, but after executing t2 a cannot follow. Due
to the fact that the net is acyclic and free-choice, a cannot precede t2, i.e., if a
can, via firing some transitions, mark the preset of t2 then also the preset of t1
is marked and hence a can execute again. Since a is not in σ, we have chosen
t2, and thus t2 ∈ σ. Also because a cannot follow t2, and t2 cannot follow a,
(a, t2) 6∈ λ∞(N ) ∧ (t2, a) 6∈ λ∞(N ). tu</p>
        <p>Now the comparator denotes that the activities have to be the same, the
relations have to be a subset (similar to Def. 9), and there is always at least one
alternative activity remaining. We have to require clause 3, as this allows us to
only remove alternative activities. Consider Fig. 6, the lower model is language
included in the right model, and this is valid since an alternative activity for
B (namely C) follows A. However, the left model is not language included in
the lower model, as there is no alternative activity for C following A. Without
clause 3, the comparator would have denoted that the left model is included in
the lower model.
Definition 10 ( ∞-Comparator). Let N = (P, T, F ), N 0 = (P 0, T 0, F 0) be
sound FC-nets adhering to the {Acyclic} characterisation, let λ∞ be the
∞mapping, then λ∞(N ) ≤∞ λ∞(N 0) if and only if:
1. T = T 0
2. λ∞(N ) ⊆ λ∞(N 0)
3. (∀(a, b) ∈ λ∞(N 0) : (a, b) ∈ λ∞(N ) ∨ (b, a) ∈ λ∞(N ) ∨ (∃c ∈ T : ((a, c) ∈
λ∞(N ) ∨ (c, a) ∈ λ∞(N )) ∧ (b, c) 6∈ λ∞(N 0) ∧ (c, b) 6∈ λ∞(N 0)))
Theorem 6. (λ∞, ≤∞, {Acyclic}) is a positive abstraction.</p>
        <p>Proof. We need to prove: λ∞(N ) ≤∞ λ∞(N 0) ⇒ L(N ) ⊆ L(N 0).</p>
        <p>We prove this by contradiction, thus L(N ) 6⊆ L(N 0) but λ∞(N ) ≤∞ λ∞(N 0).
By definition, this means there is a trace σ ∈ L(N ) such that σ 6∈ L(N 0).</p>
        <p>Now it remains to prove that this σ does not exist. We prove this by
induction on the prefix of the trace. Let σ = ht1, . . . , tk−1, tk, . . . , tmi be a trace, the
prefix of σ (denoted by σprefix ) are transitions before position k (i.e., σprefix =
ht1, . . . , tk−1i). It remains to show that if the prefix of σ corresponds to a prefix
of a trace σN0 ∈ L(N 0) then tk has to be directly executable in N 0 after having
executed this prefix.</p>
        <p>Base case k = 1. In this case, the prefix is empty and by definition we always
start with an unique start activity, hence both models can execute &gt;.</p>
        <p>Inductions hypothesis: assume σprefix = ht1, . . . tk−1i corresponds to a prefix
of a trace in N 0, then there are two options: (1) tk cannot follow σprefix in N 0,
or (2) tk cannot follow σprefix directly in N 0, i.e., there is at least on transition
in between σprefix and tk.</p>
        <p>(1) If tk cannot follow σprefix in N 0, then either tk 6∈ T 0 (not possible due
to clause 1) or there is an alternative activity ti ∈ σ (Thm. 5). Note that this
alternative activity has to be in σprefix , because else from σprefix it cannot follow
that tk cannot follow σprefix in N 0. This latter option cannot happen due to
clause 2 (else (ti, tk) ∈ λ∞(N ) but (ti, tk) 6∈ λ∞(N 0)). Hence tk must be able to
follow σprefix in N 0.</p>
        <p>(2) When tk cannot directly follow σprefix this means there is an activity
between σprefix and tk in N 0. We denote this activity with b ∈ T 0. We know
that (b, tk) ∈ λ∞(N 0) but also that (tk, b) 6∈ λ∞(N 0) (else b does not need to be
between σprefix and tk, by free-choiceness and soundness). Furthermore, by the
absence of loops and soundness, we know that b 6∈ σprefix (else b can be followed
by b in N 0). Then there are two options; (a) either b can follow σprefix in N , or
(b) b cannot follow σprefix in N .</p>
        <p>(a) Since (tk, b) 6∈ λ∞(N 0) it follows from clause 2, that (tk, b) 6∈ λ∞(N ).
This means that if b can follow σprefix in N , it has to be executed before tk is
executed. In σ this is not the case, i.e., there is no activity executed between
σprefix and tk, and Thm. 5 yields that there has to be an alternative activity
for b in σ (note that it does not need to be an alternative activity for b in N 0)
and by free-choiceness it has to be before tk, thus in σprefix . From this it follows
that b cannot follow σprefix in N . We only need to prove that part (b) yields a
contradiction.
(b) Thm. 5 yields that somewhere we have made a choice in σprefix to not
execute b in N , we call the activity after making this choice a. Since σprefix can
be followed by b in N 0, we obtain that (a, b) ∈ λ∞(N 0), but also (a, b) 6∈ λ∞(N )
(note that (b, a) 6∈ λ∞(N ), since this violates the acyclic property). From clause
3, we obtain there has to be an activity c such that (a, c) ∈ λ∞(N ) ∨ (c, a) ∈
λ∞(N ) and (b, c) 6∈ λ∞(N 0) ∧ (c, b) 6∈ λ∞(N 0). Finally, from Thm. 5, we obtain
that there has to be an alternative activity for b in σ, which c also is. Now it
remains to show that c is in σprefix . By free-choiceness, we obtain that c has
to be executed before tk. If c can be executed after tk, then dependent on the
activities chosen before tk, c can either be executed or not, which violates the
free-choice property. Since (c, tk) ∈ λ∞(N ), it follows that c has to be in σprefix ,
and thus no b can be between σprefix and tk in N 0.</p>
        <p>From this it follows that both models can execute tk directly after prefix
σprefix , and hence both models are able to perform σ (note that termination is
taken care of by including ⊥ as unique end activity) and thus it follows that σ is
also in L(N 0). Thus by contradiction, we have shown that λ∞(N ) ≤∞ λ∞(N 0) ⇒
L(N ) ⊆ L(N 0). tu</p>
        <p>In case T = T 0, we can decide language inclusion based on the ∞-mapping.
However, in general it is the case that T 6= T 0. Therefore, we extend our approach
to the case in which T ⊂ T 0. Note that we do not need to consider the case that
T 0 ⊂ T as language inclusion cannot hold.</p>
        <p>In order to achieve T = T 0, we have the following reduction on N 0:
– Remove all transitions t ∈ (T 0 \ T ) from N 0
– Remove all places not connected to any transition</p>
        <p>If the reduced net is sound then we can use Def. 10 on the transformed net
with T = T 0. It is easy to see that language inclusion is preserved as we only
remove transitions not present in T , i.e., we do not reduce the language w.r.t. the
overlap with T . If the resulting model is not sound, then a part of the language
of N cannot be part of N 0.</p>
        <p>Apart from showing the soundness of the abstraction using the ∞-mapping,
we also want to show the completeness. This means that if the language of N is
included in N 0, then our comparator always yields true.</p>
        <p>Theorem 7. (λ∞, ≤∞, {Acyclic}) is complete, i.e., for two acyclic free-choice
WF-nets N and N 0, we have λ∞(N ) ≤∞ λ∞(N 0) ⇐ L(N ) ⊆ L(N 0).
Proof. We prove this by contradiction. Assume L(N ) ⊆ L(N 0), but λ∞(N ) ≤∞
λ∞(N 0) does not yield true.</p>
        <p>Then, at least one of the clauses has to be false. Clause 1 and 2 follow
in a straightforward way. Assume clause 1 is false, then there is an activity
x ∈ T which is not in T 0. Since T is sound, this means x occurs in at least
one trace and this trace cannot occur in L(N 0). Assume clause 2 is false, this
means there is a relation between 2 activities x, y ∈ T such that (x, y) ∈ λ∞(N ),
which is not in λ∞(N 0). By definition, this means there is a word such that
A</p>
        <p>A</p>
        <p>E
B
C</p>
        <p>B</p>
        <p>E</p>
        <p>D</p>
        <p>C</p>
        <p>D</p>
        <p>B
A</p>
        <p>C
E
Fig. 7: Two process models where using the ∞-mapping gives a false positive.</p>
        <p>D</p>
        <p>A</p>
        <p>B</p>
        <p>D
σ = h. . . , x, . . . , y, . . .i, but this trace cannot be in L(N 0), else this relation was
also included in λ∞(N 0).</p>
        <p>Assume clause 3 is not valid, this means that: ∃(a, b) ∈ λ∞(N 0) : (∀c ∈ T :
¬((a, c) ∈ λ∞(N ) ∨ (c, a) ∈ λ∞(N )) ∨ (c, b) ∈ λ∞(N 0) ∨ (b, c) ∈ λ∞(N 0)) has to
hold (negation of the clause 3). Recall that due to &gt; and ⊥, λ∞(N 0) cannot be
empty.</p>
        <p>We choose an a and b, the universal quantifier denotes that either the activity
c is exclusive to a, or can occur together with b in a trace. Thus, there is no
alternative for b to occur together with a in the trace. If we chose b = c then
we have that either b does not occur with a in a trace in N , or (b, b) ∈ λ∞(N 0)
which is not possible due to the acyclicness. Thus, in N 0 a always occurs with
b, while in N they are alternatives. Hence, language inclusion cannot hold.</p>
        <p>We can conclude that Thm. 7 holds, and Def. 10 is complete.
No abstraction using the k-mapping In the most general case, when the
characterisation does not pose any constraints, we have the same problems as
mentioned earlier, e.g., that a simple inclusion does not work. Furthermore, we
now have difficulties introduced by the combination of cycles and non-sequential
activities, e.g., short loops in the α-mapping. Furthermore, the ∞-mapping has
problems with cycles. For instance, see Fig. 7 where both models have the same
∞-mapping. However, the trace ACBDE is included in the right model, but
not in the left model. Obviously, with equivalent ∞-mapping, we should have
language equivalence, i.e., any comparator denotes that the sets are included in
each other.</p>
        <p>Therefore, we consider the k-mapping. Again, using a naive approach, using
the inclusion of relations does not work. Consider, for instance, the models in
Fig. 8, where the relations in the right model are a subset of the relations in the
left model.</p>
        <p>A</p>
        <p>C</p>
        <p>G
B
D</p>
        <p>E</p>
        <p>F
Fig. 9: For the k-mapping, we cannot find a value for k such that it yields that
the right model is language included in the left model, but does not yield that
the left model is language included in the right model.</p>
        <p>∞</p>
        <p>The problem with looking at k elements in advance is that this k is bounded
by the shortest cycle. In other words, if k is larger than the shortest cycle then
activities are considered in parallel when they are in sequence. Consider Fig. 9,
from which it is clear that the right model is language-included in the left model.
However, if we compute the relation between the activities, we need to have a
relation between C and E (because present in right model, thus k ≥ 2), but also
k &lt; 2 because h...EGC...i is a proper part of a trace due to the cycle, while this
would yield that C and E are in parallel in the right model, and thus that the
left model is language included in the right model.
In Table 1, the total framework is listed. Trans. Syst. denotes that language
inclusion can be efficiently computed on the transitions system. T is the negative
abstraction only considering transitions. The negative abstraction using the
αmapping is listed under α. Finally, ∞ denotes the sound and complete positive
abstraction using the ∞-mapping. Under characteristics: A denotes acyclic, and
S denotes sequentiality. Pos/Neg denotes if it is a positive or negative approach,
and complete denotes if the approach is complete.
5</p>
      </sec>
    </sec>
    <sec id="sec-5">
      <title>Conclusion</title>
      <p>We have presented a framework that supports the decision of language inclusion
for sound unlabelled WF-nets in an efficient way. Apart from the framework,
we have provided a number of mappings, characterisations, and comparators to
be used in the framework. If there is sequentiality present in both WF-nets, the
language inclusion problem can be computed in polynomial time in terms of
the underlying transition systems. If one of the WF-nets is non-sequential, then
our framework may still efficiently decide language inclusion using a number
of abstractions. The first abstraction uses the sets of transitions: If the set of
transitions of the first net is not a subset of the set of transitions of the second,
then the language of the first net cannot be included in the language of the
second net. The second abstraction uses the directly-follows relation (also called
the α-relation) between transitions: If the α-relation of the first net is not a
subset of the α-relation of the second net, then the language of the first net
cannot be included in the language of the second net. The third abstraction uses
the eventually follows relation (also called the ∞-relation) between transitions:
If the ∞-relation of the first free-choice net is a subset of the ∞-relation of
the second free-choice net, and if some additional structural requirements hold,
then the language of the first net is included in the language of the second net.
For free-choice acyclic nets this third abstraction is complete. In other words,
language inclusion can only hold if the ∞-relation of the first net is a subset of
the ∞-relation of the second net, and if the additional structural requirements
hold.</p>
      <p>In case of free-choice unlabelled WF-nets, all relations can be computed
polynomial in the size of the WF-net. On these relations, we mainly perform
containment between sets. In the third abstraction, we search for an alternative activity
which, naively, entails trying every activity and adds a polynomial factor. Since
each of the steps is polynomial in the size of the WF-net, we can conclude that
our computations can be done polynomial in the size of the WF-net.</p>
      <p>The framework cannot efficiently decide on language inclusion in all cases.
Especially for nets that are (1) non-sequential, (2) are cyclic or are not
freechoice, and (3) for which language inclusion is known to hold, our current set of
abstractions will not be able to provide an answer in polynomial time. Due to
the fact that the comparators of the first two abstraction will yield true and the
preconditions of the third abstraction are not met. However, we do not claim that
our framework is complete. Yet, our framework can be easily extended based on
the general pattern provided with new abstractions that may provide efficient
answers for cases uncovered by the current abstractions: Given an abstraction,
a characterisation, and a comparator, a positive (like the third abstraction) or
negative (like the first two abstractions) abstraction can be formulated.</p>
      <p>In some cases, our abstractions can easily be applied to general Petri nets.
However, there does not exist, to our knowledge, a polynomial time algorithm
to compute the abstractions on general nets. One can argue that computing the
abstractions means analysing the behaviour in part or in full.</p>
      <p>In the future, we plan to extend our framework with abstractions that also
can deal with labelled WF-nets and with nets that are cyclic, for example by
considering abstractions based on block-structured nets. For block-structured
nets (with a single entry and a single exit), the relations (like α and ∞) between
transitions can often be derived efficiently from the block-structure.</p>
      <p>Furthermore, we want to quantify the difference between two languages based
on our framework, i.e., if language inclusion does not hold, what portion of the
language in not included, and which part of the net is the main reason the
language is not included. This can then be used as a quantification measure of
inclusion between nets, and as a diagnostic result that can be used to align nets
in such a way that language inclusion will hold.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <surname>Weidlich</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Werf</surname>
            ,
            <given-names>J.M.E.M.</given-names>
          </string-name>
          v.d.:
          <article-title>On Profiles and Footprints - Relational Semantics for Petri Nets</article-title>
          . [
          <volume>22</volume>
          ]
          <fpage>148</fpage>
          -
          <lpage>167</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>Glabbeek</surname>
            ,
            <given-names>R.J.v.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Weijland</surname>
            ,
            <given-names>W.P.</given-names>
          </string-name>
          :
          <article-title>Branching Time and Abstraction in Bisimulation Semantics</article-title>
          .
          <source>Journal of the ACM (JACM)</source>
          (
          <year>1996</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <surname>Kunze</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Weidlich</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Weske</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          :
          <string-name>
            <surname>Behavioral Similarity - A Proper Metric. In</surname>
            Rinderle-Ma,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Toumani</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Wolf</surname>
          </string-name>
          , K., eds.
          <source>: BPM</source>
          . Volume
          <volume>6896</volume>
          of Lecture Notes in Computer Science., Springer (
          <year>2011</year>
          )
          <fpage>166</fpage>
          -
          <lpage>181</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <surname>Aalst</surname>
            ,
            <given-names>W.M.P.</given-names>
          </string-name>
          v.d.,
          <string-name>
            <surname>Adriansyah</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Dongen</surname>
            ,
            <given-names>B.F.v.</given-names>
          </string-name>
          :
          <article-title>Causal Nets: A Modeling Language Tailored towards Process Discovery</article-title>
          . In Katoen,
          <string-name>
            <given-names>J.P.</given-names>
            ,
            <surname>König</surname>
          </string-name>
          , B., eds.
          <source>: CONCUR</source>
          . Volume
          <volume>6901</volume>
          of Lecture Notes in Computer Science., Springer (
          <year>2011</year>
          )
          <fpage>28</fpage>
          -
          <lpage>42</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <surname>Schunselaar</surname>
            ,
            <given-names>D.M.M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Verbeek</surname>
            ,
            <given-names>H.M.W.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Aalst</surname>
            ,
            <given-names>W.M.P.</given-names>
          </string-name>
          v.d.,
          <string-name>
            <surname>Reijers</surname>
            ,
            <given-names>H.A.</given-names>
          </string-name>
          :
          <article-title>Creating Sound and Reversible Configurable Process Models Using CoSeNets</article-title>
          . In Abramowicz, W.,
          <string-name>
            <surname>Kriksciuniene</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sakalauskas</surname>
          </string-name>
          , V., eds.
          <source>: BIS. Volume 117 of Lecture Notes in Business Information Processing.</source>
          , Springer (
          <year>2012</year>
          )
          <fpage>24</fpage>
          -
          <lpage>35</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <given-names>Clarke</given-names>
            <surname>Jr.</surname>
          </string-name>
          ,
          <string-name>
            <given-names>E.M.</given-names>
            ,
            <surname>Grumberg</surname>
          </string-name>
          ,
          <string-name>
            <given-names>O.</given-names>
            ,
            <surname>Peled</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.A.: Model</given-names>
            <surname>Checking</surname>
          </string-name>
          . The MIT Press (
          <year>1999</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <surname>Abdulla</surname>
            ,
            <given-names>P.A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Chen</surname>
            ,
            <given-names>Y.F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Holík</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Mayr</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Vojnar</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          :
          <article-title>When simulation meets antichains</article-title>
          . In Esparza, J.,
          <string-name>
            <surname>Majumdar</surname>
          </string-name>
          , R., eds.
          <source>: TACAS</source>
          . Volume
          <volume>6015</volume>
          of Lecture Notes in Computer Science., Springer (
          <year>2010</year>
          )
          <fpage>158</fpage>
          -
          <lpage>174</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <surname>Dill</surname>
            ,
            <given-names>D.L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Hu</surname>
            ,
            <given-names>A.J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Wong-Toi</surname>
          </string-name>
          , H.:
          <article-title>Checking for language inclusion using simulation preorders</article-title>
          . In Larsen, K.G.,
          <string-name>
            <surname>Skou</surname>
          </string-name>
          , A., eds.
          <source>: CAV</source>
          . Volume
          <volume>575</volume>
          of Lecture Notes in Computer Science., Springer (
          <year>1991</year>
          )
          <fpage>255</fpage>
          -
          <lpage>265</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <surname>Aalst</surname>
            ,
            <given-names>W.M.P.</given-names>
          </string-name>
          v.d.,
          <string-name>
            <surname>Weijters</surname>
            ,
            <given-names>A.J.M.M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Maruster</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          :
          <article-title>Workflow Mining: Discovering Process Models from Event Logs</article-title>
          .
          <source>IEEE Transactions on Knowledge and Data Engineering</source>
          <volume>16</volume>
          (
          <issue>9</issue>
          ) (
          <year>2004</year>
          )
          <fpage>1128</fpage>
          -
          <lpage>1142</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <surname>Badouel</surname>
          </string-name>
          , E.:
          <article-title>On the α-reconstructibility of workflow nets</article-title>
          . [
          <volume>22</volume>
          ]
          <fpage>128</fpage>
          -
          <lpage>147</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11.
          <string-name>
            <surname>Wen</surname>
          </string-name>
          , L.,
          <string-name>
            <surname>van der Aalst</surname>
            ,
            <given-names>W.M.P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Wang</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sun</surname>
          </string-name>
          , J.:
          <article-title>Mining process models with non-free-choice constructs</article-title>
          .
          <source>Data Mining and Knowledge Discovery</source>
          <volume>15</volume>
          (
          <issue>2</issue>
          ) (
          <year>2007</year>
          )
          <fpage>145</fpage>
          -
          <lpage>180</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          12.
          <string-name>
            <surname>Weidlich</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Polyvyanyy</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Mendling</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Weske</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          :
          <string-name>
            <surname>Causal Behavioural Profiles - Efficient Computation</surname>
          </string-name>
          , Applications, and Evaluation.
          <source>Fundamenta Informaticae</source>
          <volume>113</volume>
          (
          <issue>3-4</issue>
          ) (
          <year>2011</year>
          )
          <fpage>399</fpage>
          -
          <lpage>435</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          13.
          <string-name>
            <surname>Weidlich</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Polyvyanyy</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Desai</surname>
            ,
            <given-names>N.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Mendling</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Weske</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          :
          <article-title>Process compliance analysis based on behavioural profiles</article-title>
          .
          <source>Information Systems</source>
          <volume>36</volume>
          (
          <issue>7</issue>
          ) (
          <year>2011</year>
          )
          <fpage>1009</fpage>
          -
          <lpage>1025</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          14.
          <string-name>
            <surname>Smirnov</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Weidlich</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Mendling</surname>
          </string-name>
          , J.:
          <article-title>Business process model abstraction based on behavioral profiles</article-title>
          . In Maglio,
          <string-name>
            <given-names>P.P.</given-names>
            ,
            <surname>Weske</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            ,
            <surname>Yang</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            ,
            <surname>Fantinato</surname>
          </string-name>
          , M., eds.
          <source>: ICSOC</source>
          . Volume
          <volume>6470</volume>
          of Lecture Notes in Computer Science. (
          <year>2010</year>
          )
          <fpage>1</fpage>
          -
          <lpage>16</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          15.
          <string-name>
            <surname>Dongen</surname>
            ,
            <given-names>B.F.v.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Mendling</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Aalst</surname>
            ,
            <given-names>W.M.P.</given-names>
          </string-name>
          v.d.:
          <article-title>Structural Patterns for Soundness of Business Process Models</article-title>
          . In: EDOC, IEEE Computer Society (
          <year>2006</year>
          )
          <fpage>116</fpage>
          -
          <lpage>128</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          16.
          <string-name>
            <surname>Mendling</surname>
            , J., van Dongen,
            <given-names>B.F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>van der Aalst</surname>
            ,
            <given-names>W.M.P.</given-names>
          </string-name>
          :
          <article-title>On the degree of behavioral similarity between business process models</article-title>
          . In Nüttgens,
          <string-name>
            <given-names>M.</given-names>
            ,
            <surname>Rump</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.J.</given-names>
            ,
            <surname>Gadatsch</surname>
          </string-name>
          , A., eds.
          <source>: EPK</source>
          . Volume
          <volume>303</volume>
          of CEUR Workshop Proceedings., CEURWS.org (
          <year>2007</year>
          )
          <fpage>39</fpage>
          -
          <lpage>58</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          17.
          <string-name>
            <surname>Solé</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Carmona</surname>
            ,
            <given-names>J.:</given-names>
          </string-name>
          <article-title>A High-Level Strategy for C-net Discovery</article-title>
          . In Brandt, J.,
          <string-name>
            <surname>Heljanko</surname>
          </string-name>
          , K., eds.: ACSD, IEEE Computer Society (
          <year>2012</year>
          )
          <fpage>102</fpage>
          -
          <lpage>111</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          18.
          <string-name>
            <surname>Desel</surname>
          </string-name>
          , J.:
          <article-title>Validation of process models by construction of process nets</article-title>
          . In Aalst, W.M.P.v.d.,
          <string-name>
            <surname>Desel</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Oberweis</surname>
          </string-name>
          , A., eds.
          <source>: BPM. Volume 1806 of Lecture Notes in Computer Science</source>
          ., Springer (
          <year>2000</year>
          )
          <fpage>110</fpage>
          -
          <lpage>128</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          19.
          <string-name>
            <surname>Lautenbach</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          :
          <article-title>Liveness in Petri Nets</article-title>
          .
          <source>Internal Report of the Gesellschaft für Mathematik und Datenverarbeitung</source>
          . Bonn, Germany, ISF/
          <fpage>75</fpage>
          -02-
          <lpage>1</lpage>
          (
          <year>1975</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          20.
          <string-name>
            <surname>Desel</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Esparza</surname>
            ,
            <given-names>J.: Free</given-names>
          </string-name>
          <string-name>
            <surname>Choice Petri Nets</surname>
          </string-name>
          (Cambridge Tracts in Theoretical Computer Science). Cambridge University Press (
          <year>1995</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref21">
        <mixed-citation>
          21.
          <string-name>
            <surname>Aalst</surname>
            ,
            <given-names>W.M.P.</given-names>
          </string-name>
          v.d.:
          <article-title>Verification of Workflow Nets</article-title>
          . In Azéma, P.,
          <string-name>
            <surname>Balbo</surname>
          </string-name>
          , G., eds.
          <source>: ICATPN</source>
          . Volume
          <volume>1248</volume>
          of Lecture Notes in Computer Science., Springer (
          <year>1997</year>
          )
          <fpage>407</fpage>
          -
          <lpage>426</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref22">
        <mixed-citation>
          22.
          <string-name>
            <surname>Haddad</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Pomello</surname>
          </string-name>
          , L., eds.
          <source>: Application and Theory of Petri Nets - 33rd International Conference, PETRI NETS</source>
          <year>2012</year>
          , Hamburg, Germany, June 25-29,
          <year>2012</year>
          . Proceedings. In Haddad, S.,
          <string-name>
            <surname>Pomello</surname>
          </string-name>
          , L., eds.: Petri Nets. Volume
          <volume>7347</volume>
          of Lecture Notes in Computer Science., Springer (
          <year>2012</year>
          )
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>