Skip to main content

SMT-Based Automatic Proof of ASM Model Refinement

  • Conference paper
  • First Online:
Software Engineering and Formal Methods (SEFM 2016)

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

Included in the following conference series:

Abstract

Model refinement is a technique indispensable for modeling large and complex systems. Many formal specification methods share this concept which usually comes together with the definition of refinement correctness, i.e., the mathematical proof of a logical relation between an abstract model and its refined models.

Model refinement is one of the main concepts which the Abstract State Machine (ASM) formal method is built on. Proofs of correct model refinement are usually performed manually, which reduces the usability of the ASM model refinement approach. An automatic support to assist the developer in proving refinement correctness along the chain of refinement steps could be of extreme importance to improve, in practice, the adoption of ASMs.

In this paper, we present how the integration between the ASMs and Satisfiability Modulo Theories (SMT) can be used to automatically prove correctness of model refinement for the ASM method.

This work was partially supported by the Grant Agency of the Czech Republic project 14-11384S.

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 EPUB and 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

Notes

  1. 1.

    http://asmeta.sourceforge.net/.

  2. 2.

    Note that in concrete instances we also do not declare constants for monitored and derived functions belonging to \(\bar{f}_R ^{ nc \prime }\) and \(\bar{f}_A ^{ nc \prime }\), as they do not appear in the asserted formulas.

  3. 3.

    The tool and experimental results can be found at http://asmeta.sourceforge.net/download/asmrefprover.html.

References

  1. Abadi, M., Lamport, L.: The existence of refinement mappings. Theor. Comput. Sci. 82(2), 253–284 (1991)

    Article  MathSciNet  MATH  Google Scholar 

  2. Abrial, J.-R., Hallerstede, S.: Refinement, decomposition, and instantiation of discrete models: Application to Event-B. Fundam. Inform. 77(1), 1–28 (2007)

    MathSciNet  MATH  Google Scholar 

  3. Arcaini, P., Bonfanti, S., Gargantini, A., Mashkoor, A., Riccobene, E.: Formal validation and verification of a medical software critical component. In: Proceedings of MEMOCODE 2015, pp. 80–89. IEEE (2015)

    Google Scholar 

  4. Mashkoor, A.: The hemodialysis machine case study. In: Butler, M., Schewe, K.-D., Mashkoor, A., Biro, M. (eds.) ABZ 2016. LNCS, vol. 9675, pp. 329–343. Springer, Heidelberg (2016). doi:10.1007/978-3-319-33600-8_29

    Chapter  Google Scholar 

  5. Arcaini, P., Gargantini, A., Riccobene, E.: Using SMT for dealing with nondeterminism in ASM-based runtime verification. In: ECEASST, vol. 70 (2014)

    Google Scholar 

  6. Arcaini, P., Gargantini, A., Riccobene, E.: Rigorous development process of a safety-critical system: from ASM models to Java code. Int. J. Softw. Tools Technol. Transf. 1–23 (2015)

    Google Scholar 

  7. Arcaini, P., Gargantini, A., Riccobene, E., Scandurra, P.: A model-driven process for engineering a toolset for a formal method. Softw. Pract. Experience 41, 155–166 (2011)

    Article  Google Scholar 

  8. Arcaini, P., Holom, R.-M., Riccobene, E.: ASM-based formal design of an adaptivity component for a cloud system. Formal Aspects Comput. 1–29 (2016)

    Google Scholar 

  9. Beierle, C., Börger, E., Durdanović, I., Glässer, U., Riccobene, E.: Refining abstract machine specifications of the steam boiler control to well documented executable code. In: Abrial, J.-R., Börger, E., Langmaack, H. (eds.) Dagstuhl Seminar 1995. LNCS, vol. 1165, pp. 52–78. Springer, Heidelberg (1996)

    Chapter  Google Scholar 

  10. Boiten, E.A.: Introducing extra operations in refinement. Formal Aspects Comput. 26(2), 305–317 (2012)

    Article  MathSciNet  Google Scholar 

  11. Boniol, F., Wiels, V.: The landing gear system case study. In: Boniol, F., Wiels, V., Ait Ameur, Y., Schewe, K.-D. (eds.) ABZ 2014. CCIS, vol. 433, pp. 1–18. Springer, Heidelberg (2014)

    Chapter  Google Scholar 

  12. Börger, E.: The ASM refinement method. Formal Aspects Comput. 15(2), 237–257 (2003)

    Article  MATH  Google Scholar 

  13. Börger, E.: The Abstract State Machines method for high-level system design and analysis. In: Formal Methods: State of the Art and New Directions, pp. 79–116. Springer, London (2010)

    Google Scholar 

  14. Börger, E., Stärk, R.: Abstract State Machines: A Method for High-Level System Design and Analysis. Springer, Heidelberg (2003)

    Book  MATH  Google Scholar 

  15. Derrick, J., Boiten, E.: Refinement in Z and object-Z: Foundations and Advanced Applications. Springer, London (2001)

    Book  MATH  Google Scholar 

  16. Ernst, G., Pfähler, J., Schellhorn, G., Reif, W.: Modular refinement for submachines of ASMs. In: Ait Ameur, Y., Schewe, K.-D. (eds.) ABZ 2014. LNCS, vol. 8477, pp. 188–203. Springer, Heidelberg (2014)

    Chapter  Google Scholar 

  17. Farahbod, R., Glässer, U.: The CoreASM modeling framework. Softw. Pract. Experience 41(2), 167–178 (2011)

    Article  Google Scholar 

  18. Lynch, N.A., Tuttle, M.R.: An introduction to input/output automata. CWI Q. 2, 219–246 (1989)

    MathSciNet  MATH  Google Scholar 

  19. Lynch, N.A., Vaandrager, F.W.: Forward and backward simulations: Part I. untimed systems. Inf. Comput. 121(2), 214–233 (1995)

    Article  MathSciNet  MATH  Google Scholar 

  20. Meseguer, J., Palomino, M., Martí-Oliet, N.: Algebraic simulations. J. Logic Algebraic Program. 79(2), 103–143 (2010)

    Article  MathSciNet  MATH  Google Scholar 

  21. Riccobene, E., Schmid, J.: Capturing requirements by abstract state machines: The light control case study. J. UCS 6(7), 597–620 (2000)

    Google Scholar 

  22. Schellhorn, G.: Verification of ASM refinements using generalized forward simulation. J. UCS 7(11), 952–979 (2001)

    MathSciNet  Google Scholar 

  23. Schellhorn, G.: ASM refinement preserving invariants. J. UCS 14(12), 1929–1948 (2008)

    MathSciNet  MATH  Google Scholar 

  24. Stärk, R., Schmid, J., Börger, E.: Java and the Java Virtual Machine, vol. 24. Springer, Heidelberg (2001)

    Book  MATH  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Paolo Arcaini .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2016 Springer International Publishing Switzerland

About this paper

Cite this paper

Arcaini, P., Gargantini, A., Riccobene, E. (2016). SMT-Based Automatic Proof of ASM Model Refinement. In: De Nicola, R., Kühn, E. (eds) Software Engineering and Formal Methods. SEFM 2016. Lecture Notes in Computer Science(), vol 9763. Springer, Cham. https://doi.org/10.1007/978-3-319-41591-8_17

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-41591-8_17

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-41590-1

  • Online ISBN: 978-3-319-41591-8

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics