Advertisement

Probabilistic Methods in State Space Analysis

  • Matthias Kuntz
  • Kai Lampka
Part of the Lecture Notes in Computer Science book series (LNCS, volume 2925)

Abstract

Several methods have been developed to validate the correctness and performance of hard- and software systems. One way to do this is to model the system and carry out a state space exploration in order to detect all possible states. In this paper, a survey of existing probabilistic state space exploration methods is given. The paper starts with a thorough review and analysis of bitstate hashing, as introduced by Holzmann. The main idea of this initial approach is the mapping of each state onto a specific bit within an array by employing a hash function. Thus a state is represented by a single bit, rather than by a full descriptor. Bitstate hashing is efficient concerning memory and runtime, but it is hampered by the non deterministic omission of states. The resulting positive probability of producing wrong results is due to the fact that the mapping of full state descriptors onto much smaller representatives is not injective. – The rest of the paper is devoted to the presentation, analysis, and comparison of improvements of bitstate hashing, which were introduced in order to lower the probability of producing a wrong result, but maintaining the memory and runtime efficiency. These improvements can be mainly grouped into two categories: The approaches of the first group, the so called multiple hashing schemes, employ multiple hash functions on either a single or on multiple arrays. The approaches of the remaining category follow the idea of hash compaction. I.e. the diverse schemes of this category store a hash value for each detected state, rather than associating a single or multiple bit positions with it, leading to persuasive reductions of the probability of error if compared to the original bitstate hashing scheme.

Keywords

State Space Hash Function Hash Table Memory Consumption Reachable State 
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.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Buchholz, P.: Structured Analysis Approaches for Large Markov Chains. Applied Numerical Mathematics 31, 375–404 (1999)zbMATHCrossRefMathSciNetGoogle Scholar
  2. 2.
    Godefroid, P.: Using Partial Orders to Improve Automatic Verification Methods. In: Clarke, E.M., Kurshan, R.P. (eds.) CAV 1990. LNCS, vol. 531, pp. 176–185. Springer, Heidelberg (1991)CrossRefGoogle Scholar
  3. 3.
    Godefroid, P.: Partial-Order Methods for the Verification of Concurrent Systems. An Approach to the State-Explosion Problem. PhD thesis, Universitè de Liege (1995)Google Scholar
  4. 4.
    Godefroid, P.: Model checking for programming languages using VeriSoft. In: Proceedings of the 24th ACM Symposium on Principles of Programming Languages, pp. 174–186 (1997)Google Scholar
  5. 5.
    Godefroid, P., Holzmann, G., Pirottin, D.: State Space Caching Revisited. In: Probst, D.K., von Bochmann, G. (eds.) CAV 1992. LNCS, vol. 663, pp. 178–191. Springer, Heidelberg (1992)Google Scholar
  6. 6.
    Godefroid, P., Wolper, P.: Using Partial Orders for the Efficient Verification of Deadlock Freedom and Safety Properties. Formal Methods in System Design 2(2), 149–164 (1993)zbMATHCrossRefGoogle Scholar
  7. 7.
    Graham, R., Knuth, D., Patashnik, O.: Concrete Mathematics, 2nd edn. Addison-Wesley, Reading (1994)zbMATHGoogle Scholar
  8. 8.
    Haverkort, B.R., Bell, A., Bohnenkamp, H.: On the Efficient Sequential and Distributed Generation of very Large Markov Chains from Stochastic Petri Nets. In: Proc. of IEEE Petri Nets and Performance Models, pp. 12–21 (1999)Google Scholar
  9. 9.
    Hermanns, H., Meyer-Kayser, J., Siegle, M.: Multi Terminal Binary Decision Diagrams to Represent and Analyse Continuous Time Markov Chains. In: Plateau, et al. [23], Proc. of the 3rd Int.Workshop on the Numerical Solution of Markov Chains (NSMC 1999), pp. 188–207 (1999)Google Scholar
  10. 10.
    Holzmann, G.: On Limits and Possibilities of Automated Protocol Analysis. In: Proc. 7th IFIP WG6.1 Int. Workshop on Protocol Specification, Testing, and Verification,, pp. 339–344. North-Holland Publishers, Amsterdam (1987)Google Scholar
  11. 11.
    Holzmann, G.: An Improved Protocol Reachability Analysis Technique. Software, Practice and Experience 18(2), 137–161 (1988)CrossRefGoogle Scholar
  12. 12.
    Holzmann, G.: Design and Validation of Computer Protocols. Prentice-Hall, Englewood Cliffs (1991)Google Scholar
  13. 13.
    Holzmann, G.: The Model Checker SPIN. IEEE Transactions on Software Engineering 23(5), 1–17 (1997)CrossRefMathSciNetGoogle Scholar
  14. 14.
    Holzmann, G.: An Analysis of Bitstate Hashing. Formal Methods in System Design 13(3), 289–307 (1998)CrossRefMathSciNetGoogle Scholar
  15. 15.
    Knottenbelt, W.: Generalized Markovian Analysis of Timed Transition Systems, Master’s Thesis, University of Cape Town (1996)Google Scholar
  16. 16.
    Knottenbelt, W., Harrison, P.: Distributed Disk-based Solution Techniques for Large Markov Models. In: Plateau, et al. (eds.) Proc. of the 3rd Int. Workshop on the Numerical Solution of Markov Chains (NSMC 1999)., vol. 23, pp. 58–75 (1999)Google Scholar
  17. 17.
    Knottenbelt, W., Harrison, P., Mestern, M., Kritzinger, P.: Probability, parallelism and the state space exploration problem. In: Puigjaner, R., Savino, N., Serra, B. (eds.) TOOLS 1998. LNCS, vol. 1469, pp. 165–179. Springer, Heidelberg (1998)CrossRefGoogle Scholar
  18. 18.
    Knottenbelt, W., Harrison, P., Mestern, M., Kritzinger, P.: A Probabilistic Dynamic Technique for the Distributed Generation of Very Large State Spaces. Performance Evaluation Journal 39(1–4), 127–148 (2000)zbMATHCrossRefGoogle Scholar
  19. 19.
    Knottenbelt, W.J.: Parallel Performance Analysis of Large Markov Models. PhD thesis, University of London, Imperial College, Dept. of Computing (1999)Google Scholar
  20. 20.
    Knuth, D.: The Art of Computer Programming: Vol 3: Sorting and Searching, 2nd edn. Addison-Wesley, Reading (1998)Google Scholar
  21. 21.
    Kuntz, M., Lampka, K.: Probabilistic Methods in State Space Analysis. Technical Report 7 07/02, Universität Erlangen-Nürnberg, Institut für Informatik 7 (2002)Google Scholar
  22. 22.
    Ottman, Th., Widmayer, P.: Algorithmen und Datenstrukturen, 3 revised edn. Spektrum Akademischer Verlag (1996)Google Scholar
  23. 23.
    Plateau, B., Stewart, W.J., Silva, M. (eds.) Proc. of the 3rd Int. Workshop on the Numerical Solution of Markov Chains NSMC 1999, Prensas Universitarias de Zaragoza (1999)Google Scholar
  24. 24.
    Siegle, M.: Behaviour analysis of communication systems: Compositional modelling, compact representation and analysis of performability properties, Habilitationsschrift, Institut für Informatik. Friederich-Alexander-Universität Erlangen- Nürnberg (2002)Google Scholar
  25. 25.
    Stern, U.: Algorithmic Techniques in Verification by Explicit State Enumeration. PhD thesis, Technische Universität München (1997)Google Scholar
  26. 26.
    Stern, U., Dill, D.L.: Improved Probabilistic Verification by Hash Compaction. In: Sloman, M., Lobo, J., Lupu, E.C. (eds.) POLICY 2001. LNCS, vol. 1995, pp. 206–224. Springer, Heidelberg (2001)Google Scholar
  27. 27.
    Stern, U., Dill, D.L.: A New Scheme for Memory-Efficient Probabilistic Verification. In: Gotzhein, R., Bredereke, J. (eds.) Formal Description Techniques IX: Theory, application and tools. IFIP Conference Proceedings, vol. 96, pp. 333–348. Kluwer, Dordrecht (1996); Proc. of IFIP TC6 WG6.1 International Conference on Formal Description Techniques IX / Protocol Specification, Testing and Verification XVI, Kaiserslautern Germany, October 8-11Google Scholar
  28. 28.
    Stern, U., Dill, D.L.: Combining State Space Caching and Hash Compaction. In: Methoden des Entwurfs und der Verifikation digitaler Systeme, 4. GI/ITG/GME Workshop, pp. 81–90 (1996)Google Scholar
  29. 29.
    Wolper, P., Leroy, D.: Reliable Hashing Without Collision Detection. In: Courcoubetis, C. (ed.) CAV 1993. LNCS, vol. 697, pp. 59–70. Springer, Heidelberg (1993)Google Scholar
  30. 30.
    Wolper, P., Stern, U., Leroy, D., Dill, D.L.: Reliable probabilistic verification using hash compaction (submitted for publication), Downloaded from http://www.citeseer.nj.nec.com/32915.html on (August 23, 2002)

Copyright information

© Springer-Verlag Berlin Heidelberg 2004

Authors and Affiliations

  • Matthias Kuntz
    • 1
  • Kai Lampka
    • 1
  1. 1.Institut für InformatikFriedrich-Alexander-Universität Erlangen-Nürnberg 

Personalised recommendations