Abstract
Behrmann et al. posed the question whether ”To Store or Not To Store” [1] states during reachability analysis, in order to counter the effects of the well-known state space explosion problem in explicitstate model checking. Their answer was to store not all but only some strategical states. They pay in run-time if the answer too often is ”Not To Store”. We propose a different strategy to adaptively trade time for space: ”To Store” as many states as memory limits permit. If free memory becomes scarce, we gradually swap states out to secondary storage. We are careful to minimize revisits, and I/O overhead, and also stay sound, i.e. on termination it is guaranteed that the full state space has been explored. It is also available for counterexample reconstruction. In our experiments we tackled state spaces of industrial-scale models with more than 109 explicit states with still modest storage requirements.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
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)
Clarke, E.M., Grumberg, O., Jha, S., Lu, Y., Veith, H.: Counterexample-guided abstraction refinement. In: Emerson, E.A., Sistla, A.P. (eds.) CAV 2000. LNCS, vol. 1855, pp. 154–169. Springer, Heidelberg (2000)
Bloom, B.H.: Space/time trade-offs in hash coding with allowable errors. Commun. ACM 13(7), 422–426 (1970), doi:10.1145/362686.362692
Garavel, H., Lang, F., Mateescu, R.: An overview of CADP 2001. EASST Newsletter 4, 13–24 (2002)
Holmén, F., Leucker, M., Lindström, M.: UppDMC – a distributed model checker for fragments of the μ-calculus. In: Brim, L., Leucker, M., eds.: Proc. 3rd PDMC. Volume 128(3) of ENTCS. Elsevier Science Publishers (2004)
Holzmann, G.J.: The SPIN model checker: primer and reference manual. Addison-Wesley, Boston (2003)
Wibling, O., Parrow, J., Pears, A.: Automatized verification of ad hoc routing protocols. In: de Frutos-Escrig, D., Núñez, M. (eds.) FORTE 2004. LNCS, vol. 3235, pp. 343–358. Springer, Heidelberg (2004)
Kamel, M., Leue, S.: Formalization and validation of the General Inter-ORB Protocol (GIOP) using PROMELA and SPIN. STTT 2(4), 394–409 (2000)
Pelánek, R.: Evaluation of on-the-fly state space reductions. In: Proc. of Mathematical and Engineering Methods in Computer Science (MEMICS’05), pp. 121–127 (2005)
Holzmann, G.J.: An analysis of bitstate hashing. Form. Methods Syst. Des. 13(3), 289–307 (1998)
Dillinger, P.C., Manolios, P.: Fast and accurate bitstate verification for SPIN. In: Graf, S., Mounier, L. (eds.) Model Checking Software. LNCS, vol. 2989, Springer, Heidelberg (2004)
Stern, U., Dill, D.L.: Using magnatic disk instead of main memory in the murphi verifier. In: Computer Aided Verification, pp. 172–183 (1998), http://citeseer.ist.psu.edu/stern98using.html
Bao, T., Jones, M.: Time-efficient model checking with magnetic disk. In: Halbwachs, N., Zuck, L.D. (eds.) TACAS 2005. LNCS, vol. 3440, pp. 526–540. Springer, Heidelberg (2005)
Eastlake, D.E., Jones, P.E.: US secure hash algorithm 1 (SHA1). Internet informational RFC 3174 (2001)
Ziv, J., Lempel, A.: A universal algorithm for sequential data compression. IEEE Transactions on Information Theory 23(3), 337–343 (1977)
Gailly, J., Adler, M.: zlib data compression library (1995), http://www.zlib.net/
Weber, M., Schürmans, S.: NIPS virtual machine and compiler implementation (2005), http://www.cwi.nl/~weber/nips/
Kamel, M., Leue, S.: Formalization and validation of the general inter-orb protocol (giop) using promela and spin. STTT 2(4), 394–409 (2000)
Knapp, A., Merz, S.: Model Checking and Code Generation for UML State Machines and Collaborations. In: Proc. 5th Wsh. Tools for System Design and Verification, Technical Report 2002-11, pp. 59–64. Institut für Informatik, Universität Augsburg (2002)
Penna, G.D., Intrigila, B., Tronci, E., Zilli, M.V.: Exploiting transition locality in the disk based murphi verifier. In: Aagaard, M.D., O’Leary, J.W. (eds.) FMCAD 2002. LNCS, vol. 2517, pp. 202–219. Springer, Heidelberg (2002)
Stern, U., Dill, D.L.: Parallelizing the Murϕ verifier. In: Grumberg, O. (ed.) CAV 1997. LNCS, vol. 1254, pp. 256–267. Springer, Heidelberg (1997)
Edelkamp, S., Jabbar, S.: Accelerating external search with bitstate hashing. In: 19. Workshop on New Results in Planning, Scheduling and Design (2005)
Barnat, J., Brim, L., Černá, I., Šimeček, P.: DiVinE the distributed verification environment. In: Leucker, M., van de Pol, J. (eds.) 4th International Workshop on Parallel and Distributed Methods in verifiCation (PDMC’05), Lisbon, Portugal, July (2005)
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 2007 Springer Berlin Heidelberg
About this paper
Cite this paper
Hammer, M., Weber, M. (2007). ”To Store or Not To Store” Reloaded: Reclaiming Memory on Demand. In: Brim, L., Haverkort, B., Leucker, M., van de Pol, J. (eds) Formal Methods: Applications and Technology. PDMC 2006. Lecture Notes in Computer Science, vol 4346. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-70952-7_4
Download citation
DOI: https://doi.org/10.1007/978-3-540-70952-7_4
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-70951-0
Online ISBN: 978-3-540-70952-7
eBook Packages: Computer ScienceComputer Science (R0)