Page 51 -
P. 51

2.2 Process Models                                              33

            that the absence of deadlocks does not guarantee successful termination. The transi-
            tion system may livelock, i.e., some transitions are still enabled but it is impossible
            to reach one of the final states.
              Any process model with executable semantics can be mapped onto a transition
            system. Therefore, many notions defined for transition systems can easily be trans-
            lated to higher-level languages such as Petri nets, BPMN, and UML activity dia-
            grams. Consider, for example, the seemingly simple question: “When are two pro-
            cesses the same from a behavioral point of view”. As shown in [120], many equiv-
            alence notions can be defined. Trace equivalence considers two transition systems
            to be equivalent if their execution sequences are the same. More refined notions
            like branching bisimilarity also take the moment of choice into account. These no-
            tions defined for transition systems can be used for any pair of process models as
            long as the models are expressed in a language with executable semantics (see also
            Sect. 5.3).
              Transition systems are simple but have problems expressing concurrency suc-
            cinctly. Suppose that there are n parallel activities, i.e., all n activities need to be ex-
            ecuted but any order is allowed. There are n! possible execution sequences. The tran-
                               n
            sition system requires 2 states and n × 2 n−1  transitions. This is an example of the
            well-known “state explosion” problem [91]. Consider for example 10 parallel activi-
            ties. The number of possible execution sequences is 10!= 3,628,800, the number of
            reachable states is 2 10  = 1024, and the number of transitions is 10 × 2 10−1  = 5120.
            The corresponding Petri net is much more compact and needs only 10 transitions
            and 10 places to model the 10 parallel activities. Given the concurrent nature of
            business processes, more expressive models like Petri nets are needed to adequately
            represent process mining results.



            2.2.2 Petri Nets

            Petri nets are the oldest and best investigated process modeling language allowing
            for the modeling of concurrency. Although the graphical notation is intuitive and
            simple, Petri nets are executable and many analysis techniques can be used to ana-
            lyze them [58, 77, 96]. In the Introduction, we already showed an example Petri net.
            Figure 2.2 shows the Petri net again with the various constructs highlighted. A Petri
            net is a bipartite graph consisting of places and transitions. The network structure
            is static, but, governed by the firing rule, tokens can flow through the network. The
            state of a Petri net is determined by the distribution of tokens over places and is
            referred to as its marking. In the initial marking shown in Fig. 2.2 there is only one
            token; start is the only marked place.

            Definition 2.2 (Petri net) A Petri net is a triplet N = (P,T,F) where P is a finite
            set of places, T is a finite set of transitions such that P ∩T =∅, and F ⊆ (P ×T)∪
            (T ×P) is a set of directed arcs, called the flow relation.A marked Petri net is a pair
            (N,M), where N = (P,T,F) is a Petri net and where M ∈ B(P) is a multi-set over
            P denoting the marking of the net. The set of all marked Petri nets is denoted N .
   46   47   48   49   50   51   52   53   54   55   56