Skip to main content
Log in

Model checking with bounded context switching

  • Original Article
  • Published:
Formal Aspects of Computing

Abstract

We discuss the implementation of a bounded context switching algorithm in the Spin model checker. The algorithm allows us to find counter-examples that are often simpler to understand, and that may be more likely to occur in practice. We discuss extensions of the algorithm that allow us to use this new algorithm in combination with most other search modes supported in Spin, including partial order reduction and bitstate hashing. We show that, other than often assumed, the enforcement of a bounded context switching discipline does not decrease but increases the complexity of the model checking procedure. We discuss the performance of the algorithm on a range of applications.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. Bloom BH (1970) Spacetime tradeoffs in hash coding with allowable errors. Comm ACM 13(7): 422–426

    Article  MATH  Google Scholar 

  2. Holzmann GJ (1987) On limits and possibilities of automated protocol analysis. In: Rudin H, West C (eds) Proceedings of sixth international conference on protocol specification, testing, and verification. INWG IFIP, Zurich, Switzerland, June 1987

  3. Holzmann GJ (1998) An analysis of bitstate hashing. In: Formal methods in system design, vol 13, issue 3. Kluwer, Dordrect, pp 287–305, November 1998

  4. Holzmann GJ (2004) The spin model checker: primer and reference manual. Addison-Wesley, Reading

    Google Scholar 

  5. Holzmann GJ, Peled D (1994) An improvement in formal verification. In: Proceedings of seventh international conference on formal description techniques, Bern, Switzerland, October 1994. Chapman & Hall, London, pp 197–211

  6. Holzmann GJ, Peled D, Yannakakis M (1996) On nested depth first search. In: Proceedings of second spin workshop. American Mathematical Society, Providence, pp 23–32

  7. Holzmann GJ, Joshi R, Groce A (2010) Swarm verification techniques. IEEE Trans Softw Eng (to appear)

  8. Lal A, Reps T (2008) Reducing concurrent analysis under a context bound to sequential analysis. In: Proceedings of CAV

  9. Peled D (2004) Combining partial order reduction with on-the-fly model checking. In: Proceeding of CAV 2004. LNCS, vol 818. Springer, Berlin, pp 377–390

  10. Musuvathi M, Qadeer S (2007a) Partial-order reduction for context-bounded state exploration. In: Microsoft Tech Report, MSR-TR-2007-12, February 2007, p 19

  11. Musuvathi M, Qadeer S (2007b) Iterative context bounding for systematic testing of multithreaded programs. In: Proceedings of ACM SIGPLAN conference on programming language design and implementation (PLDI), San Diego, June 2007

  12. Musuvathi M, Qadeer S (2008) Fair stateless model checking. In: Proceedings of ACM SIGPLAN conference on programming language design and implementation, Tucson, AZ, June 2008

  13. Qadeer S, Wu D (2004) KISS: Keep it simple and sequential. In: Proceedings of ACM SIGPLAN conference on programming language design and implementation (PLDI), Washington, DC, 14–24 June 2004

  14. Qadeer S, Rehof J (2005) Context-bounded model checking. In: Proceedings of TACAS. LNCS, vol 3440, pp 93–107

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Gerard J. Holzmann.

Additional information

J.C.P. Woodcock

Rights and permissions

Reprints and permissions

About this article

Cite this article

Holzmann, G.J., Florian, M. Model checking with bounded context switching. Form Asp Comp 23, 365–389 (2011). https://doi.org/10.1007/s00165-010-0160-5

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s00165-010-0160-5

Keywords

Navigation