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 was 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.
Bibliographical note© ACM, 2018. This is the author's version of the work. It is posted here by permission of ACM for your personal use. Not for redistribution. The definitive version was published in ACM Computing Surveys (CSUR), [VOL 51, ISS 5], (December 2018) http://doi.acm.org/10.1145/3241736
Copyright © and Moral Rights are retained by the author(s) and/ or other copyright owners. A copy can be downloaded for personal non-commercial research or study, without prior permission or charge. This item cannot be reproduced or quoted extensively from without first obtaining permission in writing from the copyright holder(s). The content must not be changed in any way or sold commercially in any format or medium without the formal permission of the copyright holders.
- Model checking
- Petri nets
ASJC Scopus subject areas
- Theoretical Computer Science
- Computer Science(all)