Skip to main content
Log in

Question-guided stubborn set methods for state properties

  • Published:
Formal Methods in System Design Aims and scope Submit manuscript

Abstract

This paper presents two stubborn set methods for alleviating the state explosion problem when reasoning about state properties. The first method makes it possible to determine whether a state of the system is reachable in which a given state predicate holds. The second method makes it possible to determine if from all reachable states it is possible to reach a state where a given state predicate holds. The novelty of the two methods is that they rely on so-called up sets and down sets rather than the notion of visible transitions which causes earlier methods to give only limited reduction of the state space, especially when considering state predicates referring to many of the state variables of the system. The suggested stubborn set methods have been implemented in the LoLA tool, and we report on some experimental results obtained with this computer tool together with some general guidance for applying the two question-guided stubborn set methods and their different implementations in verification. The two methods are presented in the context of Petri Nets, but are applicable also to other state and action oriented modelling formalisms for which the basic stubborn set theory is applicable.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8

Similar content being viewed by others

Notes

  1. Condition D2 in Definition 5 has been changed slightly compared to [37] since a distinction between stubborn and semi-stubborn sets is not important in this paper.

References

  1. T. Andrews, S. Qadeer, S.K. Rajamani, J. Rehof, and Y. Xie,“Zing: A model checker for concurrent software,” in Proceedings of Conference on Computer-Aided Verification , Vol. 3114 of Lecture Notes in Computer Science, 2004, pp. 484–487.

  2. R. Bhattacharya, S. German, and G. Gopalakrishnan, “A symbolic partial order reduction algorithm for rule based transition systems,” Technical Report UUCS-03-028, School of Computing, University of Utah, 2003

  3. E. Clarke and E.A. Emerson, “Design and synthesis of synchronisation skeletons using branching time temporal logic,” in Proccedings of Workshop on Logic of Programs, Vol. 131 of Lecture Notes in Computer Science, 1981.

  4. E.M. Clarke, O. Grumberg, M. Minna, and D. Peled, “State Space Reduction using Partial Order Techniques,” Int. J. Soft. Tools Technol. Trans., Vol. 2, No, 3, pp. 279–287, 1999.

  5. E.M. Clarke, O. Grumberg, and D. Peled, Model Checking, The MIT Press, 1999.

  6. F. Curbera, Y. Goland, J. Klein, F. Leymann, D. Roller, S. Thatte, and S. Weerawarana, “Business process execution language for web services, Version 1.1,” Technical report, BEA Systems, International Business Machines Corporation, Microsoft Corporation, 2003.

  7. J. Desel and W. Reisig, “Place/Transition petri nets,” in Lecture on Petri Nets I: Basic Models, Vol. 1491 of Lecture Notes in Computer Science, Springer-Verlag, 1998, pp. 122–173.

  8. D.L. Dill, “The Murφ verification system,” in Proceedings of Conference on Computer-Aided Verification, Vol. 1102 of Lecture Notes in Computer Science 1996, pp. 390–393.

  9. E.A. Emerson, Temporal and Modal Logic, Vol. B of Handbook of Theoretical Computer Science, Elsevier, Chapt. 16, pp. 995–1072, 1990.

  10. R. Gerth, R. Kuiper, D. Peled, and W. Penczek, “A Partial order approach to branching time logic model checking,” in Proc. of 3rd Israel Symposium on the Theory of Computing and Systems, 1995, pp. 130–140.

  11. A. Gibbons, Algorithmic Graph Theory. Cambridge University Press, 1985.

  12. P. Godefroid, “Using partial orders to improve automatic verification methods,” in Proceedings of CAV'90, Vol. 531 of Lecture Notes in Computer Science, 1990, pp. 175–186.

  13. P. Godefroid, Partial-Order Methods for the Verification of Concurrent Systems, An Approach to the State-Explosion Problem, Vol. 1032 of Lecture Notes in Computer Science, Springer-Verlag, 1996.

  14. S. Hinz, K. Schmidt, and C. Stahl, “Transforming BPEL to petri nets,” in W. van der Aalst, B. Benatallah, F. Casati, and F. Curbera (Eds.), Proceedings of the Third International Conference on Business Process Management (BPM 2005), Vol. 3649 of Lecture Notes in Computer Science, Nancy, France, 2005, pp. 220–235.

  15. G.J. Holzmann, The SPIN Model Checker, Addison-Wesley, 2003.

  16. I. Kokkarinen, A. Valmari, and D. Peled, “Relaxed visibility enhances partial order reduction,” Form. Method Syst. Des., Vol. 19, pp. 275–289, 2001.

  17. L.M. Kristensen and A. Valmari, “Improved question-guided stubborn set methods for state properties,” in Proceedings of ICATPN'2000, vol. 1825 of Lecture Notes in Computer Science, 2000, pp. 282–301.

  18. A. Lluch-Lafuente, S. Edelkamp, and S. Leue,“Partial order reduction in directed model checking,” in Proc. of 9th International SPIN Workshop on Model Checking of Software, Vol. 2318 of Lecture Notes in Computer Science, 2002, pp. 112–127.

  19. T. Murata, “Petri Nets: Properties, analysis and application,” in Proceedings of the IEEE, Vol. 77, No. 4. IEEE Computer Society 1989, pp. 541–580.

  20. D. Peled, “All from one, one for all: On model checking using representatives,” in Proceedings of CAV'93, Vol. 697 of Lecture Notes in Computer Science, 1993, pp. 409–423.

  21. D. Peled, “Combining partial order reductions with on-the-fly model checking,” Form. Method Syst. Des., Vol. 8, No. 1, pp. 39–64, 1996,.

  22. D. Peled, “Ten years of partial order reduction,” in Proceedings of CAV'98, Vol. 1427 of Lecture Notes in Computer Science, 1998, pp. 17–28.

  23. A. Pnueli, “A Temporal Logic of Concurrent Systems,” Theor. Comp. Sci., Vol. 13, pp. 45–60, 1981.

  24. J.P. Quielle, and J. Sifakis, “Specification and verification of concurrent systems in CESAR,” in Proceedings of 5th International Symposium on Programming, Vol. 137 of Lecture Notes in Computer Science, 1982, pp. 337–350.

  25. C.A.R. Hoare, Communicating Sequential Processes. Prentice-Hall, 1985.

  26. W. Reisig, Petri Nets, Vol. 4 of EATCS Monographs on Theoretical Computer Science, Springer-Verlag, 1985.

  27. K. Schmidt, “Stubborn sets for standard properties,” in Proceedings of ICATPN'99, Vol. 1639 of Lecture Notes in Computer Science, 1999, pp. 46–65.

  28. K. Schmidt, “LoLA: A low level analyser,” in Proceedings of ICATPN'2000, Vol. 1825 of Lecture Notes in Computer Science, 2000, pp. 465–474.

  29. K. Schmidt, “LoLA tool homepage,” 2003 http://www.informatik.hu-berlin.de/~kschmidt/lola.html.

  30. C. Stahl, “A petri net semantics for BPEL,” Informatik-Berichte 188, Humboldt-Universitt zu Berlin, 2005.

  31. C. Stahl, W. Reisig, and M. Krstic, “Hazard detection in a GALS Wrapper: A case study,” in J. Desel and Y. Watanabe (Eds.), Proceedings of the Fifth International Conference on Application of Concurrency to System Design (ACSD'05), St. Malo, France, 2005, pp. 234–243.

  32. A. Valmari, “Error detection by reduced reachability graph generation,” in Proceedings of the 9th European Workshop on Application and Theory of Petri Nets, 1988, pp. 95–112.

  33. A. Valmari, “A stubborn attack on state explosion,” in Proceedings of CAV'90, Vol. 531 of Lecture Notes in Computer Scienc, 1990, pp. 156–165.

  34. A. Valmari, “Stubborn sets for reduced state space generation,” in G. Rozenberg (Ed.), Advances in Petri Nets '90, Vol. 483 of Lecture Notes in Computer Science, 1990, pp. 491–515.

  35. A. Valmari, “State of the art report: Stubborn sets,” Petri Net. Newsl., Vol. 46, pp. 6–14, 1994.

  36. A. Valmari, “Stubborn set methods for process algebras,” in Proceedings of POMIV'96, Workshop on Partial Order Methods in Verification, Vol. 29 of DIMACS Series in Discrete Mathematics and Theoretical Computer Science. American Mathematical Society, 1997, pp. 213–231.

  37. A. Valmari, “The state explosion problem,” in W. Reisig and G. Rozenberg (Eds.), Lectures on Petri Nets I: Basic Models, Vol. 1491 of Lecture Notes in Computer Science, Springer-Verlag, 1998, pp. 429–528.

  38. R. van Glabbeek and W. Weijland, “Branching time and abstraction in bisimulation semantics (Extended Abstract),” in Proc. of IFIP International Conference on Information Processing, 1989, pp. 613–618.

  39. B. Vergauwen and J. Lewi, “A linear local model checking algorithm for CTL,” in Proceedings of CONCUR'93, Vol. 715 of Lecture Notes in Computer Science, 1993, pp. 447–461.

  40. P. Wolper and P. Godefroid, “Partial order methods for temporal Verification,” in Proceedings of CONCUR'93, Vol. 715 of Lecture Notes in Computer Science, 1993, pp. 233–246.

Download references

Acknowledgments

The authors wish to thank the anonymous reviewers for their careful reading and many constructive comments which have helped us improve the paper

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to L. M. Kristensen.

Additional information

*Supported by the Danish Natural Science Research Council and the Carlsberg Foundation.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Kristensen, L.M., Schmidt, K. & Valmari, A. Question-guided stubborn set methods for state properties. Form Method Syst Des 29, 215–251 (2006). https://doi.org/10.1007/s10703-006-0006-1

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10703-006-0006-1

Keywords

Navigation