Skip to main content

The ComBack Method – Extending Hash Compaction with Backtracking

  • Conference paper

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 4546))

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

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Learn about institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 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)

    Google Scholar 

  2. Bryant, R.E.: Graph Based Algorithms for Boolean Function Manipulation. IEEE Transactions on Computers C-35(8), 677–691 (1986)

    Google Scholar 

  3. 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)

    Google Scholar 

  4. 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)

    Google Scholar 

  5. 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)

    Google Scholar 

  6. Godefroid, P., Holzmann, G.J., Pirottin, D.: State-Space Caching Revisited. Formal Methods in System Design 7(3), 227–241 (1995)

    Article  Google Scholar 

  7. Hoare, C.A.R.: Communicating Sequential Processes. Prentice-Hall, Englewood Cliffs (1985)

    MATH  Google Scholar 

  8. Holzmann, G.J.: An Analysis of Bitstate Hashing. Formal Methods in System Design 13, 289–307 (1998)

    Article  Google Scholar 

  9. Holzmann, G.J.: The SPIN Model Checker. Addison-Wesley, London (2004)

    Google Scholar 

  10. Ip, C.N., Dill, D.L.: Better Verification Through Symmetry. Formal Methods in System Design, vol. 9 (1996)

    Google Scholar 

  11. Jensen, K.: Coloured Petri Nets—Basic Concepts, Analysis Methods and Practical Use. In: Basic Concepts, vol. 1, Springer, Heidelberg (1992)

    Google Scholar 

  12. Jensen, K.: Condensed State Spaces for Symmetrical Coloured Petri Nets. Formal Methods in System Design, vol. 9 (1996)

    Google Scholar 

  13. Kam, T.: State Minimization of Finite State Machines using Implicit Techniques. PhD thesis, University of California at Berkeley (1995)

    Google Scholar 

  14. 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)

    Google Scholar 

  15. 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)

    Article  MathSciNet  Google Scholar 

  16. Milner, R.: Communication and Concurrency. Prentice-Hall, Englewood Cliffs (1989)

    MATH  Google Scholar 

  17. 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)

    Google Scholar 

  18. 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)

    Google Scholar 

  19. Reisig, W.: Petri Nets. In: EATCS Monographs on Theoretical Computer Science, vol. 4, Springer, Heidelberg (1985)

    Google Scholar 

  20. Schmidt, K.: LoLA - A Low Level Analyser . In: Nielsen, M., Simpson, D. (eds.) ICATPN 2000. LNCS, vol. 1825, pp. 465–474. Springer, Heidelberg (2000)

    Google Scholar 

  21. 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)

    Google Scholar 

  22. 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)

    Chapter  Google Scholar 

  23. Ullman, J.D.: Elements of ML Programming. Prentice-Hall, Englewood Cliffs (1998)

    Google Scholar 

  24. Valmari, A.: Stubborn Sets for Reduced State Space Generation. In: Advances in Petri Nets ’90. LNCS, vol. 483, pp. 491–515. Springer, Heidelberg (1990)

    Google Scholar 

  25. 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)

    Google Scholar 

  26. 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)

    Google Scholar 

  27. 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 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Jetty Kleijn Alex Yakovlev

Rights and permissions

Reprints 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)

Publish with us

Policies and ethics