2 research outputs found
Maximal and minimal dynamic Petri net slicing
Context: Petri net slicing is a technique to reduce the size of a Petri net
so that it can ease the analysis or understanding of the original Petri net.
Objective: Presenting two new Petri net slicing algorithms to isolate those
places and transitions of a Petri net (the slice) that may contribute tokens to
one or more places given (the slicing criterion).
Method: The two algorithms proposed are formalized. The completeness of the
first algorithm and the minimality of the second algorithm are formally proven.
Both algorithms together with other three state-of-the-art algorithms have been
implemented and integrated into a single tool so that we have been able to
carry out a fair empirical evaluation.
Results: Besides the two new Petri net slicing algorithms, a public, free,
and open-source implementation of five algorithms is reported. The results of
an empirical evaluation of the new algorithms and the slices that they produce
are also presented.
Conclusions: The first algorithm collects all places and transitions that may
influence (in any computation) the slicing criterion, while the second
algorithm collects a minimum set of places and transitions that may influence
(in some computation) the slicing criterion. Therefore, the net computed by the
first algorithm can reproduce any computation that contributes tokens to any
place of interest. In contrast, the second algorithm loses this possibility but
it often produces a much more reduced subnet (which still can reproduce some
computations that contribute tokens to some places of interest). The first
algorithm is proven complete, and the second one is proven minimal
A survey of petri nets slicing
Petri nets slicing is a technique that aims to improve the verification of systems modeled in Petri nets. Petri nets slicing was first developed to facilitate debugging but then used for the alleviation of the state space explosion problem for the model checking of Petri nets. In this article, different slicing techniques are studied along with their algorithms introducing: i) a classification of Petri nets slicing algorithms based on their construction methodology and objective (such as improving state space analysis or testing), ii) a qualitative and quantitative discussion and comparison of major differences such as accuracy and efficiency, iii) a syntactic unification of slicing algorithms that improve state space analysis for easy and clear understanding, and iv) applications of slicing for multiple perspectives. Furthermore, some recent improvements to slicing algorithms are presented, which can certainly reduce the slice size even for strongly connected nets. A noteworthy use of this survey is for the selection and improvement of slicing techniques for optimizing the verification of state event models