Skip to main content

A Type Theoretic Framework for Formal Metamodelling

  • Conference paper
Architecting Systems with Trustworthy Components

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

Abstract

The Object Managment Group’s Meta-Object Facility (MOF) [19] is a semiformal approach to writing models and metamodels (models of models). It works according to a model/metamodel hierarchy, where software is specified by models, models are defined as instances of metamodels, which are, in turn, defined as instances of the MOF meta-metamodel. By writing models and metamodels in a common framework, the MOF meta-metamodel, it is easier to perform systematic model/metamodel interchange and integration. However, the approach is only useful if metamodels are correctly specified – a single error in a metamodel specification will result in the propagation of errors throughout instantiating models and final model implementations. An important open question is how to develop provably correct metamodels.

This paper applies constructive type theory to formalize the MOF metamodelling approach. The benefit of the formalization is that correct typing corresponds to provably correct metamodels and models. Because the MOF is the central technology behind the Model Driven Architecture initiative [18], our work is intended to lay a formal foundation for making Model Driven Architecture more trustworthy.

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. Abadi, M., Cardelli, L.: A Theory of Objects. Monographs in Computer Science. Springer, Heidelberg (1996)

    Book  MATH  Google Scholar 

  2. Akehurst, D.H., Kent, S., Patrascoiu, O.: A relational approach to defining and implementing transformations between metamodels. Software and System Modeling 2(4), 215–239 (2003)

    Article  Google Scholar 

  3. Amadio, R.M., Cardelli, L.: Subtyping recursive types. ACM Transactions on Programming Languages and Systems 15(4), 575–631 (1993)

    Article  Google Scholar 

  4. Berger, U., Schwichtenberg, H.: Program development by proof transformation. In: Schwichtenberg, H. (ed.) Proceedings of the NATO Advanced Study Institute on Proof and Computation, pp. 1–45 (1993)

    Google Scholar 

  5. Bickford, M., Constable, R., Halpern, J., Petride, S.: Knowledge-based synthesis of distributed systems using event structures. In: Baader, F., Voronkov, A. (eds.) LPAR 2004. LNCS, vol. 3452, pp. 449–465. Springer, Heidelberg (2005)

    Chapter  Google Scholar 

  6. CoFI Language Design Task Group on Language Design. CASL, The Common Algebraic Specification Language (version 1.0.1), Summary (March 25, 2001)

    Google Scholar 

  7. Constable, R., Mendler, N., Howe, D.: Implementing Mathematics with the Nuprl Proof Development System. Prentice-Hall, Englewood Cliffs (1986)

    Google Scholar 

  8. Coquand, T.: Metamathematical Investigations of a Calculus of Constructions. In: Logic and Computer Science, pp. 91–122 (1990)

    Google Scholar 

  9. Coquand, T.: Infinite objects in type theory. In: Barendregt, H., Nipkow, T. (eds.) TYPES 1993. LNCS, vol. 806, pp. 62–78. Springer, Heidelberg (1994)

    Chapter  Google Scholar 

  10. Curry, H.: Functionality in combinatory logic. Proceedings of the National Academy of Science of the USA 20, 154–180 (1934)

    Article  MATH  Google Scholar 

  11. Favre, L.: Foundations for mda-based forward engineering. Journal of Object Technology 4(1), 129–153 (2005)

    Article  Google Scholar 

  12. Goguen, J., Winkler, T., Meseguer, J., Futatsugi, K., Jouannaud, J.-P.: Introducing OBJ3. In: Software Engineering with OBJ: Algebraic Specification in Action, Kluwer Academic Publishers, Dordrecht (2000)

    Chapter  Google Scholar 

  13. Hayashi, S., Nakano, H.: PX, a Computational Logic. Foundations of Computing. MIT Press (Accessed, May 2003), Electronic edition available at, http://www.shayashi.jp/PXbook.html

  14. William, A.: The formulae-as-types notion of construction. In: To, H.B. (ed.) Curry: Essays on Combinatory logic, Lambda calculus, and Formalism, pp. 479–490. Academic Press, London (1980)

    Google Scholar 

  15. Huisman, M., Jacobs, B.: Java program verification via a hoare logic with abrupt termination. In: Maibaum, T. (ed.) FASE 2000. LNCS, vol. 1783, pp. 284–303. Springer, Heidelberg (2000)

    Chapter  Google Scholar 

  16. Luo, Z.: Program specification and data refinement in type theory. Mathematical Structures in Computer Science 3(3) (1993)

    Google Scholar 

  17. Martin-Löf, P.: Intuitionistic Type Theory. Bibliopolis (1984)

    Google Scholar 

  18. Mukerji, J., Miller, J.: MDA Guide Version 1.0.1. Object Management Group (2003)

    Google Scholar 

  19. OMG Meta Object Facility (MOF) Specification. Object Management Group (2000)

    Google Scholar 

  20. Owre, S., Rushby, J., Shankar, N., von Henke, F.: Formal verification for fault-tolerant architecture: Prolegomena to the design of pvs. IEEE Transactions on Software Engineering 21(2), 107–125 (1995)

    Article  Google Scholar 

  21. Paulin-Mohring, C., Werner, B.: Synthesis of ML programs in the system Coq. Journal of Symbolic Computation 15(5/6), 607–640 (1993)

    Article  MathSciNet  MATH  Google Scholar 

  22. Poernomo, I., Crossley, J., Wirsing, M.: Adapting Proofs-as-Programs: The Curry-Howard Protocol. Monographs in computer science. Springer, Heidelberg (2005)

    MATH  Google Scholar 

  23. Poll, E.: Subtyping and Inheritance for Categorical Datatypes. In: Theories of Types and Proofs (TTP) - Kyoto, RIMS Lecture Notes, vol. 1023, pp. 112–125. Kyoto University Research Insitute for Mathematical Sciences (1998)

    Google Scholar 

  24. Simons, A.J.H.: The theory of classification. part 3: Object encodings and recursion. Journal of Object Technology 1(4), 49–57 (2002)

    Article  Google Scholar 

  25. Solange, C.-G., Line, J.: Coq and hardware verification: A case study. In: von Wright, J., Harrison, J., Grundy, J. (eds.) TPHOLs 1996. LNCS, vol. 1125, pp. 26–30. Springer, Heidelberg (1996)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2006 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Poernomo, I. (2006). A Type Theoretic Framework for Formal Metamodelling. In: Reussner, R.H., Stafford, J.A., Szyperski, C.A. (eds) Architecting Systems with Trustworthy Components. Lecture Notes in Computer Science, vol 3938. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11786160_15

Download citation

  • DOI: https://doi.org/10.1007/11786160_15

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-35800-8

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

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics