Skip to main content

Parallel state space construction for model-checking

  • Conference paper
  • First Online:
Model Checking Software (SPIN 2001)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 2057))

Included in the following conference series:

Abstract

The verification of concurrent finite-state systems by model- checking often requires to generate (a large part of) the state space of the system under analysis. Because of the state explosion problem, this may be a resource-consuming operation, both in terms of memory and Cpu time. In this paper, we aim at improving the performances of state space construction by using parallelization techniques. We present parallel algorithms for constructing state spaces (or Labeled Transition Systems) on a network or a cluster of workstations. Each node in the network builds a part of the state space, all parts being merged to form the whole state space upon termination of the parallel computation. These algorithms have been implemented within the [Cadp] verification tool set and experimented on various concurrent applications specified in Lotos. The results obtained show close to ideal speedups and a good load balancing between network nodes.

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

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. S. Allmaier, S. Dalibor, and D. Kreische. Parallel Graph Generation Algorithms for Shared and Distributed Memory Machines. In Proceedings of the Parallel Computing Conference PARCO’97 (Bonn, Germany). Springer-Verlag, 1997.

    Google Scholar 

  2. S. Allmaier, M. Kowarschik, and G. Horton. State Space Construction and Steady-State Solution of GSPNs on a Shared-Memory Multiprocessor. In Proceedings of the 7th IEEE International Workshop on Petri Nets and Performance Models PNPM’97 (Saint Malo, France), pages 112–121. IEEE CS-Press, 1997.

    Google Scholar 

  3. ANSI. Small Computer System Interface-2. Standard X3.131-1994, American National Standards Institute, January 1994.

    Google Scholar 

  4. J. A. Bergstra and J. W. Klop. Process Algebra for Synchronous Communication. Information and Computation, 60:109–137, 1984.

    MATH  MathSciNet  Google Scholar 

  5. S. Caselli, G. Conte, F. Bonardi, and M. Fontanesi. Experiences on SIMD Massively Parallel GSPN Analysis. In G. Haring and G. Kotsis, editors, Computer Performance Evaluation: Modelling Techniques and Tools, volume 794. Lecture Notes in Computer Science, Springer-Verlag, 1994.

    Google Scholar 

  6. S. C aselli, G. Conte, and P. Marenzoni. Parallel State Space Exploration for GSPN Models. In G. De Michelis and M. Diaz, editors, Applications and Theory of Petri Nets 1995, volume 935, pages 181–200. Lecture Notes in Computer Science, Springer-Verlag, 1995.

    Google Scholar 

  7. Ernest Chang and Rosemary Roberts. An Improved Algorithm for Decentralized Extrema-Finding in Circular Configurations of Processes. Communications of the ACM, 22(5):281–283, may 1979.

    Article  MATH  Google Scholar 

  8. G. Ciardo, J. Gluckman, and D. Nicol. Distributed State Space Generation of Discrete-State Stochastic Models. INFORMS Journal of Computing, 1997.

    Google Scholar 

  9. A. Cimatti, E. Clarke, F. Giunchiglia, and M. Roveri. NUSMV: a New Symbolic Model Checker. Springer International Journal on Software Tools for Technology Transfer (STTT), 2(4):410–425, April 2000.

    Article  MATH  Google Scholar 

  10. E. Clarke, O. Grumberg, and D. Peled. Model Checking. MIT Press, 2000.

    Google Scholar 

  11. D. Dill. The Murε Verification System. In R. Alur and T. Henzinger, editors, Proceedings of the 8th International Conference on Computer-Aided Verification CAV’96, volume 1102 of Lecture Notes in Computer Science, pages 390–393. Springer Verlag, July 1996.

    Google Scholar 

  12. Jean-Claude Fernandez, Hubert Garavel, Alain Kerbrat, Radu Mateescu, Laurent Mounier, and Mihaela Sighireanu. CADP (CÆSAR/ALDEBARAN Development Package): A Protocol Validation and Verification Toolbox. In Rajeev Alur and Thomas A. Henzinger, editors, Proceedings of the 8th Conference on Computer-Aided Verification (New Brunswick, New Jersey, USA), volume 1102 of Lecture Notes in Computer Science, pages 437–440. Springer Verlag, August 1996.

    Google Scholar 

  13. Hubert Garavel. OPEN/CÆSAR: An Open Software Architecture for Verification, Simulation, and Testing. In Bernhard Steffen, editor, Proceedings of the First International Conference on Tools and Algorithms for the Construction and Analysis of Systems TACAS’98 (Lisbon, Portugal), volume 1384 of Lecture Notes in Computer Science, pages 68–84, Berlin, March 1998. Springer Verlag. Full version available as INRIA Research Report RR-3352.

    Google Scholar 

  14. Hubert Garavel and Laurent Mounier. Specification and Verification of Various Distributed Leader Election Algorithms for Unidirectional Ring Networks. Science of Computer Programming, 29(1-2):171–197, July 1997. Special issue on Industrially Relevant Applications of Formal Analysis Techniques. Full version available as INRIA Research Report RR-2986.

    Article  Google Scholar 

  15. W. Gropp, S. Huss-Lederman, A. Lumsdaine, E. Lusk, B. Nitzberg, W. Saphir, and M. Snir. MPI: The Complete Reference, Vol. 2 — The MPI-2 Extensions. MIT Press, 1998.

    Google Scholar 

  16. B. Haverkort, H. Bohnenkamp, and A. Bell. On the Efficient Sequential and Distributed Evaluation of Very Large Stochastic Petri Nets. In Proceedings PNPM’99 (Petri Nets and Performance Models). IEEE CS-Press, 1999.

    Google Scholar 

  17. T. Heyman, D. Geist, O. Grumberg, and A. Schuster. Achieving Scalability in Parallel Reachability Analysis of Very Large Circuits. In E. A. Emerson and A. P. Sistla, editors, Proceedings of the 12th International Conference on Computer-Aided Verification CAV’2000 (Chicago, IL, USA), volume 1855 of Lecture Notes in Computer Science, pages 20–35. Springer Verlag, July 2000.

    Google Scholar 

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

    Google Scholar 

  19. G. Holzmann. The Model Checker SPIN. IEEE Transactions on Software Engineering, 23(5):279–295, May 1997.

    Article  MathSciNet  Google Scholar 

  20. Gerard J. Holzmann. Design and Validation of Computer Protocols. Software Series. Prentice Hall, 1991.

    Google Scholar 

  21. ISO/IEC. LOTOS — A Formal Description Technique Based on the Temporal Ordering of Observational Behavior. International Standard 8807, International Organization for Standardization — Information Processing Systems — Open Systems Interconnection, Genève, September 1988.

    Google Scholar 

  22. J-M. Jézéquel, W.M. Ho, A. Le Guennec, and F. Pennaneac’h. UMLAUT: an Extendible UML Transformation Framework. In R.J. Hall and E. Tyugu, editors, Proceedings of the 14th IEEE International Conference on Automated Software Engineering ASE’99. IEEE, 1999. Also available as INRIA Technical Report RR-3775.

    Google Scholar 

  23. W. J. Knottenbelt and P. G. Harrison. Distributed Disk-Based Solution Techniques for Large Markov Models. In Proceedings of the 3rd International Meeting on the Numerical Solution of Markov Chains NSMC’99, Zaragoza, Spain, September 1999.

    Google Scholar 

  24. W. J. Knottenbelt, M. A. Mestern, P. G. Harrison, and P. Kritzinger. Probability, Parallelism and the State Space Exploration Problem. In Proceedings of the 10th International Conference on Modelling, Techniques and Tools (TOOLS’ 98), pages 165–179. LNCS 1469, September 1998.

    Google Scholar 

  25. Gérard Le Lann. Distributed Systems — Towards a Formal Approach. In B. Gilchrist, editor, Information Processing 77, pages 155–160. IFIP, North-Holland, 1977.

    Google Scholar 

  26. F. Lerda and R. Sista. Distributed-Memory Model Checking with SPIN. In D. Dams, R. Gerth, S. Leue, and M. Massink, editors, Proceedings of the 5th and 6th International SPIN Workshops on Theoretical and Practical Aspects of SPIN Model Checking SPIN’99, volume 1680 of Lecture Notes in Computer Science, pages 22–39. Springer Verlag, July 1999.

    Chapter  Google Scholar 

  27. P. Marenzoni, S. Caselli, and G. Conte. Analysis of Large GSPN Models: a Distributed Solution Tool. In Proceedings of the 7th International Workshop on Petri Nets and Performance Models, pages 122–131. IEEE Computer Society Press, 1997.

    Google Scholar 

  28. Radu Mateescu and Mihaela Sighireanu. Efficient On-the-Fly Model-Checking for Regular Alternation-Free Mu-Calculus. In Stefania Gnesi, Ina Schieferdecker, and Axel Rennoch, editors, Proceedings of the 5th International Workshop on Formal Methods for Industrial Critical Systems FMICS’2000 (Berlin, Germany), GMD Report 91, pages 65–86, Berlin, April 2000. Also available as INRIA Research Report RR-3899.

    Google Scholar 

  29. F. Mattern. Algorithms for Distributed Termination Detection. Distributed Computing, 2:161–175, 1987.

    Article  Google Scholar 

  30. Robin Milner. Communication and Concurrency. Prentice-Hall, 1989.

    Google Scholar 

  31. D. Nicol and G. Ciardo. Automated Parallelization of Discrete State-Space Generation. Journal of Parallel and Distributed Computing, 47:153–167, 1997.

    Article  Google Scholar 

  32. Y.S. Ramakrishna and S.A. Smolka. Partial-Order Reduction in the Weak Modal Mu-Calculus. In A. Mazurkiewicz and J. Winkowski, editors, Proceedings of the 8th International Conference on Concurrency Theory CONCUR’97, volume 1243 of Lecture Notes in Computer Science, pages 5–24. Springer Verlag, 1997.

    Google Scholar 

  33. Judi Romijn. Model Checking the HAVi Leader Election Protocol. Technical Report SEN-R9915, CWI, Amsterdam, The Netherlands, June 1999. submitted to Formal Methods in System Design.

    Google Scholar 

  34. U. Stern and D. Dill. Parallelizing the Murε Verifier. In Computer Aided Verification, volume 1254, pages 256–267. Lecture Notes in Computer Science, Springer-Verlag, 1997.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2001 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Garavel, H., Mateescu, R., Smarandache, I. (2001). Parallel state space construction for model-checking. In: Dwyer, M. (eds) Model Checking Software. SPIN 2001. Lecture Notes in Computer Science, vol 2057. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-45139-0_14

Download citation

  • DOI: https://doi.org/10.1007/3-540-45139-0_14

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-42124-5

  • Online ISBN: 978-3-540-45139-6

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics