<!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>Process Pruner: A Tool for Sequence-Based Event Log Preprocessing</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>David Baumgartner, Andreas Haghofer, Martin Limberger</string-name>
          <email>ffirstnameg.flastnameg@students.fh-hagenberg.at</email>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Emmanuel Helm</string-name>
          <email>emmanuel.helm@fh-hagenberg.at</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Advanced Information Systems and Technology, University of Applied Sciences Upper Austria</institution>
          ,
          <addr-line>4232, Hagenberg</addr-line>
          ,
          <country country="AT">Austria</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>Department of Data Science and Engineering, University of Applied Sciences Upper Austria</institution>
          ,
          <addr-line>4232, Hagenberg</addr-line>
          ,
          <country country="AT">Austria</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>-A major challenge in applying process mining on real event data is the presence of noisy or incomplete cases or unusual behaviors. Applying process mining on raw event data leads to wrong conclusions during the discovery of process models, concealing the typical behavior. In this paper, an alternative for filtering event data without the need for extensive preprocessing is presented. The method is based on generated footprint matrices of randomly pruned sub-logs and works in a semi-automated manner. By identifying the most similar matrices to validate the whole log, traces representing unusual behavior can be excluded or highlighted. The tool was implemented with Python 3, NumPy and Pandas and is publicly available on GitHub. We evaluated our tool using benchmark data-sets and compared it to human filtering and discovery results. Index Terms-Data mining; Process mining; Preprocessing II. MATERIAL III. METHODOLOGY</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>I. INTRODUCTION</title>
      <p>
        Process mining represents an essential and evolving part
in the field of data analysis. It provides ”fact-based insights
and supports process improvements of business processes” [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ].
With techniques provided by the field of process mining, it
is possible to extract knowledge from event logs which are
produced everywhere in todays information systems [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ], [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ].
In this context, a trace is a particular sequence of events
beginning with a start-event and ending with an end-event.
Real-life event logs usually include some noise. This is the
result of rare and infrequent behavior in processes or can be
produced by miss recordings or through errors. A cleaning
task is therefore mandatory to be able to discover and extract
useful knowledge. This step is part of the preprocessing in the
data analysis context. The goal can vary from highlighting or
temporarily excluding unwanted cases [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ]–[
        <xref ref-type="bibr" rid="ref6">6</xref>
        ].
      </p>
      <p>
        This proposed tool and its algorithm represent an approach
for an automated cleaning task, which can find the most
frequent control flows in an event log. The whole technique
is based on the concept of footprint matrices, which were
introduced with the alpha algorithm. [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ]. This algorithm
extracts information for each trace and creates so-called footprint
matrices for further analysis. They represent the event flow for
one or more cases. These matrices can be used to find patterns
and similarities in the control flow of the event log.
      </p>
      <p>This method can clean event logs from unexpected behavior
(i.e., rare sequences of events), it additionally allows inverting
the result and highlight cases that represent rare or infrequent
behavior.</p>
      <p>
        A combination of different software tools and libraries were
used to create the Process Pruner tool. The actual program was
created with Python 3.6 using the NumPy1 and the Pandas2
library. To visualize the results, ProM version 6.8 and Disco
were used. Especially the included Inductive visual Miner
[
        <xref ref-type="bibr" rid="ref7">7</xref>
        ] in ProM provided the necessary optical information to
compare the generated results of the algorithm with the raw
results.
      </p>
      <p>Before the actual pruning algorithm starts grouping the
traces as seen in Fig. 1, an additional preprocessing can be
applied. This stop targets the end events of every trace.</p>
      <p>
        If the user provides a list of valid end events, then this
information is used as a preprocessing filter before the actual
algorithm starts. Each matrix is generated out of K amount
of traces (default 50) which are generated by grouping all
traces of the log by their identifier. After shuffling the resulting
identifiers, K of them are chosen to constitute a sub-log. This
process is repeated N times till N amount of footprint matrices
are generated. The generation follows the rules described
within the alpha algorithm [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ]. Each of the matrices represents
one way of how to interpret the core process of the event
log. To figure out which of them are representative for the
real world process, the similarity of every footprint matrix to
all others is calculated. Based on the hypothesis, that the most
similar ones are the best match to represent the core process of
the event log. The similarity between the matrices is calculated
by merely counting the identical entries and calculating the
relative amount of them compared to the number of
matrixentries, this is shown in equation 1.
      </p>
      <p>similarity =
count(similarEntries)
count(entries)
(1)</p>
    </sec>
    <sec id="sec-2">
      <title>1http://www.numpy.org/</title>
    </sec>
    <sec id="sec-3">
      <title>2https://pandas.pydata.org/</title>
      <p>Fig. 1. All cases of the log are group depending on their case id to get
the whole trace. For each of the N generated footprint matrices, K traces are
randomly selected (i.e. each trace is only used for the generation of exactly
one footprint matrix). After calculating the similarity of each matrix to all the
others, the most uniform one is used to validate the event log. The final log
only contains the traces which could be replayed by the selected matrix.</p>
      <p>
        This method works under the assumption that footprint
matrices contain pairs of directly following events. Based on
pairs, a full footprint matrix represent a sequence of pairs
which express a possibility of the underlying event log [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ].
Finally, this method requires more frequent behavior with
correct sequences than strong varying ones. Therefore it is
possible to extract the core process by selecting the most
similar footprint matrices because these are the ones with less
noise or invalid traces. The actual tagging is done by replaying
each trace against one or more chosen footprint matrices. If
this is possible with all of the selected footprint matrices, it
is marked as a valid trace. Otherwise, it is dropped out of
the final log. This leads to a generalized process model of the
processed event log.
      </p>
    </sec>
    <sec id="sec-4">
      <title>IV. RESULT</title>
      <p>This tool with its algorithm can be used in a pipeline, where
first filtering should happen to gain a better overview. This tool
contains an interactive command-line interface, which allows
to define the source CSV-file, the output-files and setting
the trace and event identifier. Additionally, it allows filtering
before the primary analysis by an end event criteria, which can
be skipped. The output contains two files – one containing the
matching traces and one the non-matching traces. The tool is
also publicly available on GitHub3 with a demo video4.</p>
    </sec>
    <sec id="sec-5">
      <title>3https://github.com/2er0/ProcessPruner</title>
    </sec>
    <sec id="sec-6">
      <title>4https://2er0.github.io/ProcessPruner/ICPM-2019-Process-Pruner.webm</title>
    </sec>
    <sec id="sec-7">
      <title>V. EVALUATION</title>
      <p>The proposed method is tested with two publicly available
benchmark datasets. The tool needs a CSV-file for input.
eXtensible Event Stream-files (XES) must be converted to
a CSV-file, e.g. via ProM or Disco. For the evaluation, the
default value 50 was used for the variable K.</p>
      <p>
        a) Road Traffic Fine Management Process [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ]: The first
dataset is a real-life event log from a management system for
road-traffic fines of an Italian local police force. This dataset
has its specialties with a lot of incomplete traces and contains
150.370 traces comprising 561.470 events. The amount of
events per trace varies from 2 to 20. The log without any
preprocessing contains 231 different kinds of process variants
as seen in Tab. I.
      </p>
      <p>
        By applying a variant filter only keeping the traces that
appeared more than once, 131 different variants of traces
remained. The original event log contains lots of
irregularities, i.e. there are many different process variants [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ]. After
manually filtering, only 8 variants are left, which represent the
most essential processes. This is done by defining which end
events are allowed and by removing incomplete traces, but
requires insights into the data and domain knowledge. The
Process Pruner automated apporach reduced the event log to
29 variations, which is almost like manual filtering.
      </p>
      <p>
        The results between the different preprocessing can be seen
in the Tab. I. The Process Pruner almost achieved the filter
quality like manual filtering without any insights into the
dataset.
b) Artificial Event Log - Hospital example [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ]: This
dataset provides event logs of medical processes with different
amount of noise within the log. This data was originally used
for a publication [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ] were they showed a heuristic approach to
reduce the noise within a log and not removing real behavior.
Without any preprocessing, the final model as footprint matrix
looks like Tab. IV.
      </p>
      <p>
        As seen in the Tab. IV, there are more than one ways of how
to start the process. This should not be possible, because the
log is generated. As described in [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ], there should always be
”Triage” at the beginning of each trace like in the real world.
Therefore it can be noticed that the log contains traces which
are incomplete in the way that the first few events are missing
[
        <xref ref-type="bibr" rid="ref13">13</xref>
        ]. Without any parameters set, the presented algorithm is
capable of solving this problem as seen in Tab. V.
      </p>
      <p>This example clearly shows the potential of this automated
preprocessing algorithm. Without any parameters set it was
possible to filter incomplete traces and reduce the log in a
way that the core process becomes visible. The Tab. II shows
metric information for this event log. The original metric is
therefore set against filtering by 80 percent variant with Disco
and filtering with the Process Pruner. The table shows that the
variant already reduced the most varying traces. The Process
Pruner was able to remove more and was able to keep the
primary process which is shown in the Tab. V.</p>
      <p>To prove that this is also possible with a noisy dataset, the
used dataset, therefore, provides the base event log with 30
percent noise. The Tab. III contains the metrics of the original
dataset and the variant filtering and the filtering with the
Process Pruner. Our tool was able to find the primary process
and removed about 50 percent of variants.</p>
      <p>As seen in Tab. VI it is also possible to reduce noise within
a log and get an approximation of the core process. Even if
there are some differences compared to the previous example,
it was possible to reconstruct parts of the core process. This
includes the information that every trace in this context has to
start with the ”Triage” event and the ”Organize Ambulance”
event could only be placed after all the other ones. It is also
clear that ”X-Ray” and ”Check” are compulsory events.</p>
      <p>This example can be seen as a demo of how the presented
algorithm can be used. If the user has to manually filter the
invalid traces out of a dataset with 30 percent wrong events, it
is for sure not as easy as to use this algorithm which could be
run more than one time to get more and more stable results.
Even with noisy data, it is possible to get an insight into how
the real world process could be.</p>
    </sec>
    <sec id="sec-8">
      <title>VI. DISCUSSION</title>
      <p>Compared to a manually done preprocessing, the presented
workflow clearly shows its strength in the field of filtering
incomplete traces and noisy event logs. Especially for event
logs with a high amount of events, it is not trivial to get
an insight which traces are valid and which ones are not.
Therefore it is time and cost saving to use preprocessing
algorithms like the one presented in this paper to get stable
results which deliver a good approximation of the real world
processes.</p>
      <p>Even data logs with a high amount of noise could be used
to discover the core processes hidden in the log. This also
delivers the possibility to isolate the noise producing parts
of the real world by merely applying the algorithm in the
way that not the most similar footprint matrices were used,
instead of the more unique ones, which are representative for
the noise and unusual behavior within the log. The combined
information of the core process and the error producing and
unique process instances deliver very detailed insight into the
real world processes which could otherwise only be possible
by investing much time by manually extracting the information
out of the event log.</p>
    </sec>
    <sec id="sec-9">
      <title>VII. CONCLUSION AND OUTLOOK</title>
      <p>This tool was designed and implemented by students in the
Process Mining class of the Data Science and Engineering
Master’s program at the University of Applied Sciences Upper
Austria in Hagenberg. It will be used in future lectures to
compare the students’ manual data clearing efforts with an
automated approach and to analyze the benefits and
weaknesses of automated log filtering. With the next release, we
plan to support XES-files as sources for this tool and plan to
integrate it into PM4PY.</p>
      <p>As the importance of process mining as well as the amount
of collected log data rises, new preprocessing approaches
are needed. We showed that our automatic preprocessing
tool could help to improve the quality of logs by filtering
incomplete or rare traces. Furthermore, we showed that the
Process Pruner could be used to detect rare behavior, which
might be interesting in scenarios where the rare traces have
a significant impact on the process. More research has to be
done in this area to make the preprocessing more accurate in
terms of finding the most exciting cases.
&gt;
#
&lt;
&lt;
&lt;
#
#
#
&gt;
#
&lt;
&lt;
&lt;
#
#
#
k
k
k
k
k
k
k
k
#
&gt;
k
k
k
k
k
#
#
&gt;
k
k
k
k
k
&lt;
#
&gt;
k
#
k
k
&gt;
&lt;
#
&gt;
k
#
k
&lt;
#
#
#
&gt;
k
#
k
&lt;
&gt;
#
&gt;
k
k
k
#
&lt;
k
&gt;
#
&gt;
k
k
#
&lt;
#
#
#
&gt;
k
k
#
&lt;
&gt;
#</p>
      <sec id="sec-9-1">
        <title>Triage</title>
      </sec>
      <sec id="sec-9-2">
        <title>Register</title>
      </sec>
      <sec id="sec-9-3">
        <title>Check</title>
        <p>X-Ray</p>
      </sec>
      <sec id="sec-9-4">
        <title>Visit</title>
      </sec>
      <sec id="sec-9-5">
        <title>Final Visit</title>
      </sec>
      <sec id="sec-9-6">
        <title>Prepare</title>
      </sec>
      <sec id="sec-9-7">
        <title>Organize Ambulance</title>
      </sec>
      <sec id="sec-9-8">
        <title>Triage</title>
      </sec>
      <sec id="sec-9-9">
        <title>Register</title>
      </sec>
      <sec id="sec-9-10">
        <title>Check</title>
        <p>X-Ray</p>
      </sec>
      <sec id="sec-9-11">
        <title>Visit</title>
      </sec>
      <sec id="sec-9-12">
        <title>Final Visit</title>
      </sec>
      <sec id="sec-9-13">
        <title>Prepare</title>
      </sec>
      <sec id="sec-9-14">
        <title>Organize Ambulance Triage Register Check</title>
        <p>&gt;
#
k
&lt;
k
k
k
#
#
&lt;
#
#
#
#
#
#</p>
      </sec>
      <sec id="sec-9-15">
        <title>Triage</title>
      </sec>
      <sec id="sec-9-16">
        <title>Register</title>
      </sec>
      <sec id="sec-9-17">
        <title>Check</title>
        <p>X-Ray</p>
      </sec>
      <sec id="sec-9-18">
        <title>Visit</title>
      </sec>
      <sec id="sec-9-19">
        <title>Final Visit</title>
      </sec>
      <sec id="sec-9-20">
        <title>Prepare</title>
        <p>Organize Ambulance
k
k
k
k
&gt;
#
&lt;
#
#
#
k
&gt;
&gt;
#
&lt;
#
#
#
k
&gt;
&gt;
#
&lt;
#
&lt;
k
k
&lt;
k
&gt;
#
&lt;
#
#
k
#
#
&gt;
#
&lt;
#
#
k
&lt;
&lt;
&gt;
k
&lt;
#
#
k
&gt;
&lt;
#
&gt;
#
#
#
#
#
#
#
&gt;
#
#
#
&gt;
#
#
#
&gt;
#</p>
      </sec>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <surname>W. M. Van der Aalst</surname>
          </string-name>
          , “
          <article-title>Process discovery: An introduction</article-title>
          ,” in Process Mining. Springer,
          <year>2011</year>
          , pp.
          <fpage>125</fpage>
          -
          <lpage>156</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <surname>W. Van der Aalst,</surname>
          </string-name>
          “Data science in action,” in Process Mining. Springer,
          <year>2016</year>
          , pp.
          <fpage>3</fpage>
          -
          <lpage>23</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>W.</given-names>
            <surname>Van Der Aalst</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Adriansyah</surname>
          </string-name>
          ,
          <string-name>
            <surname>A. K. A. De Medeiros</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          <string-name>
            <surname>Arcieri</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          <string-name>
            <surname>Baier</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          <string-name>
            <surname>Blickle</surname>
            ,
            <given-names>J. C.</given-names>
          </string-name>
          <string-name>
            <surname>Bose</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          <string-name>
            <surname>Van Den</surname>
            <given-names>Brand</given-names>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Brandtjen</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Buijs</surname>
          </string-name>
          et al., “Process mining manifesto,” in International Conference on Business Process Management. Springer,
          <year>2011</year>
          , pp.
          <fpage>169</fpage>
          -
          <lpage>194</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <given-names>R. S.</given-names>
            <surname>Mans</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Schonenberg</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Song</surname>
          </string-name>
          , W. M.
          <string-name>
            <surname>van der Aalst</surname>
            , and
            <given-names>P. J.</given-names>
          </string-name>
          <string-name>
            <surname>Bakker</surname>
          </string-name>
          , “
          <article-title>Application of process mining in healthcare-a case study in a dutch hospital,” in International joint conference on biomedical engineering systems</article-title>
          and technologies. Springer,
          <year>2008</year>
          , pp.
          <fpage>425</fpage>
          -
          <lpage>438</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <given-names>A.</given-names>
            <surname>Bernstein</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.</given-names>
            <surname>Provost</surname>
          </string-name>
          , and
          <string-name>
            <given-names>S.</given-names>
            <surname>Hill</surname>
          </string-name>
          , “
          <article-title>Toward intelligent assistance for a data mining process: An ontology-based approach for cost-sensitive classification,” IEEE Transactions on knowledge and data engineering</article-title>
          , vol.
          <volume>17</volume>
          , no.
          <issue>4</issue>
          , pp.
          <fpage>503</fpage>
          -
          <lpage>518</lpage>
          ,
          <year>2005</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <given-names>D.</given-names>
            <surname>Tanasa</surname>
          </string-name>
          and
          <string-name>
            <given-names>B.</given-names>
            <surname>Trousse</surname>
          </string-name>
          , “
          <article-title>Advanced data preprocessing for intersites web usage mining,” IEEE Intelligent Systems</article-title>
          , vol.
          <volume>19</volume>
          , no.
          <issue>2</issue>
          , pp.
          <fpage>59</fpage>
          -
          <lpage>65</lpage>
          ,
          <year>2004</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <given-names>S. J.</given-names>
            <surname>Leemans</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Fahland</surname>
          </string-name>
          , and W. M. van der Aalst, “
          <article-title>Process and deviation exploration with inductive visual miner</article-title>
          .
          <source>” BPM (Demos)</source>
          , vol.
          <volume>1295</volume>
          , no.
          <issue>46</issue>
          , p.
          <fpage>8</fpage>
          ,
          <year>2014</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [8]
          <string-name>
            <surname>W. van der Aalst</surname>
          </string-name>
          , “
          <article-title>Process mining: Overview and opportunities</article-title>
          ,
          <source>” ACM Trans. Manage. Inf. Syst.</source>
          , vol.
          <volume>3</volume>
          , no.
          <issue>2</issue>
          , pp.
          <volume>7</volume>
          :
          <fpage>1</fpage>
          -
          <lpage>7</lpage>
          :
          <fpage>17</fpage>
          ,
          <string-name>
            <surname>Jul</surname>
          </string-name>
          .
          <year>2012</year>
          . [Online]. Available: http://doi.acm.
          <source>org/10</source>
          .1145/2229156.2229157
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [9]
          <string-name>
            <given-names>De</given-names>
            <surname>Leoni</surname>
          </string-name>
          ,
          <string-name>
            <surname>M.</surname>
          </string-name>
          (
          <article-title>Massimiliano) and Mannhardt</article-title>
          ,
          <string-name>
            <surname>F.</surname>
          </string-name>
          (
          <article-title>Felix), “Road traffic fine management process</article-title>
          ,”
          <year>2015</year>
          . [Online]. Available: https: //data.4tu.nl/repository/uuid:270fd440-1057
          <string-name>
            <surname>-</surname>
          </string-name>
          4fb9
          <string-name>
            <surname>-</surname>
          </string-name>
          89a9-b699b47990f5
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          [10]
          <string-name>
            <given-names>F.</given-names>
            <surname>Mannhardt</surname>
          </string-name>
          ,
          <string-name>
            <surname>M. De Leoni</surname>
            ,
            <given-names>H. A.</given-names>
          </string-name>
          <string-name>
            <surname>Reijers</surname>
          </string-name>
          , and
          <string-name>
            <surname>W. M. Van Der Aalst</surname>
          </string-name>
          , “
          <article-title>Balanced multi-perspective checking of process conformance</article-title>
          ,
          <source>” Computing</source>
          , vol.
          <volume>98</volume>
          , no.
          <issue>4</issue>
          , pp.
          <fpage>407</fpage>
          -
          <lpage>437</lpage>
          ,
          <year>2016</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          [11]
          <string-name>
            <surname>Mannhardt</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          (
          <article-title>Felix), “Data-driven process discovery - artificial event log</article-title>
          ,”
          <year>2016</year>
          . [Online]. Available: https://data.4tu.nl/repository/uuid:
          <fpage>32cad43f</fpage>
          -8bb9
          <string-name>
            <surname>-</surname>
          </string-name>
          46af-
          <fpage>8333</fpage>
          -48aae2bea037
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          [12]
          <string-name>
            <given-names>F.</given-names>
            <surname>Mannhardt</surname>
          </string-name>
          , M. de Leoni,
          <string-name>
            <given-names>H. A.</given-names>
            <surname>Reijers</surname>
          </string-name>
          , and
          <string-name>
            <given-names>W. M. P. van der Aalst,</given-names>
            “
            <surname>Data-Driven Process Discovery - Revealing Conditional</surname>
          </string-name>
          Infrequent Behavior from Event Logs,” in Advanced Information Systems Engineering, ser. Lecture Notes in Computer Science, E. Dubois and
          <string-name>
            <given-names>K.</given-names>
            <surname>Pohl</surname>
          </string-name>
          , Eds. Springer International Publishing,
          <year>2017</year>
          , pp.
          <fpage>545</fpage>
          -
          <lpage>560</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          [13]
          <string-name>
            <given-names>F.</given-names>
            <surname>Mannhardt</surname>
          </string-name>
          , M. de Leoni,
          <string-name>
            <given-names>H. A.</given-names>
            <surname>Reijers</surname>
          </string-name>
          , and
          <string-name>
            <surname>W. M. van der Aalst,</surname>
          </string-name>
          “
          <article-title>Data-driven process discovery-revealing conditional infrequent behavior from event logs,”</article-title>
          <source>in International Conference on Advanced Information Systems Engineering</source>
          . Springer,
          <year>2017</year>
          , pp.
          <fpage>545</fpage>
          -
          <lpage>560</lpage>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>