A Sound Execution Semantics for ATL via Translation Validation

Research Paper
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, 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.

Keywords

Model transformation verification ATL Automatic theorem proving Intermediate verification language Boogie 

References

  1. 1.
    Ab.Rahim, L., Whittle, J.: A survey of approaches for verifying model transformations. Soft. Syst. Modeling (2015) (to appear)Google Scholar
  2. 2.
    Apt, K.R., de Boer, F.S., Olderog, E.R.: Verification of Sequential and Concurrent Programs, 3rd edn. Springer, Berlin (2009)CrossRefGoogle Scholar
  3. 3.
    ATLAS Group: Specification of the ATL virtual machine. Technical report, Lina & INRIA Nantes (2005)Google Scholar
  4. 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) CrossRefGoogle Scholar
  5. 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) CrossRefGoogle Scholar
  6. 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) CrossRefGoogle Scholar
  7. 7.
    Cheng, Z., Monahan, R., Power, J.F.: Online repository for VeriATL system (2013). https://github.com/veriatl/veriatl
  8. 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)CrossRefGoogle Scholar
  9. 9.
    Jouault, F., Allilaire, F., Bézivin, J., Kurtev, I.: ATL: a model transformation tool. Sci. Comput. Program. 72(1–2), 31–39 (2008)CrossRefGoogle Scholar
  10. 10.
    Lano, K., Clark, T., Kolahdouz-Rahimi, S.: A framework for model transformation verification. Formal Aspects Comput. 27(1), 193–235 (2015)MathSciNetCrossRefGoogle Scholar
  11. 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) CrossRefGoogle Scholar
  12. 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)MathSciNetCrossRefGoogle Scholar
  13. 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) CrossRefGoogle Scholar
  14. 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) CrossRefGoogle Scholar
  15. 15.
    Troya, J., Vallecillo, A.: A rewriting logic semantics for ATL. J. Object Technol. 10(5), 1–29 (2011)Google Scholar

Copyright information

© Springer International Publishing Switzerland 2015

Authors and Affiliations

  • Zheng Cheng
    • 1
  • Rosemary Monahan
    • 1
  • James F. Power
    • 1
  1. 1.Computer Science DepartmentMaynooth UniversityMaynoothIreland

Personalised recommendations