Skip to main content

A Sound Execution Semantics for ATL via Translation Validation

Research Paper

  • Conference paper
  • First Online:
Theory and Practice of Model Transformations (ICMT 2015)

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 9152))

Abstract

In this work we present a translation validation approach to encode a sound execution semantics for the ATL specification. Based on our sound encoding, the goal is to soundly verify an ATL specification against the specified OCL contracts. To demonstrate our approach, we have developed the VeriATL verification system using the Boogie2 intermediate verification language, which in turn provides access to the Z3 theorem prover. Our system automatically encodes the execution semantics of each ATL specification (as it appears in the ATL matched rules) into the intermediate verification language. Then, to ensure the soundness of the encoding, we verify that it soundly represents the runtime behaviour of its corresponding compiled implementation in terms of bytecode instructions for the ATL virtual machine. The experiments demonstrate the feasibility of our approach. They also illustrate how to automatically verify an ATL specification against specified OCL contracts.

Z. Cheng—Funded by the Doctoral Teaching scholarship, John & Pat Hume scholarship and Postgraduate Travel fund from Maynooth University.

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.

    Z3. http://z3.codeplex.com/.

  2. 2.

    KM3 is a domain specific language for metamodel specifications.

  3. 3.

    Xpand. http://wiki.eclipse.org/Xpand/.

  4. 4.

    Why3. http://why3.lri.fr/.

References

  1. Ab.Rahim, L., Whittle, J.: A survey of approaches for verifying model transformations. Soft. Syst. Modeling (2015) (to appear)

    Google Scholar 

  2. Apt, K.R., de Boer, F.S., Olderog, E.R.: Verification of Sequential and Concurrent Programs, 3rd edn. Springer, Berlin (2009)

    Book  Google Scholar 

  3. ATLAS Group: Specification of the ATL virtual machine. Technical report, Lina & INRIA Nantes (2005)

    Google Scholar 

  4. Barnett, M., Chang, B.-Y.E., DeLine, R., Jacobs, B., M. Leino, K.R.: Boogie: a modular reusable verifier for object-oriented programs. In: de Boer, F.S., Bonsangue, M.M., Graf, S., de Roever, W.-P. (eds.) FMCO 2005. LNCS, vol. 4111, pp. 364–387. Springer, Heidelberg (2006)

    Chapter  Google Scholar 

  5. Büttner, F., Egea, M., Cabot, J.: On verifying ATL transformations using ‘off-the-shelf’ SMT solvers. In: France, R.B., Kazmeier, J., Breu, R., Atkinson, C. (eds.) MODELS 2012. LNCS, vol. 7590, pp. 432–448. Springer, Heidelberg (2012)

    Chapter  Google Scholar 

  6. Calegari, D., Luna, C., Szasz, N., Tasistro, Á.: A type-theoretic framework for certified model transformations. In: Davies, J. (ed.) SBMF 2010. LNCS, vol. 6527, pp. 112–127. Springer, Heidelberg (2011)

    Chapter  Google Scholar 

  7. Cheng, Z., Monahan, R., Power, J.F.: Online repository for VeriATL system (2013). https://github.com/veriatl/veriatl

  8. Combemale, B., Crégut, X., Garoche, P., Thirioux, X.: Essay on semantics definition in MDE - an instrumented approach for model verification. J. Softw. 4(9), 943–958 (2009)

    Article  Google Scholar 

  9. Jouault, F., Allilaire, F., Bézivin, J., Kurtev, I.: ATL: a model transformation tool. Sci. Comput. Program. 72(1–2), 31–39 (2008)

    Article  Google Scholar 

  10. Lano, K., Clark, T., Kolahdouz-Rahimi, S.: A framework for model transformation verification. Formal Aspects Comput. 27(1), 193–235 (2015)

    Article  MathSciNet  Google Scholar 

  11. Leino, K.R.M.: Dafny: an automatic program verifier for functional correctness. In: Clarke, E.M., Voronkov, A. (eds.) LPAR-16 2010. LNCS, vol. 6355, pp. 348–370. Springer, Heidelberg (2010)

    Chapter  Google Scholar 

  12. Leroy, X.: Formal certification of a compiler back-end or: programming a compiler with a proof assistant. SIGPLAN Not. 41(1), 42–54 (2006)

    Article  MathSciNet  Google Scholar 

  13. Lúcio, L., Barroca, B., Amaral, V.: A technique for automatic validation of model transformations. In: Petriu, D.C., Rouquette, N., Haugen, Ø. (eds.) MODELS 2010, Part I. LNCS, vol. 6394, pp. 136–150. Springer, Heidelberg (2010)

    Chapter  Google Scholar 

  14. Poernomo, I.H.: Proofs-as-model-transformations. In: Vallecillo, A., Gray, J., Pierantonio, A. (eds.) ICMT 2008. LNCS, vol. 5063, pp. 214–228. Springer, Heidelberg (2008)

    Chapter  Google Scholar 

  15. Troya, J., Vallecillo, A.: A rewriting logic semantics for ATL. J. Object Technol. 10(5), 1–29 (2011)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Zheng Cheng .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2015 Springer International Publishing Switzerland

About this paper

Cite this paper

Cheng, Z., Monahan, R., Power, J.F. (2015). A Sound Execution Semantics for ATL via Translation Validation. In: Kolovos, D., Wimmer, M. (eds) Theory and Practice of Model Transformations. ICMT 2015. Lecture Notes in Computer Science(), vol 9152. Springer, Cham. https://doi.org/10.1007/978-3-319-21155-8_11

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-21155-8_11

  • Published:

  • Publisher Name: Springer, Cham

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

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

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics