Skip to main content
Log in

Automatically reasoning about metamodeling

  • Special Section Paper
  • Published:
Software & Systems Modeling Aims and scope Submit manuscript

Abstract

Metamodeling is foundational to many modeling frameworks, and so it is important to formalize and reason about it. Ideally, correctness proofs and test-case generation on the metamodeling framework should be automatic. However, it has yet to be shown that extensive automated reasoning on metamodeling frameworks can be achieved. In this paper, we present one approach to this problem: metamodeling frameworks are specified modularly using algebraic data types and constraint logic programming (CLP). Proofs and test-case generation are encoded as open world query operations and automatically solved.

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

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9

Similar content being viewed by others

Notes

  1. This paper is an extended version of the work presented in [7].

  2. Our definition differs from others as we allow edges to also act as types.

References

  1. Clark, T., Evans, A., Kent, S.: The metamodelling language calculus: foundation semantics for UML. In: FASE, pp. 17–31 (2001)

  2. Jouault, F., Bézivin, J.: KM3: a DSL for metamodel specification. In: FMOODS, pp. 171–185 (2006)

  3. Varró, D., Pataricza, A.: VPM: a visual, precise and multilevel metamodeling framework for describing mathematical domains and UML. J. Softw. Syst. Model. 2(3), 187–210 (2003)

    Article  Google Scholar 

  4. Alanen, M., Porres, I.: A metamodeling language supporting subset and union properties. Softw. Syst. Model. 7(1), 103–124 (2008)

    Article  Google Scholar 

  5. Boronat, A., Meseguer, J.: An algebraic semantics for MOF. Formal Asp. Comput. 22(3–4), 269–296 (2010)

    Article  MATH  Google Scholar 

  6. Jackson, E.K., Kang, E., Dahlweid, M., Seifert, D., Santen, T.: Components, platforms and possibilities: towards generic automation for MDA. In: EMSOFT, pp. 39–48 (2010)

  7. Jackson, E.K., Levendovszky, T., Balasubramanian, D.: Reasoning about metamodeling with formal specifications and automatic proofs. In: MoDELS, pp. 653–667 (2011)

  8. Ehrig, H., Ehrig, K., Prange, U., Taentzer, G.: Fundamentals of algebraic graph transformation (monographs in theoretical computer science). An EACTS series. Springer, New York (2006)

    Google Scholar 

  9. Atkinson, C., Kühne, T.: The essence of multilevel metamodeling. In: UML, pp. 19–33 (2001)

  10. Dantsin, E., Eiter, T., Gottlob, G., Voronkov, A.: Complexity and expressive power of logic programming. ACM Comput. Surv. 33(3), 374–425 (2001)

    Article  Google Scholar 

  11. Clavel, M., Durán, F., Eker, S., Lincoln, P., Martí-Oliet, N., Meseguer, J., Quesada, J.F.: Maude: specification and programming in rewriting logic. Theor. Comput. Sci. 285(2), 187–243 (2002)

    Article  MATH  Google Scholar 

  12. Varró, D.: Automated formal verification of visual modeling languages by model checking. Softw. Syst. Model. 3(2), 85–113 (2004)

    Article  Google Scholar 

  13. Anastasakis, K., Bordbar, B., Georg, G., Ray, I.: UML2Alloy: a challenging model transformation. In: MODELS, pp. 436–450 (2007)

  14. Torlak, E., Jackson, D.: Kodkod: a relational model finder. In: TACAS, pp. 632–647 (2007)

  15. Kuhlmann, M., Gogolla, M.: From uml and ocl to relational logic and back. In: MoDELS, pp. 415–431 (2012)

  16. Kuhlmann, M., Gogolla, M.: Strengthening sat-based validation of uml/ocl models by representing collections as relations. In: ECMFA, pp. 32–48 (2012)

  17. Büttner, F., Egea, M., Cabot, J., Gogolla, M.: Verification of atl transformations using transformation models and model finders. In: ICFEM, pp. 198–213 (2012)

  18. Cabot, J., Clarisó, R., Guerra, E., de Lara, J.: Verification and validation of declarative model-to-model transformations through invariants. J. Syst. Softw. 83(2), 283–302 (2010)

    Article  Google Scholar 

  19. Balaban, M., Kifer, M.: Logic-based model-level software development with f-oml. In: MoDELS, pp. 517–532 (2011)

  20. Gurevich, Y., Neeman, I.: Dkal: distributed-knowledge authorization language. In: CSF, pp. 149–162 (2008)

  21. Alvaro, P., Condie, T., Conway, N., Elmeleegy, K., Hellerstein, J.M., Sears, R.: Boom analytics: exploring data-centric, declarative programming for the cloud. In: EuroSys, pp. 223–236 (2010)

  22. de Moura, L.M., Bjørner, N.: Z3: An efficient smt solver. In: TACAS, pp. 337–340 (2008)

  23. Büttner, F., Egea, M., Cabot, J.: On verifying atl transformations using ’off-the-shelf’ smt solvers. In: MoDELS, pp. 432–448 (2012)

  24. Ehrig, K., Küster, J.M., Taentzer, G.: Generating instance models from meta models. Softw. Syst. Model. 8(4), 479–500 (2009)

    Article  Google Scholar 

  25. Grönniger, H., Ringert, J.O., Rumpe, B.: System model-based definition of modeling language semantics. In: FMOODS/FORTE, pp. 152–166 (2009)

  26. Mendonça, M., Wasowski, A., Czarnecki, K.: SAT-based analysis of feature models is easy. In: SPLC, pp. 231–240 (2009)

  27. Jackson, E.K., Sztipanovits, J.: Constructive techniques for meta- and model-level reasoning. In: MODELS, pp. 405–419 (2007)

  28. Jaffar, J., Maher, M.J., Marriott, K., Stuckey, P.J.: The semantics of constraint logic programs. J. Log. Program. 37(1–3), 1–46 (1998)

    Article  MATH  MathSciNet  Google Scholar 

  29. Lifschitz, V.: Twelve definitions of a stable model. In: ICLP, pp. 37–51 (2008)

  30. Jackson, E.K., Bjørner, N., Schulte, W.: Canonical regular types. In: ICLP (technical communications), pp. 73–83 (2011)

  31. Sheeran, M., Singh, S., Stålmarck, G.: Checking safety properties using induction and a sat-solver. In: FMCAD, pp 108–125 (2000)

  32. Bjørner, N., Hoder, K.: Generalized property directed reachability. In: SAT (2012)

  33. Ball, T., Bjørner, N., de Moura, L.M., McMillan, K.L., Veanes, M.: Beyond first-order satisfaction: Fixed points, interpolants, automata and polynomials. In: SPIN, pp. 1–6 (2012)

  34. Object Management Group: Meta object facility (MOF) core specification version 2.4 (2010)

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Ethan K. Jackson.

Additional information

Communicated by Prof. Tony Clark and Prof. Jon Whittle.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Jackson, E.K., Levendovszky, T. & Balasubramanian, D. Automatically reasoning about metamodeling. Softw Syst Model 14, 271–285 (2015). https://doi.org/10.1007/s10270-013-0315-y

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10270-013-0315-y

Keywords

Navigation