Abstract
The limited amount of memory is the major bottleneck in model checking tools based on an explicit states enumeration. In this context, techniques allowing an efficient representation of the states are precious. We present in this paper a novel approach which enables to store the state space in a compact way. Though it belongs to the family of explicit storage methods, we qualify it as semi-explicit since all states are not explicitly represented in the state space. Our experiments report a memory reduction ratio up to 95% with only a tripling of the computing time in the worst case.
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Visser, W.: Memory efficient state storage in spin. In: SPIN 1996, pp. 21–35 (1996)
Holzmann, G.J.: State compression in spin: Recursive indexing and compression training runs. In: SPIN 1997 (1997)
Geldenhuys, J., Valmari, A.: A nearly memory-optimal data structure for sets and mappings. In: Ball, T., Rajamani, S.K. (eds.) SPIN 2003. LNCS, vol. 2648, pp. 136–150. Springer, Heidelberg (2003)
Grègoire, J.C.: State space compression in spin with getss. In: SPIN 1996, pp. 90–108 (1996)
Parreaux, B.: Difference compression in spin. In: SPIN 1998 (1998)
Geldenhuys, J., de Villiers, P.J.A.: Runtime efficient state compaction in spin. In: Dams, D.R., Gerth, R., Leue, S., Massink, M. (eds.) SPIN 1999. LNCS, vol. 1680, pp. 12–21. Springer, Heidelberg (1999)
Pastor, E., Cortadella, J.: Efficient encoding schemes for symbolic analysis of petri nets. In: Conference on Design, Automation and Test, pp. 790–795. IEEE Computer Society, Los Alamitos (1998)
Schmidt, K.: Using petri net invariants in state space construction. In: Garavel, H., Hatcliff, J. (eds.) TACAS 2003. LNCS, vol. 2619, pp. 473–488. Springer, Heidelberg (2003)
Godefroid, P., Holzmann, G.J., Pirottin, D.: State-space caching revisited. In: van Bochmann, G., Probst, D.K. (eds.) CAV 1992. LNCS, vol. 663, pp. 178–191. Springer, Heidelberg (1992)
Geldenhuys, J.: State caching reconsidered. In: Graf, S., Mounier, L. (eds.) SPIN 2004. LNCS, vol. 2989, pp. 23–38. Springer, Heidelberg (2004)
Parashkevov, A.N., Yantchev, J.: Space efficient reachability analysis through use of pseudo-root states. In: Brinksma, E. (ed.) TACAS 1997. LNCS, vol. 1217, pp. 50–64. Springer, Heidelberg (1997)
Christensen, S., Kristensen, L.M., Mailund, T.: A sweep-line method for state space exploration. In: Margaria, T., Yi, W. (eds.) TACAS 2001. LNCS, vol. 2031, pp. 450–464. Springer, Heidelberg (2001)
Mailund, T., Westergaard, M.: Obtaining memory-efficient reachability graph representations using the sweep-line method. In: Jensen, K., Podelski, A. (eds.) TACAS 2004. LNCS, vol. 2988, pp. 177–191. Springer, Heidelberg (2004)
Schmidt, K.: Automated generation of a progress measure for the sweep-line method. In: Jensen, K., Podelski, A. (eds.) TACAS 2004. LNCS, vol. 2988, pp. 192–204. Springer, Heidelberg (2004)
Behrmann, G., Larsen, K.G., Pelánek, R.: To store or not to store. In: Hunt Jr., W.A., Somenzi, F. (eds.) CAV 2003. LNCS, vol. 2725, pp. 433–445. Springer, Heidelberg (2003)
Godefroid, P.: Model checking for programming languages using verisoft. In: POPL 1997, pp. 174–186 (1997)
Holzmann, G.J.: Design and validation of computer protocols. Prentice Hall, Englewood Cliffs (1991)
Leroy, D., Wolper, P.: Reliable hashing without collision detection. In: Courcoubetis, C. (ed.) CAV 1993. LNCS, vol. 697, pp. 59–70. Springer, Heidelberg (1993)
Jensen, K.: Coloured petri nets: A high level language for system design and analysis. In: Rozenberg, G. (ed.) ATPN 1989. LNCS, vol. 483, pp. 342–416. Springer, Heidelberg (1989)
Dwyer, M.B., Hatcliff, J., Iosif, R.: Space-reduction strategies for model checking dynamic software. Electronic Notes in Theoretical Computer Science 89(3) (2003)
Lerda, F., Visser, W.: Addressing dynamic issues of program model checking. In: Bosnacki, D., Leue, S. (eds.) SPIN 2001. LNCS, vol. 2057, pp. 80–102. Springer, Heidelberg (2001)
Gerard, J.: Holzmann. The model checker spin. IEEE Transactions on Software Engineering 23(5), 279–295 (1997)
Evangelista, S.: High level petri nets analysis with helena. In: Ciardo, G., Darondeau, P. (eds.) ICATPN 2005. LNCS, vol. 3536, pp. 455–464. Springer, Heidelberg (2005)
Evangelista, S., Kaiser, C., Pradat-Peyre, J.F., Rousseau, P.: Quasar: a new tool for analyzing concurrent programs. In: Rosen, J.-P., Strohmeier, A. (eds.) Ada-Europe 2003. LNCS, vol. 2655, pp. 168–181. Springer, Heidelberg (2003)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2005 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Evangelista, S., Pradat-Peyre, JF. (2005). Memory Efficient State Space Storage in Explicit Software Model Checking. In: Godefroid, P. (eds) Model Checking Software. SPIN 2005. Lecture Notes in Computer Science, vol 3639. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11537328_7
Download citation
DOI: https://doi.org/10.1007/11537328_7
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-28195-5
Online ISBN: 978-3-540-31899-6
eBook Packages: Computer ScienceComputer Science (R0)