Skip to main content

An Embeddable Virtual Machine for State Space Generation

  • Conference paper
Model Checking Software (SPIN 2007)

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

Included in the following conference series:

Abstract

The semantics of modelling languages are not always specified in a precise and formal way, and their rather complex underlying models make it a non-trivial exercise to reuse them in newly developed tools. We report on experiments with a virtual machine-based approach for state space generation. The virtual machine’s (VM) byte-code language is straightforwardly implementable, facilitates reuse and makes it an adequate target for translation of higher-level languages like the SPIN model checker’s PROMELA, or even C. As added value, it provides efficiently executable operational semantics for modelling languages. Several tools have been built on top of the VM implementation we developed, to evaluate the benefits of the proposed approach.

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

Access this chapter

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

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 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 2005), Lisbon, Portuga (July 2005)

    Google Scholar 

  2. Bevier, W.: Towards an operational semantics of PROMELA in ACL2. In: Proceedings of the 3rd International SPIN Workshop (April 1997)

    Google Scholar 

  3. Bolognesi, T., Brinksma, E.: Introduction to the ISO specification language LOTOS. In: van Eijk, P.H.J., Vissers, C.A., Diaz, M. (eds.) The Formal Description Technique LOTOS, pp. 23–73. Elsevier Science Publishers, North-Holland (1989)

    Google Scholar 

  4. Brim, L.: Distributed verification: Exploring the power of raw computing power. In: Brim, L., Haverkort, B., Leucker, M., van de Pol, J. (eds.) FMICS 2006 and PDMC 2006. LNCS, vol. 4346, pp. 23–34. Springer, Heidelberg (2006)

    Chapter  Google Scholar 

  5. de Villiers, P., Visser, W.: ESML—a validation language for concurrent systems. In: Bishop, J. (ed.) 7-th Southern African Computer Symposium, pp. 59–64 (July 1992)

    Google Scholar 

  6. Dill, D., Drexler, A., Hu, A., Yang, C.: Protocol verification as a hardware design aid. In: ICCD 1992: Proceedings of the 1991 IEEE International Conference on Computer Design on VLSI in Computer & Processors, Washington, DC, USA, pp. 522–525, IEEE Computer Society (1992)

    Google Scholar 

  7. Garavel, H.: OPEN/CAESAR: An open software architecture for verification, simulation, and testing. In: LNCS, vol. 1384, pp. 68–84 (1998)

    Google Scholar 

  8. Garavel, H., Lang, F., Mateescu, R.: An overview of CADP 2001. EASST Newsletter 4, 13–24 (2002)

    Google Scholar 

  9. Geldenhuys, J.: Efficiency issues in the design of a model checker. Msc. thesis, University of Stellenbosch, South Africa (November 1999)

    Google Scholar 

  10. Hammer, M., Weber, M.: To Store or Not To Store reloaded: Reclaiming memory on demand. In: Brim, L., Haverkort, B., Leucker, M., van de Pol, J. (eds.) FMICS 2006 and PDMC 2006. LNCS, vol. 4346, pp. 51–66. Springer, Heidelberg (2007)

    Chapter  Google Scholar 

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

    MATH  Google Scholar 

  12. Holzmann, G.J.: The engineering of a model checker: the gnu i-protocol case study revisited. In: Dams, D.R., Gerth, R., Leue, S., Massink, M. (eds.) Theoretical and Practical Aspects of SPIN Model Checking. LNCS, vol. 1680, Springer, Heidelberg (1999)

    Google Scholar 

  13. Holzmann, G.J., Natarajan, V.: Outline for an operational-semantics definition of PROMELA. Technical report, Bell Laboratories (July 1996)

    Google Scholar 

  14. Milner, R.: The polyadic π-calculus: a tutorial. Technical Report ECS–LFCS–91–180, Laboratory for Foundations of Computer Science, Department of Computer Science, University of Edinburgh, UK, Oct. 1993. In: Bauer, F.L., Brauer, W., Schwichtenberg, H. (ed.): Logic and Algebra of Specification, Springer, Heidelberg (1993)

    Google Scholar 

  15. Qian, Z.: A formal specification of java virtual machine instructions for objects, methods and subrountines. Formal Syntax and Semantics of Java, 271–312 (1999)

    Google Scholar 

  16. Robby, Dwyer, M.B., Hatcliff, J.: Bogor: an extensible and highly-modular software model checking framework. SIGSOFT Softw. Eng. Notes 28(5), 267–276 (2003)

    Article  Google Scholar 

  17. Rosien, M.: Design and implementation of a systematic state explorer. Msc. thesis, University of Twente, The Netherlands (March 2001)

    Google Scholar 

  18. Schlich, B., Kowalewski, S.: Model checking C source code for embedded systems. In: Proceedings of the IEEE/NASA Workshop on Leveraging Applications of Formal Methods, Verification, and Validation (ISoLA 2005) (September 2005)

    Google Scholar 

  19. Schlich, B., Rohrbach, M., Weber, M., Kowalewski, S.: Model checking software for microcontrollers. Technical Report AIB-2006-11, RWTH Aachen (August 2006)

    Google Scholar 

  20. Schürmans, S.: Ein Compiler und eine Virtuelle Maschine zur Zustandsraumgenerierung. Diplomarbeit, RWTH Aachen University (October 2005)

    Google Scholar 

  21. Veldema, R.: Personal communication on the Tapir programming language (2006), http://www2.informatik.uni-erlangen.de/Forschung/Projekte/Tapir/

  22. Weise, C.: An incremental formal semantics for PROMELA. In: Proceedings of the 3rd International SPIN Workshop (April 1997)

    Google Scholar 

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

    Google Scholar 

  24. Wirth, N.: Pascal-s: A subset and its implementation. In: Barron, D.W. (ed.) Pascal - The Language and its Implementation, pp. 199–259. John Wiley, New York (1981)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Dragan Bošnački Stefan Edelkamp

Rights and permissions

Reprints and permissions

Copyright information

© 2007 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Weber, M. (2007). An Embeddable Virtual Machine for State Space Generation. In: Bošnački, D., Edelkamp, S. (eds) Model Checking Software. SPIN 2007. Lecture Notes in Computer Science, vol 4595. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-73370-6_12

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-73370-6_12

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-73369-0

  • Online ISBN: 978-3-540-73370-6

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics