Advertisement

Parallel state space construction for model-checking

  • Hubert Garavel
  • Radu Mateescu
  • Irina Smarandache
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 2057)

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.

Keywords

distributed algorithms labeled transition system Lotos model-checking state space construction verification 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 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. 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. 3.
    ANSI. Small Computer System Interface-2. Standard X3.131-1994, American National Standards Institute, January 1994.Google Scholar
  4. 4.
    J. A. Bergstra and J. W. Klop. Process Algebra for Synchronous Communication. Information and Computation, 60:109–137, 1984.zbMATHMathSciNetGoogle Scholar
  5. 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. 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. 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.zbMATHCrossRefGoogle Scholar
  8. 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. 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.zbMATHCrossRefGoogle Scholar
  10. 10.
    E. Clarke, O. Grumberg, and D. Peled. Model Checking. MIT Press, 2000.Google Scholar
  11. 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. 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. 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. 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.CrossRefGoogle Scholar
  15. 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. 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. 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. 18.
    C. A. R. Hoare. Communicating Sequential Processes. Prentice-Hall, 1985.Google Scholar
  19. 19.
    G. Holzmann. The Model Checker SPIN. IEEE Transactions on Software Engineering, 23(5):279–295, May 1997.CrossRefMathSciNetGoogle Scholar
  20. 20.
    Gerard J. Holzmann. Design and Validation of Computer Protocols. Software Series. Prentice Hall, 1991.Google Scholar
  21. 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. 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. 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. 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. 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. 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.CrossRefGoogle Scholar
  27. 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. 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. 29.
    F. Mattern. Algorithms for Distributed Termination Detection. Distributed Computing, 2:161–175, 1987.CrossRefGoogle Scholar
  30. 30.
    Robin Milner. Communication and Concurrency. Prentice-Hall, 1989.Google Scholar
  31. 31.
    D. Nicol and G. Ciardo. Automated Parallelization of Discrete State-Space Generation. Journal of Parallel and Distributed Computing, 47:153–167, 1997.CrossRefGoogle Scholar
  32. 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. 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. 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

Copyright information

© Springer-Verlag Berlin Heidelberg 2001

Authors and Affiliations

  • Hubert Garavel
    • 1
  • Radu Mateescu
    • 1
  • Irina Smarandache
    • 1
  1. 1.Inria Rhône-Alpes / VasyMontbonnot Saint MartinFrance

Personalised recommendations