<?xml version="1.0" encoding="UTF-8"?>
<TEI xml:space="preserve" xmlns="http://www.tei-c.org/ns/1.0" 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xsi:schemaLocation="http://www.tei-c.org/ns/1.0 https://raw.githubusercontent.com/kermitt2/grobid/master/grobid-home/schemas/xsd/Grobid.xsd"
 xmlns:xlink="http://www.w3.org/1999/xlink">
	<teiHeader xml:lang="en">
		<fileDesc>
			<titleStmt>
				<title level="a" type="main">A Framework for Efficiently Deciding Language Inclusion for Sound Unlabelled WF-Nets</title>
			</titleStmt>
			<publicationStmt>
				<publisher/>
				<availability status="unknown"><licence/></availability>
			</publicationStmt>
			<sourceDesc>
				<biblStruct>
					<analytic>
						<author>
							<persName><forename type="first">D</forename><forename type="middle">M M</forename><surname>Schunselaar</surname></persName>
							<email>d.m.m.schunselaar@tue.nl</email>
							<affiliation key="aff0">
								<orgName type="institution">Eindhoven University of Technology</orgName>
								<address>
									<postBox>P.O. Box 513</postBox>
									<postCode>5600 MB</postCode>
									<settlement>Eindhoven</settlement>
									<country key="NL">The Netherlands</country>
								</address>
							</affiliation>
						</author>
						<author>
							<persName><forename type="first">H</forename><forename type="middle">M W</forename><surname>Verbeek</surname></persName>
							<email>h.m.w.verbeek@tue.nl</email>
							<affiliation key="aff0">
								<orgName type="institution">Eindhoven University of Technology</orgName>
								<address>
									<postBox>P.O. Box 513</postBox>
									<postCode>5600 MB</postCode>
									<settlement>Eindhoven</settlement>
									<country key="NL">The Netherlands</country>
								</address>
							</affiliation>
						</author>
						<author>
							<persName><forename type="first">W</forename><forename type="middle">M P</forename><surname>Van Der Aalst</surname></persName>
							<affiliation key="aff0">
								<orgName type="institution">Eindhoven University of Technology</orgName>
								<address>
									<postBox>P.O. Box 513</postBox>
									<postCode>5600 MB</postCode>
									<settlement>Eindhoven</settlement>
									<country key="NL">The Netherlands</country>
								</address>
							</affiliation>
						</author>
						<author>
							<persName><forename type="first">H</forename><forename type="middle">A</forename><surname>Reijers</surname></persName>
							<email>h.a.reijers@tue.nl</email>
							<affiliation key="aff0">
								<orgName type="institution">Eindhoven University of Technology</orgName>
								<address>
									<postBox>P.O. Box 513</postBox>
									<postCode>5600 MB</postCode>
									<settlement>Eindhoven</settlement>
									<country key="NL">The Netherlands</country>
								</address>
							</affiliation>
						</author>
						<title level="a" type="main">A Framework for Efficiently Deciding Language Inclusion for Sound Unlabelled WF-Nets</title>
					</analytic>
					<monogr>
						<imprint>
							<date/>
						</imprint>
					</monogr>
					<idno type="MD5">374FC6F93F723C035E45C786585CA9A4</idno>
				</biblStruct>
			</sourceDesc>
		</fileDesc>
		<encodingDesc>
			<appInfo>
				<application version="0.7.2" ident="GROBID" when="2023-03-23T23:37+0000">
					<desc>GROBID - A machine learning software for extracting information from scholarly documents</desc>
					<ref target="https://github.com/kermitt2/grobid"/>
				</application>
			</appInfo>
		</encodingDesc>
		<profileDesc>
			<abstract>
<div xmlns="http://www.tei-c.org/ns/1.0"><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><p>This research has been carried out as part of the Configurable Services for Local Governments (CoSeLoG) project (http://www.win.tue.nl/coselog/).</p></div>
			</abstract>
		</profileDesc>
	</teiHeader>
	<text xml:lang="en">
		<body>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="1">Introduction</head><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., <ref type="bibr" target="#b0">[1]</ref><ref type="bibr" target="#b1">[2]</ref><ref type="bibr" target="#b2">[3]</ref>. 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 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 <ref type="bibr" target="#b3">[4]</ref>? 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 project <ref type="foot" target="#foot_0">1</ref> . 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 <ref type="bibr" target="#b4">[5]</ref>, 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 <ref type="bibr" target="#b4">[5]</ref>, 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. <ref type="figure">1</ref> 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. (⊆)</p><p>Fig. <ref type="figure">1</ref>: General pattern of the framework: First, we map every net to an alternative representation (like its set of transitions); second, by efficiently comparing these alternative representations (like the standard subset comparator on the sets of transitions), language inclusion may be decided.</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.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="2">Related Work</head><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 <ref type="bibr" target="#b5">[6]</ref><ref type="bibr" target="#b6">[7]</ref><ref type="bibr" target="#b7">[8]</ref>. 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 <ref type="bibr" target="#b8">[9]</ref>. The α-relation denotes direct succession between activities and was originally designed for process discovery. In <ref type="bibr" target="#b9">[10]</ref>, a characterisation is given for the nets discoverable by the α-relation. Extensions have been made to the α-relation in <ref type="bibr" target="#b10">[11]</ref> to be able to discover a larger set of nets.</p><p>The α-relation denotes direct succession, the relation used in behavioural profiles <ref type="bibr" target="#b2">[3,</ref><ref type="bibr" target="#b11">12,</ref><ref type="bibr" target="#b12">13]</ref> 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 <ref type="bibr" target="#b0">[1]</ref>, where eventual succession is still considered, but the distance between occurrences of transition is bounded. Using behavioural profiles, <ref type="bibr" target="#b13">[14]</ref> 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 <ref type="bibr" target="#b14">[15]</ref>. Causal footprints denote causality between activities. In <ref type="bibr" target="#b14">[15]</ref>, causal footprints are used to deduce structural properties of sound WF-nets. Using causal footprints, <ref type="bibr" target="#b15">[16]</ref> 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 <ref type="bibr" target="#b3">[4]</ref> 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 <ref type="bibr" target="#b16">[17]</ref>. Furthermore, <ref type="bibr" target="#b3">[4]</ref> presents an operational algorithm to transform a net to a causal net by transforming place and transition into activities.</p><p>Process nets <ref type="bibr" target="#b17">[18]</ref> 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 <ref type="bibr" target="#b18">[19]</ref>. 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 <ref type="bibr" target="#b19">[20]</ref>) 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></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="3">Preliminaries</head><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. Definition 1 (Transition System). A Transition System T S = (S, →, α, ω) is a tuple where:</p><p>-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 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. 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><p>-P is a set of places, -T ⊆ A is a set of transitions, such that</p><formula xml:id="formula_0">P ∩ T = ∅, -F ⊆ (P × T ) ∪ (T × P ) is a flow relation.</formula><p>The preset of a transition/place n, denoted by •n, is the set of places/transitions in i ∈ P ∪ T : (i, n) ∈ F . The postset of a transition/place n, denoted by n•, is the set of places/transitions in 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. Definition 3 (Bag over Set). Let S be a set. A bag over S is a function from S to the natural numbers N such that only a finite number of elements from S 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, [a 2 , b 3 , c] is the bag with two a's, three b's and one c; the bag [s 2 | 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 b 1 and b</p><formula xml:id="formula_1">2 , denoted b 1 + b 2 , is defined as [s n | s ∈ S ∧ n = b 1 (s) + b 2 (s)]. The difference of two bags b 1 and b 2 , denoted b 1 − b 2 , is defined as [s n | s ∈ S ∧ n = (b 1 (s) − b 2 (s)) max 0]. Bag b 1 is a subbag of b 2 , denoted b 1 ≤ b 2 , if and only if ∀s ∈ S : b 1 (s) ≤ b 2 (s).</formula><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 [t , 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 is denoted by M [t M . Marking M is obtained by taking the difference between M and the preset of t and summing it with the postset of t, i.e. M = M − •t + t•.</p><p>Definition 4 (Transition System of a Petri net). Let N = (P, T, F ) be a Petri net, let M i be a marking of N , and let M o be a marking of N , then the transition system T S = T S(N, M i , M o ), belonging to N , is constructed as follows:</p><formula xml:id="formula_2">-α = M i , -ω = M o , -S is the smallest set X, such that: • α ∈ X, ω ∈ X, and • if s ∈ X ∧ s[t s for some t ∈ T and s ∈ B(P ), then s ∈ X. -→= {(s 1 , t, s 2 ) | s 1 , s 2 ∈ S ∧ t ∈ T ∧ s 1 [t s 2 }.</formula><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 <ref type="bibr" target="#b20">[21]</ref>. 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</p><formula xml:id="formula_3">) = T S(N, [i], [o])).</formula><p>We require a WF-net to be sound <ref type="bibr" target="#b20">[21]</ref>.</p><p>Definition 5 (Soundness <ref type="bibr" target="#b20">[21]</ref>). 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]):</p><p>-∀m ∈ S : (m, ω) ∈→ * , where → * is the transitive closure of →, -∀t ∈ T : ∃s, s ∈ S : (s, t, s ) ∈→.</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></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="4">Approach</head><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.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="4.1">Abstract framework</head><p>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 denoting that: If the comparator yields true, N is guaranteed to be language included in N , and (2) a negative abstraction between N and N denoting that: If the comparator yields false, N is guaranteed to be not language included in N . This allows our framework to be more flexible.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="4.2">Mappings</head><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 A B Fig. <ref type="figure">2</ref>: Two WF-nets with different languages but with the same mapping. 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 (t 1 , t 2 ) is part of the mapping (denoted by λ α (N )), then there is a trace in which t 1 is directly followed by t 2 .</p><p>The ∞-mapping denotes that two transitions can follow each other eventually in a Petri net N , i.e., if (t 1 , t 2 ) is part of the mapping (denoted by λ ∞ (N )), then there is a trace in which t 1 is eventually followed by t 2 .</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. <ref type="figure">2</ref>. For this reason, we add artificial start and end activities ( , ⊥) to any net. Note that this does not limit the expressivity of the process models.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="4.3">Characteristics</head><p>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:</p><formula xml:id="formula_4">∀t 1 , t 2 ∈ T, s ∈ S : ¬(•t 1 + •t 2 ≤ s)</formula><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, s 0 , . . . , s n ∈ S, t 1 , . . . , t n ∈ T :</p><formula xml:id="formula_5">n &lt; 1 ∨ s 0 = s n ∨ ∃1 ≤ k ≤ n : (s k−1 , t k , s k ) ∈→.</formula><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></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>A B C</head><p>Fig. <ref type="figure">3</ref>: With the dashed place and arrows, we have a sequential construct, else not.</p><p>In <ref type="bibr" target="#b0">[1]</ref>(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. <ref type="figure">3</ref>, 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:</p><formula xml:id="formula_6">∀u 1 , u 2 , u 3 ∈ T : u 1 • ∩ • u 2 = ∅ ∨ u 1 • ∩ • u 3 = ∅ ∨ •u 2 ∩ •u 3 = ∅ ∨ |MSS(u 1 , u 2 )| = 1 ∨ |MSS(u 1 , u 3 )| = 1.</formula><p>Proof. We need to prove:</p><formula xml:id="formula_7">(∀t 1 , t 2 ∈ T, s ∈ S : ¬(•t 1 + •t 2 ≤ s)) ⇔ (∀u 1 , u 2 , u 3 ∈ T : u 1 • ∩ • u 2 = ∅ ∨ u 1 • ∩ • u 3 = ∅ ∨ •u 2 ∩ •u 3 = ∅ ∨ |MSS(u 1 , u 2 )| = 1 ∨ |MSS(u 1 , u 3 )| = 1).</formula><p>⇒ We prove this by contradiction, assume the left-hand side is true, but the right-hand side is false, thus ∃u 1 , u 2 , u 3 ∈ T :</p><formula xml:id="formula_8">u 1 • ∩ • u 2 = ∅ ∧ u 1 • ∩ • u 3 = ∅ ∧ •u 2 ∩ •u 3 = ∅ ∧ |MSS(u 1 , u 2 )| = 1 ∧ |MSS(u 1 , u 3 )| = 1.</formula><p>From the righthand side it follows that u 2 and u 3 are both enabled after executing u 1 (by soundness, we know u 1 can fire). Furthermore, u 2 and u 3 can fire directly after u 1 by the M SS, and because their presets are disjoint there is no ordering between u 2 and u 3 . Hence, there is a state s such that •u 2 +•u 3 ≤ s. ⇐ Again we prove this by contradiction, assume the right-hand side is true, but the left-hand side is false, thus ∃t 1 , t  </p><formula xml:id="formula_9">u 1 • ∩ • u 2 = ∅ and u 1 • ∩ • u 3 = ∅ and •u 2 ∩ •u 3 = ∅. • Assume t • ∩ • t 1 = ∅,</formula><formula xml:id="formula_10">: •t 1 ∩ t n • = ∅ ∨ (∃1 ≤ k &lt; n : t k • ∩ • t k+1 = ∅).</formula><p>Proof. We need to prove: (∀n ∈ N, s 0 , . . . , s n ∈ S, t 1 , . . . , t n ∈ T :</p><formula xml:id="formula_11">n &lt; 1 ∨ s 0 = s n ∨ ∃1 ≤ k ≤ n : (s k−1 , t k , s k ) ∈→) ⇔ (∀t 1 , . . . t n ∈ T : •t 1 ∩ t n • = ∅ ∨ (∃1 ≤ k &lt; n : t k • ∩ • t k+1 = ∅)).</formula><p>⇒ 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.</p><p>⇐ 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.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="4.4">Abstractions</head><p>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></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>Negative abstraction using T -mapping</head><p>The following negative abstraction is valid for all sound WF-nets.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>Definition 8 (T -Comparator).</head><p>Let N = (P, T, F ) and N = (P , T , F ) be sound WF-nets, let λ T be the T -mapping, then λ T (N )</p><formula xml:id="formula_12">≤ T λ T (N ) if and only if: λ T (N ) ⊆ λ T (N ) Theorem 3. (λ T , ≤ T , ∅) is a negative abstraction.</formula><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 ∈ T , then the traces in N that contain t are not traces of N . Hence, language inclusion cannot hold.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>Negative abstraction using α-mapping</head><p>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 = (P , T , F ), be sound WF-nets, let λ α be the α-mapping, then λ α (N ) ≤ α λ α (N ) if and only if:</p><formula xml:id="formula_13">λ α (N ) ⊆ λ α (N ) Theorem 4. (λ α , ≤ α , ∅) is a negative abstraction. Proof. We need to prove that ¬(λ α (N ) ≤ α λ α (N )) ⇒ ¬(L(N ) ⊆ L(N )) which can be rewritten to L(N ) ⊆ L(N ) ⇒ λ α (N ) ≤ α λ α (N ) which follows straight- forward from the definition of λ α .</formula><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><formula xml:id="formula_14">A B A B C D D</formula><p>Fig. <ref type="figure">4</ref>: Two process models where we have a false positive w.r.t. language inclusion if we simply use inclusion of the α-relation.</p><p>λ α (N ) ⊆ λ α (N ) 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. <ref type="figure">4</ref>. 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), <ref type="figure">(A, C), (B, C), (C, B), (B, D), (C, D</ref>)}, and in the right model we have the relations: λ α (N ) = {(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. <ref type="figure">4</ref>, by a C, while with omitting relations, we also omit these dependencies.</p><p>Consider Fig. <ref type="figure" target="#fig_1">5</ref>, 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.</p><p>Theorem 5. Let N = (P, T, F ) be a sound acyclic free-choice net, then:</p><formula xml:id="formula_15">∀a ∈ T, σ ∈ L(N ) : a ∈ σ ⇒ ∃b ∈ T : b ∈ σ ∧ (a, b) ∈ λ ∞ (N ) ∧ (b, a) ∈ λ ∞ (N ).</formula><p>Proof. Assume there is an a ∈ T and a ∈ σ (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  such that after t 1 a can still follow, but after executing t 2 a cannot follow. Due to the fact that the net is acyclic and free-choice, a cannot precede t 2 , i.e., if a can, via firing some transitions, mark the preset of t 2 then also the preset of t 1 is marked and hence a can execute again. Since a is not in σ, we have chosen t 2 , and thus t 2 ∈ σ. Also because a cannot follow t 2 , and t 2 cannot follow a, (a,</p><formula xml:id="formula_16">t 1 , t 2 (•t 1 = •t 2 ),</formula><formula xml:id="formula_17">t 2 ) ∈ λ ∞ (N ) ∧ (t 2 , a) ∈ λ ∞ (N ).</formula><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. <ref type="figure" target="#fig_2">6</ref>, 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.</p><p>(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 , we obtain that (a, b) ∈ λ ∞ (N ), but also (a, b) ∈ λ ∞ (N ) (note that (b, a) λ ∞ (N ), since this violates the acyclic property). From clause 3, we obtain there has to be an activity c such that (a, c)</p><formula xml:id="formula_18">∈ λ ∞ (N ) ∨ (c, a) ∈ λ ∞ (N ) and (b, c) ∈ λ ∞ (N ) ∧ (c, b) ∈ λ ∞ (N ).</formula><p>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 t k . If c can be executed after t k , then dependent on the activities chosen before t k , c can either be executed or not, which violates the free-choice property. Since (c, t k ) ∈ λ ∞ (N ), it follows that c has to be in σ prefix , and thus no b can be between σ prefix and t k in N .</p><p>From this it follows that both models can execute t k 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 ). Thus by contradiction, we have shown that λ</p><formula xml:id="formula_19">∞ (N ) ≤ ∞ λ ∞ (N ) ⇒ L(N ) ⊆ L(N ).</formula><p>In case T = T , we can decide language inclusion based on the ∞-mapping. However, in general it is the case that T = T . Therefore, we extend our approach to the case in which T ⊂ T . Note that we do not need to consider the case that T ⊂ T as language inclusion cannot hold.</p><p>In order to achieve T = T , we have the following reduction on N :</p><p>-Remove all transitions t ∈ (T \ T ) from N -Remove all places not connected to any transition If the reduced net is sound then we can use Def. 10 on the transformed net with T = T . 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 .</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 , then our comparator always yields true. Theorem 7. (λ ∞ , ≤ ∞ , {Acyclic}) is complete, i.e., for two acyclic free-choice WF-nets N and N , we have λ</p><formula xml:id="formula_20">∞ (N ) ≤ ∞ λ ∞ (N ) ⇐ L(N ) ⊆ L(N ).</formula><p>Proof. We prove this by contradiction. Assume L(N</p><formula xml:id="formula_21">) ⊆ L(N ), but λ ∞ (N ) ≤ ∞ λ ∞ (N ) does not yield true.</formula><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 . Since T is sound, this means x occurs in at least one trace and this trace cannot occur in L(N ). 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 ). By definition, this means there is a word such that Assume clause 3 is not valid, this means that:</p><formula xml:id="formula_22">∃(a, b) ∈ λ ∞ (N ) : (∀c ∈ T : ¬((a, c) ∈ λ ∞ (N ) ∨ (c, a) ∈ λ ∞ (N )) ∨ (c, b) ∈ λ ∞ (N ) ∨ (b, c) ∈ λ ∞ (N )</formula><p>) has to hold (negation of the clause 3). Recall that due to and ⊥, λ ∞ (N ) 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 ) which is not possible due to the acyclicness. Thus, in N 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.</p><p>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. <ref type="figure">7</ref> 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. 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. <ref type="figure">8</ref>, where the relations in the right model are a subset of the relations in the left model.  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. <ref type="figure" target="#fig_4">9</ref>, 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 ...EGC... 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.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="4.5">The complete framework</head><p>In Table <ref type="table" target="#tab_2">1</ref>, 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.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="5">Conclusion</head><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></div><figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_0"><head></head><label></label><figDesc>, D, E, F, H, I} {A, B, C, D, E, F, G, H, I} λ λ (set of transitions) (set of transitions)</figDesc></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_1"><head>Fig. 5 :</head><label>5</label><figDesc>Fig. 5: Using the α-relation, we cannot differentiate between valid transformations from parallel to sequential (bottom) and invalid transformations from parallel to sequential (top).</figDesc></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_2"><head>Fig. 6 :</head><label>6</label><figDesc>Fig. 6: left and middle model are language included in the right model without clause 3 in Def. 10.</figDesc></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_3"><head>Fig. 7 :Fig. 8 :</head><label>78</label><figDesc>Fig.7: Two process models where using the ∞-mapping gives a false positive.</figDesc></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_4"><head>Fig. 9 :</head><label>9</label><figDesc>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.</figDesc></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" type="table" xml:id="tab_0"><head></head><label></label><figDesc>Sincewe 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 t 1 and t 2 , let s be the first state. Then there is a transition t to reach state s, let t fire from state s , i.e., s [t s. By the fact that t 1 and t 2 can fire directly from s, we know that |MSS(t, t 1 )| = 1 and |MSS(t, t 2 )| = 1. Now it remains to prove that the first 3 clauses are false, that is:</figDesc><table /><note>2 ∈ T, s ∈ S : •t 1 + •t 2 ≤ s.</note></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" type="table" xml:id="tab_1"><head></head><label></label><figDesc>this means that s [t and s [t 1 . Then there are two options: •t + •t 1 ≤ s , this means s is an earlier state in which two transitions are enabled (not possible by assumption), and ¬(•t + •t 1 ≤ s ). We now obtain by free-choiceness that •t = •t 1 . From the fact that t 1 is still enabled after firing t, and the fact that t • ∩ • t 1 = ∅, we obtain that •t + •t 1 ≤ s , this is not possible due to the free-choiceness and soundness as this allows t 1 to fire twice, and hence (by free-choiceness) it is possible to mark the output place with two tokens.</figDesc><table /><note>• The proof for t • ∩ • t 2 goes analogous.• We only have the case where•t 1 ∩ •t 2 = ∅, thus •t 1 = •t 2 .Again by soundness and free-choiceness it follows that t 1 can fire twice from state s, hence it is not sound.Theorem 2. Let N = (P, T, F ) be a sound, free-choice WF-net, then N is acyclic if and only if: ∀t 1 , . . . t n ∈ T</note></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" type="table" xml:id="tab_2"><head>Table 1 :</head><label>1</label><figDesc>The framework for sound free-choice WF-nets</figDesc><table><row><cell cols="3">Abstraction Characterisation Pos/Neg Complete</cell></row><row><cell>Trans. Syst. T α ∞</cell><cell>S ∅ ∅ A</cell><cell>Pos Neg Neg Pos</cell></row></table></figure>
			<note xmlns="http://www.tei-c.org/ns/1.0" place="foot" n="1" xml:id="foot_0">http://www.win.tue.nl/coselog/</note>
			<note xmlns="http://www.tei-c.org/ns/1.0" place="foot" xml:id="foot_1">PNSE'13 -Petri Nets and Software Engineering</note>
			<note xmlns="http://www.tei-c.org/ns/1.0" place="foot" xml:id="foot_2">D. Schunselaar et al.: Deciding Language Inclusion for SU-WF-Nets</note>
			<note xmlns="http://www.tei-c.org/ns/1.0" place="foot" n="140" xml:id="foot_3">PNSE'13 -Petri Nets and Software Engineering</note>
		</body>
		<back>
			<div type="annex">
<div xmlns="http://www.tei-c.org/ns/1.0"><p>Definition 10 (∞-Comparator). Let N = (P, T, F ), N = (P , T , F ) be sound FC-nets adhering to the {Acyclic} characterisation, let λ ∞ be the ∞mapping, then λ ∞ (N ) ≤ ∞ λ ∞ (N ) if and only if:</p><p>Proof. We need to prove:</p><p>We prove this by contradiction, thus</p><p>By definition, this means there is a trace σ ∈ L(N ) such that σ ∈ L(N ). Now it remains to prove that this σ does not exist. We prove this by induction on the prefix of the trace. Let σ = t 1 , . . . , t k−1 , t k , . . . , t m be a trace, the prefix of σ (denoted by σ prefix ) are transitions before position k (i.e., σ prefix = t 1 , . . . , t k−1 ). It remains to show that if the prefix of σ corresponds to a prefix of a trace σ N ∈ L(N ) then t k has to be directly executable in N 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 .</p><p>Inductions hypothesis: assume σ prefix = t 1 , . . . t k−1 corresponds to a prefix of a trace in N , then there are two options: (1) t k cannot follow σ prefix in N , or (2) t k cannot follow σ prefix directly in N , i.e., there is at least on transition in between σ prefix and t k .</p><p>(1) If t k cannot follow σ prefix in N , then either t k ∈ T (not possible due to clause 1) or there is an alternative activity t i ∈ σ (Thm. 5). Note that this alternative activity has to be in σ prefix , because else from σ prefix it cannot follow that t k cannot follow σ prefix in N . This latter option cannot happen due to clause 2 (else (t i , t k ) ∈ λ ∞ (N ) but (t i , t k ) ∈ λ ∞ (N )). Hence t k must be able to follow σ prefix in N .</p><p>(2) When t k cannot directly follow σ prefix this means there is an activity between σ prefix and t k in N . We denote this activity with b ∈ T . We know that (b, t k ) ∈ λ ∞ (N ) but also that (t k , b) ∈ λ ∞ (N ) (else b does not need to be between σ prefix and t k , by free-choiceness and soundness). Furthermore, by the absence of loops and soundness, we know that b ∈ σ prefix (else b can be followed by b in N ). Then there are two options; (a) either b can follow</p><p>. This means that if b can follow σ prefix in N , it has to be executed before t k is executed. In σ this is not the case, i.e., there is no activity executed between σ prefix and t k , 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 ) and by free-choiceness it has to be before t k , 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.</p></div>			</div>
			<div type="references">

				<listBibl>

<biblStruct xml:id="b0">
	<monogr>
		<title level="m" type="main">On Profiles and Footprints -Relational Semantics for Petri Nets</title>
		<author>
			<persName><forename type="first">M</forename><surname>Weidlich</surname></persName>
		</author>
		<author>
			<persName><forename type="first">J</forename><forename type="middle">M E M V</forename><surname>Werf</surname></persName>
		</author>
		<imprint>
			<biblScope unit="volume">22</biblScope>
			<biblScope unit="page" from="148" to="167" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b1">
	<analytic>
		<title level="a" type="main">Branching Time and Abstraction in Bisimulation Semantics</title>
		<author>
			<persName><forename type="first">R</forename><forename type="middle">J V</forename><surname>Glabbeek</surname></persName>
		</author>
		<author>
			<persName><forename type="first">W</forename><forename type="middle">P</forename><surname>Weijland</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">Journal of the ACM (JACM</title>
		<imprint>
			<date type="published" when="1996">1996</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b2">
	<analytic>
		<title level="a" type="main">Behavioral Similarity -A Proper Metric</title>
		<author>
			<persName><forename type="first">M</forename><surname>Kunze</surname></persName>
		</author>
		<author>
			<persName><forename type="first">M</forename><surname>Weidlich</surname></persName>
		</author>
		<author>
			<persName><forename type="first">M</forename><surname>Weske</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">BPM</title>
		<title level="s">Lecture Notes in Computer Science</title>
		<editor>
			<persName><forename type="first">S</forename><surname>Rinderle-Ma</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">F</forename><surname>Toumani</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">K</forename><surname>Wolf</surname></persName>
		</editor>
		<imprint>
			<publisher>Springer</publisher>
			<date type="published" when="2011">2011</date>
			<biblScope unit="volume">6896</biblScope>
			<biblScope unit="page" from="166" to="181" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b3">
	<analytic>
		<title level="a" type="main">Causal Nets: A Modeling Language Tailored towards Process Discovery</title>
		<author>
			<persName><forename type="first">W</forename><forename type="middle">M P V D</forename><surname>Aalst</surname></persName>
		</author>
		<author>
			<persName><forename type="first">A</forename><surname>Adriansyah</surname></persName>
		</author>
		<author>
			<persName><forename type="first">B</forename><forename type="middle">F</forename><surname>Dongen</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">CONCUR</title>
		<title level="s">Lecture Notes in Computer Science</title>
		<editor>
			<persName><forename type="first">J</forename><forename type="middle">P</forename><surname>Katoen</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">B</forename><surname>König</surname></persName>
		</editor>
		<imprint>
			<publisher>Springer</publisher>
			<date type="published" when="2011">2011</date>
			<biblScope unit="volume">6901</biblScope>
			<biblScope unit="page" from="28" to="42" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b4">
	<analytic>
		<title level="a" type="main">Creating Sound and Reversible Configurable Process Models Using CoSeNets</title>
		<author>
			<persName><forename type="first">D</forename><forename type="middle">M M</forename><surname>Schunselaar</surname></persName>
		</author>
		<author>
			<persName><forename type="first">H</forename><forename type="middle">M W</forename><surname>Verbeek</surname></persName>
		</author>
		<author>
			<persName><forename type="first">W</forename><forename type="middle">M P V D</forename><surname>Aalst</surname></persName>
		</author>
		<author>
			<persName><forename type="first">H</forename><forename type="middle">A</forename><surname>Reijers</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Lecture Notes in Business Information Processing</title>
				<editor>
			<persName><forename type="first">W</forename><surname>Abramowicz</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">D</forename><surname>Kriksciuniene</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">V</forename><surname>Sakalauskas</surname></persName>
		</editor>
		<imprint>
			<publisher>Springer</publisher>
			<date type="published" when="2012">2012</date>
			<biblScope unit="volume">117</biblScope>
			<biblScope unit="page" from="24" to="35" />
		</imprint>
	</monogr>
	<note>BIS.</note>
</biblStruct>

<biblStruct xml:id="b5">
	<monogr>
		<title level="m" type="main">Model Checking</title>
		<author>
			<persName><forename type="first">Clarke</forename><genName>Jr</genName></persName>
		</author>
		<author>
			<persName><forename type="first">E</forename><forename type="middle">M</forename><surname>Grumberg</surname></persName>
		</author>
		<author>
			<persName><forename type="first">O</forename><surname>Peled</surname></persName>
		</author>
		<author>
			<persName><forename type="first">D</forename><forename type="middle">A</forename></persName>
		</author>
		<imprint>
			<date type="published" when="1999">1999</date>
			<publisher>The MIT Press</publisher>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b6">
	<analytic>
		<title level="a" type="main">When simulation meets antichains</title>
		<author>
			<persName><forename type="first">P</forename><forename type="middle">A</forename><surname>Abdulla</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Y</forename><forename type="middle">F</forename><surname>Chen</surname></persName>
		</author>
		<author>
			<persName><forename type="first">L</forename><surname>Holík</surname></persName>
		</author>
		<author>
			<persName><forename type="first">R</forename><surname>Mayr</surname></persName>
		</author>
		<author>
			<persName><forename type="first">T</forename><surname>Vojnar</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">TACAS</title>
		<title level="s">Lecture Notes in Computer Science</title>
		<editor>
			<persName><forename type="first">J</forename><surname>Esparza</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">R</forename><surname>Majumdar</surname></persName>
		</editor>
		<imprint>
			<publisher>Springer</publisher>
			<date type="published" when="2010">2010</date>
			<biblScope unit="volume">6015</biblScope>
			<biblScope unit="page" from="158" to="174" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b7">
	<analytic>
		<title level="a" type="main">Checking for language inclusion using simulation preorders</title>
		<author>
			<persName><forename type="first">D</forename><forename type="middle">L</forename><surname>Dill</surname></persName>
		</author>
		<author>
			<persName><forename type="first">A</forename><forename type="middle">J</forename><surname>Hu</surname></persName>
		</author>
		<author>
			<persName><forename type="first">H</forename><surname>Wong-Toi</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">CAV</title>
		<title level="s">Lecture Notes in Computer Science</title>
		<editor>
			<persName><forename type="first">K</forename><forename type="middle">G</forename><surname>Larsen</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">A</forename><surname>Skou</surname></persName>
		</editor>
		<imprint>
			<publisher>Springer</publisher>
			<date type="published" when="1991">1991</date>
			<biblScope unit="volume">575</biblScope>
			<biblScope unit="page" from="255" to="265" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b8">
	<analytic>
		<title level="a" type="main">Workflow Mining: Discovering Process Models from Event Logs</title>
		<author>
			<persName><forename type="first">W</forename><forename type="middle">M P V D</forename><surname>Aalst</surname></persName>
		</author>
		<author>
			<persName><forename type="first">A</forename><forename type="middle">J M M</forename><surname>Weijters</surname></persName>
		</author>
		<author>
			<persName><forename type="first">L</forename><surname>Maruster</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">IEEE Transactions on Knowledge and Data Engineering</title>
		<imprint>
			<biblScope unit="volume">16</biblScope>
			<biblScope unit="issue">9</biblScope>
			<biblScope unit="page" from="1128" to="1142" />
			<date type="published" when="2004">2004</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b9">
	<monogr>
		<title level="m" type="main">On the α-reconstructibility of workflow nets</title>
		<author>
			<persName><forename type="first">E</forename><surname>Badouel</surname></persName>
		</author>
		<imprint>
			<biblScope unit="volume">22</biblScope>
			<biblScope unit="page" from="128" to="147" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b10">
	<analytic>
		<title level="a" type="main">Mining process models with non-free-choice constructs</title>
		<author>
			<persName><forename type="first">L</forename><surname>Wen</surname></persName>
		</author>
		<author>
			<persName><forename type="first">W</forename><forename type="middle">M P</forename><surname>Van Der Aalst</surname></persName>
		</author>
		<author>
			<persName><forename type="first">J</forename><surname>Wang</surname></persName>
		</author>
		<author>
			<persName><forename type="first">J</forename><surname>Sun</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">Data Mining and Knowledge Discovery</title>
		<imprint>
			<biblScope unit="volume">15</biblScope>
			<biblScope unit="issue">2</biblScope>
			<biblScope unit="page" from="145" to="180" />
			<date type="published" when="2007">2007</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b11">
	<analytic>
		<title level="a" type="main">Causal Behavioural Profiles -Efficient Computation, Applications, and Evaluation</title>
		<author>
			<persName><forename type="first">M</forename><surname>Weidlich</surname></persName>
		</author>
		<author>
			<persName><forename type="first">A</forename><surname>Polyvyanyy</surname></persName>
		</author>
		<author>
			<persName><forename type="first">J</forename><surname>Mendling</surname></persName>
		</author>
		<author>
			<persName><forename type="first">M</forename><surname>Weske</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">Fundamenta Informaticae</title>
		<imprint>
			<biblScope unit="volume">113</biblScope>
			<biblScope unit="issue">3-4</biblScope>
			<biblScope unit="page" from="399" to="435" />
			<date type="published" when="2011">2011</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b12">
	<analytic>
		<title level="a" type="main">Process compliance analysis based on behavioural profiles</title>
		<author>
			<persName><forename type="first">M</forename><surname>Weidlich</surname></persName>
		</author>
		<author>
			<persName><forename type="first">A</forename><surname>Polyvyanyy</surname></persName>
		</author>
		<author>
			<persName><forename type="first">N</forename><surname>Desai</surname></persName>
		</author>
		<author>
			<persName><forename type="first">J</forename><surname>Mendling</surname></persName>
		</author>
		<author>
			<persName><forename type="first">M</forename><surname>Weske</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">Information Systems</title>
		<imprint>
			<biblScope unit="volume">36</biblScope>
			<biblScope unit="issue">7</biblScope>
			<biblScope unit="page" from="1009" to="1025" />
			<date type="published" when="2011">2011</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b13">
	<analytic>
		<title level="a" type="main">Business process model abstraction based on behavioral profiles</title>
		<author>
			<persName><forename type="first">S</forename><surname>Smirnov</surname></persName>
		</author>
		<author>
			<persName><forename type="first">M</forename><surname>Weidlich</surname></persName>
		</author>
		<author>
			<persName><forename type="first">J</forename><surname>Mendling</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">ICSOC</title>
		<title level="s">Lecture Notes in Computer Science</title>
		<editor>
			<persName><forename type="first">P</forename><forename type="middle">P</forename><surname>Maglio</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">M</forename><surname>Weske</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">J</forename><surname>Yang</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">M</forename><surname>Fantinato</surname></persName>
		</editor>
		<imprint>
			<date type="published" when="2010">2010</date>
			<biblScope unit="volume">6470</biblScope>
			<biblScope unit="page" from="1" to="16" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b14">
	<analytic>
		<title level="a" type="main">Structural Patterns for Soundness of Business Process Models</title>
		<author>
			<persName><forename type="first">B</forename><forename type="middle">F V</forename><surname>Dongen</surname></persName>
		</author>
		<author>
			<persName><forename type="first">J</forename><surname>Mendling</surname></persName>
		</author>
		<author>
			<persName><forename type="first">W</forename><forename type="middle">M P V</forename><surname>Aalst</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">EDOC, IEEE Computer Society</title>
				<imprint>
			<date type="published" when="2006">2006</date>
			<biblScope unit="page" from="116" to="128" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b15">
	<analytic>
		<title level="a" type="main">On the degree of behavioral similarity between business process models</title>
		<author>
			<persName><forename type="first">J</forename><surname>Mendling</surname></persName>
		</author>
		<author>
			<persName><forename type="first">B</forename><forename type="middle">F</forename><surname>Van Dongen</surname></persName>
		</author>
		<author>
			<persName><forename type="first">W</forename><forename type="middle">M P</forename><surname>Van Der Aalst</surname></persName>
		</author>
		<ptr target=".org" />
	</analytic>
	<monogr>
		<title level="m">EPK</title>
		<title level="s">CEUR Workshop Proceedings</title>
		<editor>
			<persName><forename type="first">M</forename><surname>Nüttgens</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">F</forename><forename type="middle">J</forename><surname>Rump</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">A</forename><surname>Gadatsch</surname></persName>
		</editor>
		<imprint>
			<date type="published" when="2007">2007</date>
			<biblScope unit="volume">303</biblScope>
			<biblScope unit="page" from="39" to="58" />
		</imprint>
	</monogr>
	<note>CEUR-WS</note>
</biblStruct>

<biblStruct xml:id="b16">
	<analytic>
		<title level="a" type="main">A High-Level Strategy for C-net Discovery</title>
		<author>
			<persName><forename type="first">M</forename><surname>Solé</surname></persName>
		</author>
		<author>
			<persName><forename type="first">J</forename><surname>Carmona</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">ACSD, IEEE Computer Society</title>
				<editor>
			<persName><forename type="first">J</forename><surname>Brandt</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">K</forename><surname>Heljanko</surname></persName>
		</editor>
		<imprint>
			<date type="published" when="2012">2012</date>
			<biblScope unit="page" from="102" to="111" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b17">
	<analytic>
		<title level="a" type="main">Validation of process models by construction of process nets</title>
		<author>
			<persName><forename type="first">J</forename><surname>Desel</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">BPM</title>
		<title level="s">Lecture Notes in Computer Science</title>
		<editor>
			<persName><forename type="first">W</forename><forename type="middle">M P V D</forename><surname>Aalst</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">J</forename><surname>Desel</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">A</forename><surname>Oberweis</surname></persName>
		</editor>
		<imprint>
			<publisher>Springer</publisher>
			<date type="published" when="2000">2000</date>
			<biblScope unit="volume">1806</biblScope>
			<biblScope unit="page" from="110" to="128" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b18">
	<analytic>
		<title level="a" type="main">Liveness in Petri Nets</title>
		<author>
			<persName><forename type="first">K</forename><surname>Lautenbach</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">ISF</title>
		<imprint>
			<biblScope unit="page" from="75" to="77" />
			<date type="published" when="1975">1975</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b19">
	<analytic>
		<title level="a" type="main">Free Choice Petri Nets</title>
		<author>
			<persName><forename type="first">J</forename><surname>Desel</surname></persName>
		</author>
		<author>
			<persName><forename type="first">J</forename><surname>Esparza</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="s">Cambridge Tracts in Theoretical Computer Science</title>
		<imprint>
			<date type="published" when="1995">1995</date>
			<publisher>Cambridge University Press</publisher>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b20">
	<analytic>
		<title level="a" type="main">Verification of Workflow Nets</title>
		<author>
			<persName><forename type="first">W</forename><forename type="middle">M P V</forename><surname>Aalst</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">ICATPN</title>
		<title level="s">Lecture Notes in Computer Science</title>
		<editor>
			<persName><forename type="first">P</forename><surname>Azéma</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">G</forename><surname>Balbo</surname></persName>
		</editor>
		<imprint>
			<publisher>Springer</publisher>
			<date type="published" when="1997">1997</date>
			<biblScope unit="volume">1248</biblScope>
			<biblScope unit="page" from="407" to="426" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b21">
	<analytic>
		<title level="a" type="main">Application and Theory of Petri Nets -33rd International Conference</title>
		<author>
			<persName><forename type="first">S</forename><surname>Haddad</surname></persName>
		</author>
		<author>
			<persName><forename type="first">L</forename><surname>Pomello</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">PETRI NETS 2012</title>
		<title level="s">Lecture Notes in Computer Science</title>
		<editor>
			<persName><forename type="first">S</forename><surname>Haddad</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">L</forename><surname>Pomello</surname></persName>
		</editor>
		<meeting><address><addrLine>Hamburg, Germany</addrLine></address></meeting>
		<imprint>
			<publisher>Springer</publisher>
			<date type="published" when="2012">June 25-29, 2012. 2012</date>
			<biblScope unit="volume">7347</biblScope>
		</imprint>
	</monogr>
	<note>Petri Nets</note>
</biblStruct>

				</listBibl>
			</div>
		</back>
	</text>
</TEI>
