A Sweep-Line Method for State Space Exploration

  • Søren Christensen
  • Lars Michael Kristensen
  • Thomas Mailund
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 2031)


We present a state space exploration method for on-the-fly verification. The method is aimed at systems for which it is possible to define a measure of progress based on the states of the system. The measure of progress makes it possible to delete certain states on-the-fly during state space generation, since these states can never be reached again. This in turn reduces the memory used for state space storage during the task of verification. Examples of progress measures are sequence numbers in communication protocols and time in certain models with time. We illustrate the application of the method on a number of Coloured Petri Net models, and give a first evaluation of its practicality by means of an implementation based on the Design/CPN state space tool. Our experiments show significant reductions in both space and time used during state space exploration. The method is not specific to Coloured Petri Nets but applicable to a wide range of modelling languages.


State Space Model Check Garbage Collection Reachable State Progress Measure 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


  1. 1.
    D. Bertsekas and R. Gallager. Data Networks. Prentice-Hall, Inc., 1992.Google Scholar
  2. 2.
    R.E. Bryant. Graph Based Algorithms for Boolean Function Manipulation. IEEE Transactions on Computers, C-35(8):677–691, 1986.CrossRefGoogle Scholar
  3. 3.
    S. Christensen and J.B. Jørgensen. Analysis of Bang and Olufsen’s BeoLink Audio/Video System Using Coloured Petri Nets. In P. Azéma and G. Balbo, editors, Proceedings of ICATPN’97, volume 1248 of Lecture Notes in Computer Science, pages 387–406. Springer-Verlag, 1997.Google Scholar
  4. 4.
    S. Christensen, J.B. Jørgensen, and L.M. Kristensen. Design/CPN-A Computer Tool for Coloured Petri Nets. In E. Brinksma, editor, Proceedings of TACAS’97, volume 1217 of Lecture Notes in Computer Science, pages 209–223. Springer-Verlag, 1997.Google Scholar
  5. 5.
    E.M. Clarke, R. Enders, T. Filkorn, and S. Jha. Exploiting Symmetries in Temporal Logic Model Checking. Formal Methods in System Design, 9, 1996.Google Scholar
  6. 6.
    E.A. Emerson and A.P. Sistla. Symmetry and Model Checking. Formal Methods in System Design, 9, 1996.Google Scholar
  7. 7.
    J. Esparza. Model Checking using Net Unfoldings. Science of Computer Programming, 23:151–195, 1994.zbMATHCrossRefMathSciNetGoogle Scholar
  8. 8.
    P. Godefroid. Partial-Order Methods for the Verification of Concurrent Systems, An Approach to the State-Explosion Problem, volume 1032 of Lecture Notes in Computer Science. Springer-Verlag, 1996.Google Scholar
  9. 9.
    G.J. Holzmann. Tracing protocols. AT&T Technical Journal, 64(10):2413–2433, December 1985.Google Scholar
  10. 10.
    G.J. Holzmann. Design and Validation of Computer Protocols. Prentice-Hall International Editions, 1991.Google Scholar
  11. 11.
    G.J. Holzmann. An Analysis of Bitstate Hashing. Formal Methods in System Design, 13(3):287–305, November 1998. Extended and revised version of Proc. PSTV95, pp. 301–314.CrossRefMathSciNetGoogle Scholar
  12. 12.
    C. Jard and T. Jeron. Bounded-memory Algorithms for Verification On-the-fly. In Proceedings of CAV’91, volume 575 of Lecture Notes in Computer Science. Springer-Verlag, 1991.Google Scholar
  13. 13.
    K. Jensen. Coloured Petri Nets. Basic Concepts, Analysis Methods and Practical Use. Volume 1, Basic Concepts. Monographs in Theoretical Computer Science. Springer-Verlag, 1992.Google Scholar
  14. 14.
    K. Jensen. Condensed State Spaces for Symmetrical Coloured Petri Nets. Formal Methods in System Design, 9, 1996.Google Scholar
  15. 15.
    S. Katz and H. Miller. Saving Space by Fully Exploiting Invisible Transitions. Formal Methods in System Design, 14:311–332, 1999.CrossRefGoogle Scholar
  16. 16.
    L.M. Kristensen, S. Christensen, and K. Jensen. The Practitioner’s Guide to Coloured Petri Nets. International Journal on Software Tools for Technology Transfer, 2(2):98–132, 1998.zbMATHCrossRefGoogle Scholar
  17. 17.
    K. L. McMillan. A Technique of State Space Search Based on Unfolding. Formal Methods in System Design, 6(1):45–65, 1995.zbMATHCrossRefMathSciNetGoogle Scholar
  18. 18.
    A. N. Parashkevov and J. Yantchev. Space Efficient Reachability Analysis Through Use of Pseudo-Root States. In Proceedings of TACAS’97, volume 1217 of Lecture Notes in Computer Science, pages 50–64. Springer-Verlag, 1997.Google Scholar
  19. 19.
    D. Peled. All from One, One for All: On Model Checking Using Representatives. In Proceedings of CAV’93, volume 697 of Lecture Notes in Computer Science, pages 409–423. Springer-Verlag, 1993.Google Scholar
  20. 20.
    J.D. Ullman. Elements of ML Programming. Prentice-Hall, 1998.Google Scholar
  21. 21.
    A. Valmari. A Stubborn Attack on State Explosion. In Proceedings of CAV’90, volume 531 of Lecture Notes in Computer Scienc, pages 156–165. Springer-Verlag, 1990.Google Scholar
  22. 22.
    P. Wolper and P. Godefroid. Partial Order Methods for Temporal Verification. In Proceedings of CONCUR’93, volume 715 of Lecture Notes in Computer Science. Springer-Verlag, 1993.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2001

Authors and Affiliations

  • Søren Christensen
    • 1
  • Lars Michael Kristensen
    • 1
    • 2
  • Thomas Mailund
    • 1
  1. 1.Department of Computer ScienceUniversity of AarhusAarhus N.Denmark
  2. 2.School of Electrical and Information EngineeringUniversity of South AustraliaAustralia

Personalised recommendations