Skip to main content
Log in

Model checking software: on some new waves and some evergreens

  • Introduction
  • Published:
International Journal on Software Tools for Technology Transfer Aims and scope Submit manuscript

Abstract

This paper introduces a special section of the STTT journal containing a selection of papers that were presented at the 13th International Workshop Model Checking Software SPIN 2007. We give a brief overview of the field of software model checking with emphasis on topics that are covered by the selected papers. In our focus are some emerging trends like multi-core model checking together with new high-quality model checking tools, as well as subjects that remain challenging virtually since the establishing of the discipline, like partial-order reduction and abstraction.

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.

Institutional subscriptions

Similar content being viewed by others

References

  1. Baier C., Katoen J-P.: Principles of Model Checking. MIT Press, Cambridge (2008)

    MATH  Google Scholar 

  2. Verstoep, K., Bal, H., Barnat, J., Brim. L.: Efficient large-scale model checking. In: Proceedings of the 23rd IEEE International Symposium on Parallel and Distributed Processing (IPDPS), pp. 1–12. IEEE Computer Society, USA (2009)

  3. Ball, T., Rajamani, S.K.: The SLAM Toolkit. In: Proceedings of the 13th International Conference on Computer Aided Verification (CAV). Lecture Notes in Computer Science, vol. 2102, pp. 260–264. Springer, Berlin (2001)

  4. Barnat, J., Brim, L., Ročkai, P.: Scalable shared memory LTL model checking. STTT, this volume. Springer, Berlin (2010)

  5. Barnat, J., Brim, L., Šimeček P.: I/O efficient accepting cycle detection. In: Proceedings of the 13th International Conference on Computer Aided Verification (CAV). Lecture Notes in Computer Science, vol. 4590, pp. 281–293. Springer, Berlin (2007)

  6. Barnat, J., Brim, L., Šimeček, P., Weber, M.: Revisiting resistance speeds up I/O-efficient LTL model checking. In: Proceedings of the 14th International Conference on Tools and Algorithms for the Construction and Analysis of Systems (TACAS). Lecture Notes in Computer Science, vol. 4963, pp. 48–62 (2008)

  7. Barnat, J., Brim, L., Stríbrná, J.: Distributed LTL model checking in SPIN. In: Proceedings of the 8th International Spin Workshop on Model Checking of Software (SPIN). Lecture Notes in Computer Science, vol. 2057, pp. 200–216. Springer, Berlin (2001)

  8. Beyer, D., Henzinger, T.A., Jhala, R., Majumdar, R.: The software model checker Blast. STTT, vol. 9 (5–6), pp. 505–525. Springer, Berlin (2007)

  9. Bošnački, D., Edelkamp, S.: In: Proceedings of the 14th International Spin Workshop on Model Checking of Software (SPIN). Lecture Notes in Computer Science, vol. 4595. Springer, Berlin (2007)

  10. Bošnački, D., Edelkamp, S., Sulewski, D.: Efficient probabilistic model checking on general purpose graphics processors. In: Proceedings of the 16th International Spin Workshop on Model Checking of Software (SPIN). Lecture Notes in Computer Science, vol. 5578, pp. 32-49. Springer, Berlin (2009)

  11. Clarke E.M., Grumberg O., Jha S., Lu Y., Veith H.: Counterexample-guided abstraction refinement for symbolic model checking. J. ACM 50(5), 752–794 (2003)

    Article  MathSciNet  Google Scholar 

  12. Clarke E., Grumber O., Peled D.: Model Checking. MIT Press, Cambridge (1999)

    Google Scholar 

  13. Cleaveland, R.: Pragmatics of model checking: an STTT special section. STTT, vol. 2(3). Springer, Berlin (1999)

  14. Corbet, J.C., Dwyer, M.B., Hatcliff, J., Laubach, S., Pasareanu, C.S., Zheng, Robby H.: Bandera: extracting finite-state models from Java source code. In: Proceedings of the 22nd IEEE International Conference on Software Engineering (ICSE), pp. 439–448. IEEE Computer Society, USA (2000)

  15. Dwyer, M.B., Leue, S.: Introductory paper. STTT, vol. 6(4), pp. 257–259. Springer, Berlin (2004)

  16. Edelkamp, S., Jabbar, S.: Large-scale directed model checking LTL. In: Proceedings of the 13th International Spin Workshop on Model Checking of Software, (SPIN). Lecture Notes in Computer Science, vol. 3925, pp. 1–18. Springer, Berlin (2006)

  17. Edelkamp, S., Sanders, P., Šimeček P.: Semi-external LTL model checking. In: Proceedings of the 20th International Conference on Computer Aided Verification (CAV). Lecture Notes in Computer Science, vol. 5123, pp. 530–542. Springer, Berlin (2008)

  18. Edelkamp, S., Sulewski, D.: Flash-efficient LTL model checking with minimal counterexamples. In: Proceedings of the Sixth IEEE International Conference on Software Engineering and Formal Methods (SEFM), pp. 73–82. IEEE International, USA (2008)

  19. Emerson E.A.: Temporal and modal logic. In: van Leeuwen, J. (eds) Handbook of Theoretical Computer Science, pp. 995–1072. Elsevier, Amsterdam (1990)

    Google Scholar 

  20. Emerson, E.A., Clarke, E.M.: Characterizing correctness properties of parallel programs using fixpoints. In: Proceedings of the 7th Colloquium on Automata, Languages and Programming (ICALP). Lecture Notes in Computer Science, vol. 85, pp. 169–181. Springer, Berlin (1980)

  21. Evangelista, S., Pajault, C.: Solving the ignoring problem for partial order reduction. STTT, this volume. Springer, Berlin (2010)

  22. Fecher, H., Shoham, S.: Local abstraction-refinement for the mu-calculus. STTT, this volume. Springer, Berlin (2010)

  23. Godefroid, P.: Partial-Order Methods for the Verification of concurrent Systems—An Approach to the State Space Explosion. Lecture Notes in Computer Science, vol. 1032. Springer, Berlin (1996)

  24. Godefroid P.: Software model checking: the VeriSoft approach. Formal Methods Syst. Des. 26(2), 77–101 (2005)

    Article  Google Scholar 

  25. Hajek, J.: Automatically verified data transfer protocols. In: Proceedings of the 4th International Computer Communications Conference, pp. 749–756 (1978)

  26. Havelund, K., Visser, W.: Program model checking as a new trend. STTT, vol. 4(1), pp. 8–20. Springer, Berlin (2002)

  27. Holzmann G.J.: Designing executable abstractions. In: Proceedings of Formal Methods in Software Practice. ACM Press, Clearwater Beach Florida USA (1998)

    Google Scholar 

  28. Holzmann G.J.: The SPIN Model Checker: Primer and Reference Manual. Addison Wesley, Reading (2003)

    Google Scholar 

  29. Holzmann G.J., Bošnački D.: The Design of a multi-core extension of the SPIN model checker. IEEE Trans. Softw. Eng. 33(10), 659–674 (2007)

    Article  Google Scholar 

  30. Holzmann, G.J., Bošnački, D.: Multi-core model checking with SPIN. In: Proceedings of the IEEE International Symposium on Parallel and Distributed Processing (IPDPS), pp. 1–8. IEEE Computer Society, USA (2007)

  31. Holzmann G.J., Smith M.H.: Software model checking—extracting verification models from source code. Softw. Test. Verif. Reliab. 11(2), 65–79 (2001)

    Article  Google Scholar 

  32. Inggs C.P., Barringer H.: CTL* model checking on a shared memory architecture. Electron. Notes Theor. Comput. Sci. 128(4), 107–123 (2005)

    Article  Google Scholar 

  33. Inggs C.P., Barringer H.: Effective state exploration for model checking on a shared memory architecture. Electron. Notes Theor. Comput. Sci. 68(4), 605–620 (2002)

    Article  Google Scholar 

  34. Jhala R., Majumdar R.: Software model checking. ACM Comput. Surv. 41(4), 1–54 (2009)

    Article  Google Scholar 

  35. Kozen D.: Results on the propositional μ-calculus. Theor. Comput. Sci. 27, 333–354 (1983)

    Article  MATH  MathSciNet  Google Scholar 

  36. Lerda, F., Sisto, R.: Distributed model checking in SPIN. Theoretical and Practical Aspects of SPIN Model Checking. In: Proceedings of the 5th and 6th International SPIN Workshops. Lecture Notes in Computer Science, vol. 1680, pp. 22–39. Springer, Berlin (1999)

  37. Manna Z., Pnueli A.: Temporal Verification of Reactive Systems: Safety. Springer, Berlin (1995)

    Google Scholar 

  38. Marowka A.: Parallel computing on any desktop. Commun. ACM 50(9), 75–78 (2007)

    Article  Google Scholar 

  39. Moore, G.E.: Cramming more components onto integrated circuits. Readings in Computer Architecture, pp. 56–59. Morgan Kaufmann, San Francisco (2000)

  40. OpenMP Architecture Review Board. OpenMP Application Program Interface, Version 2.5 (May 2005). http://www.openm.org

  41. Peled D.A.: Combining partial-order reductions with on-the-fly model checking. Formal Methods Syst. Des. 8, 39–64 (1996)

    Article  Google Scholar 

  42. Queille, J.P., Sifakis, J.: Specification and verification of concurrent systems in CESAR. In: Proceedings of the 5th International Symposium on Programming. Lecture Notes in Computer Science, vol. 137, pp. 337–350. Springer, Berlin (1981)

  43. Rozier, K.Y., Vardi, M.Y.: LTL satisfiability checking. STTT, this volume. Springer, Berlin (2010)

  44. Stern, U., Dill, D.: Parallelizing the Mur\({\phi}\) verifier. In: Proceedings of the 9th International Conference on Computer Aided Verification (CAV). Lecture Notes in Computer Science, vol. 1254, pp. 256–278. Springer, Berlin (1997)

  45. Willems, B., Wolper, P.: Partial-order methods for model checking: from linear to branching time. In: Proceedings of the 11th Annual IEEE Symposium on Logic in Computer Science (LICS), pp. 294–303. IEEE Computer Society, USA (1996)

  46. Valmari, A.: Eliminating redundant interleavings during concurrent program verification. In: Proceedings of the Second Parallel Architectures and Languages Europe (PARLE). Lecture Notes in Computer Science, vol. 366, pp. 89–103. Springer, Berlin (1989)

  47. Valmari, A.: A stubborn attack on state explosion. Advances in Petri Nets. Lecture Notes in Computer Science, vol. 531, pp. 156–165. Springer, Berlin (1991)

  48. Valmari, A.: The state explosion problem. Lectures on Petri Nets I: Basic Models, LNCS Tutorials. Lecture Notes in Computer Science, vol. 1491, pp. 429–528. Springer, Berlin (1998)

  49. Valmari, A.: Software model checking is a rich research field. STTT, vol. 11(1), pp. 1–11. Springer, Berlin (2009)

  50. Visser, W., Havelund, K., Brat, G.P., Park, S.: Model checking programs. In: Proceedings of the 15th IEEE International Conference on Automated Software Engineering (ICSE), pp. 3–12. IEEE Computer Society, USA (2000)

  51. Weber, M.: An embeddable virtual machine for state space generation. STTT, this volume. Springer, Berlin (2010)

  52. Yang, Y., Chen, X., Gopalakrishnan, G., Kirby R.M.: Distributed dynamic partial order reduction. STTT, this volume. Springer, Berlin (2010)

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Stefan Edelkamp.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Bošnački, D., Edelkamp, S. Model checking software: on some new waves and some evergreens. Int J Softw Tools Technol Transfer 12, 89–95 (2010). https://doi.org/10.1007/s10009-010-0155-9

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10009-010-0155-9

Keywords

Navigation