Abstract
This paper presents the ComBack method for explicit state space exploration. The ComBack method extends the well-known hash compaction method such that full coverage of the state space is guaranteed. Each encountered state is mapped into a compressed state descriptor (hash value) as in hash compaction. The method additionally stores for each state an integer representing the identity of the state and a backedge to a predecessor state. This allows hash collisions to be resolved on-the-fly during state space exploration using backtracking to reconstruct the full state descriptors when required for comparison with newly encountered states. A prototype implementation of the ComBack method is used to evaluate the method on several example systems and compare its performance to related methods. The results show a reduction in memory usage at an acceptable cost in exploration time.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsPreview
Unable to display preview. Download preview PDF.
References
Behrmann, G., Larsen, K.G., Pelánek, R.: To Store or Not to Store. In: Proc. of CAV 2003. LNCS, vol. 2725, pp. 433–445. Springer, Heidelberg (2003)
Bryant, R.E.: Graph Based Algorithms for Boolean Function Manipulation. IEEE Transactions on Computers C-35(8), 677–691 (1986)
Christensen, S., Kristensen, L.M., Mailund, T.: A Sweep-Line Method for State Space Exploration. In: Margaria, T., Yi, W. (eds.) ETAPS 2001 and TACAS 2001. LNCS, vol. 2031, pp. 450–464. Springer, Heidelberg (2001)
Dillinger, P.C., Manolios, P.: Fast and accurate Bitstate Verification for SPIN. In: Graf, S., Mounier, L. (eds.) Proc. of SPIN 2004. LNCS, vol. 2989, Springer, Heidelberg (2004)
Geldenhuys, J., Valmari, A.: A Nearly Memory-Optimal Data Structure for Sets and Mappings. In: Ball, T., Rajamani, S.K. (eds.) Proc. of SPIN 2003. LNCS, vol. 2648, pp. 136–150. Springer, Heidelberg (2003)
Godefroid, P., Holzmann, G.J., Pirottin, D.: State-Space Caching Revisited. Formal Methods in System Design 7(3), 227–241 (1995)
Hoare, C.A.R.: Communicating Sequential Processes. Prentice-Hall, Englewood Cliffs (1985)
Holzmann, G.J.: An Analysis of Bitstate Hashing. Formal Methods in System Design 13, 289–307 (1998)
Holzmann, G.J.: The SPIN Model Checker. Addison-Wesley, London (2004)
Ip, C.N., Dill, D.L.: Better Verification Through Symmetry. Formal Methods in System Design, vol. 9 (1996)
Jensen, K.: Coloured Petri Nets—Basic Concepts, Analysis Methods and Practical Use. In: Basic Concepts, vol. 1, Springer, Heidelberg (1992)
Jensen, K.: Condensed State Spaces for Symmetrical Coloured Petri Nets. Formal Methods in System Design, vol. 9 (1996)
Kam, T.: State Minimization of Finite State Machines using Implicit Techniques. PhD thesis, University of California at Berkeley (1995)
Kristensen, L.M., Jensen, K.: Specification and Validation of an Edge Router Discovery Protocol for Mobile Ad-hoc Networks. In: Ehrig, H., Damm, W., Desel, J., Große-Rhode, M., Reif, W., Schnieder, E., Westkämper, E. (eds.) Proc. of INT’04. LNCS, vol. 3147, pp. 248–269. Springer, Heidelberg (2004)
Kupferman, O., Vardi, M.Y., Wolper, P.: An Automata-Theoretic Approach to Branching-Time Model Checking. Journal of the ACM 47(2), 312–360 (2000)
Milner, R.: Communication and Concurrency. Prentice-Hall, Englewood Cliffs (1989)
Peled, D.: All for One, One for All: On Model Checking Using Representatives. In: Courcoubetis, C. (ed.) CAV 1993. LNCS, vol. 697, pp. 409–423. Springer, Heidelberg (1993)
Ratzer, A.V., Wells, L., Lassen, H.M., Laursen, M., Qvortrup, J.F., Stissing, M.S., Westergaard, M., Christensen, S., Jensen, K.: CPN Tools for Editing, Simulating, and Analysing Coloured Petri Nets. In: van der Aalst, W.M.P., Best, E. (eds.) ICATPN 2003. LNCS, vol. 2679, pp. 450–462. Springer, Heidelberg (2003)
Reisig, W.: Petri Nets. In: EATCS Monographs on Theoretical Computer Science, vol. 4, Springer, Heidelberg (1985)
Schmidt, K.: LoLA - A Low Level Analyser . In: Nielsen, M., Simpson, D. (eds.) ICATPN 2000. LNCS, vol. 1825, pp. 465–474. Springer, Heidelberg (2000)
Stern, U., Dill, D.L.: Improved Probabilistic Verification by Hash Compaction. In: Camurati, P.E., Eveking, H. (eds.) CHARME 1995. LNCS, vol. 987, pp. 206–224. Springer, Heidelberg (1995)
Stern, U., Dill, D.L.: Using Magnetic Disk instead of Main Memory in the Murphi Verifier. In: Vardi, M.Y. (ed.) CAV 1998. LNCS, vol. 1427, pp. 172–183. Springer, Heidelberg (1998)
Ullman, J.D.: Elements of ML Programming. Prentice-Hall, Englewood Cliffs (1998)
Valmari, A.: Stubborn Sets for Reduced State Space Generation. In: Advances in Petri Nets ’90. LNCS, vol. 483, pp. 491–515. Springer, Heidelberg (1990)
Valmari, A.: The State Explosion Problem. In: Reisig, W., Rozenberg, G. (eds.) Lectures on Petri Nets I: Basic Models. LNCS, vol. 1491, pp. 429–528. Springer, Heidelberg (1998)
Vardi, M., Wolper, P.: An Automata-Theoretic Approach to Automatic Program Verification. In: Proc. of IEEE Symposium on Logic in Computer Science, pp. 322–331 (1986)
Wolper, P., Leroy, D.: Reliable Hashing without Collision Detection. In: Courcoubetis, C. (ed.) CAV 1993. LNCS, vol. 697, pp. 59–70. Springer, Heidelberg (1993)
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 2007 Springer Berlin Heidelberg
About this paper
Cite this paper
Westergaard, M., Kristensen, L.M., Brodal, G.S., Arge, L. (2007). The ComBack Method – Extending Hash Compaction with Backtracking. In: Kleijn, J., Yakovlev, A. (eds) Petri Nets and Other Models of Concurrency – ICATPN 2007. ICATPN 2007. Lecture Notes in Computer Science, vol 4546. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-73094-1_26
Download citation
DOI: https://doi.org/10.1007/978-3-540-73094-1_26
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-73093-4
Online ISBN: 978-3-540-73094-1
eBook Packages: Computer ScienceComputer Science (R0)