Formally Defining and Iterating Infinite Models

  • Benoit Combemale
  • Xavier Thirioux
  • Benoit Baudry
Part of the Lecture Notes in Computer Science book series (LNCS, volume 7590)


The wide adoption of MDE raises new situations where we need to manipulate very large models or even infinite model streams gathered at runtime (e.g., monitoring). These new uses cases for MDE raise challenges that had been unforeseen by the time standard modeling framework were designed. This paper proposes a formal definition of an infinite model, as well as a formal framework to reason on queries over infinite models. This formal query definition aims at supporting the design and verification of operations that manipulate infinite models. First, we precisely identify the MOF parts which must be refined to support infinite structure. Then, we provide a formal coinductive definition dealing with unbounded and potentially infinite graph-based structure.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Steinberg, D., Budinsky, F., Paternostro, M., Merks, E.: EMF: Eclipse Modeling Framework, 2nd edn. Addison-Wesley (2008)Google Scholar
  2. 2.
    Steel, J., Drogemuller, R., Toth, B.: Model interoperability in building information modelling. Software and Systems Modeling (SoSyM) 11, 99–109 (2012)CrossRefGoogle Scholar
  3. 3.
    Tisi, M., Perez, S.M., Jouault, F., Cabot, J.: Lazy Execution of Model-to-Model Transformations. In: Whittle, J., Clark, T., Kühne, T. (eds.) MODELS 2011. LNCS, vol. 6981, pp. 32–46. Springer, Heidelberg (2011)CrossRefGoogle Scholar
  4. 4.
    Espinazo-Pagán, J., Cuadrado, J.S., Molina, J.G.: Morsa: A Scalable Approach for Persisting and Accessing Large Models. In: Whittle, J., Clark, T., Kühne, T. (eds.) MODELS 2011. LNCS, vol. 6981, pp. 77–92. Springer, Heidelberg (2011)CrossRefGoogle Scholar
  5. 5.
    Blair, G., Bencomo, N., France, R.B.: Models@ run.time. Computer 42, 22–27 (2009)CrossRefGoogle Scholar
  6. 6.
    Object Management Group, Inc.: Meta Object Facility (MOF) 2.4.1 Core Specification. Final Adopted Specification (August 2011)Google Scholar
  7. 7.
    Object Management Group, Inc.: Unified Modeling Language (UML) 2.4.1 Infrastructure. Final Adopted Specification (August 2011)Google Scholar
  8. 8.
    Object Management Group, Inc.: Object Constraint Language (OCL) 2.3.1 Specification (January 2012)Google Scholar
  9. 9.
    Henderson, P., James, H., Morris, J.: A Lazy Evaluator. In: 3rd ACM Symposium on Principles on Programming Languages (POPL), pp. 95–103. ACM (1976)Google Scholar
  10. 10.
    Douence, R., Fradet, P.: A systematic study of functional language implementations. ACM Transactions on Programming Languages and Systems 20(2), 344–387 (1998)CrossRefGoogle Scholar
  11. 11.
    Babcock, B., Babu, S., Datar, M., Motwani, R., Widom, J.: Models and issues in data stream systems. In: 21st ACM Symposium on Principles of database systems (PODS), pp. 1–16 (2002)Google Scholar
  12. 12.
    Franklin, M., Zdonik, S.: A framework for scalable dissemination-based systems. SIGPLAN Not. 32(10), 94–105 (1997)CrossRefGoogle Scholar
  13. 13.
    Blanc, X., Mounier, I., Mougenot, A., Mens, T.: Detecting model inconsistency through operation-based model construction. In: 30th International Conference on Software Engineering (ICSE), pp. 511–520. ACM (2008)Google Scholar
  14. 14.
    Bertot, Y.: Coinduction in coq. CoRR abs/cs/0603119 (2006)Google Scholar
  15. 15.
    Object Management Group: Meta Object Facility (MOF) 2.0 Query/View/Transformation (QVT) Specification, version 1.0 (April 2008)Google Scholar
  16. 16.
    Steel, J., Jézéquel, J.M.: On model typing. Software and Systems Modeling (SoSyM) 6(4), 401–414 (2007)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2012

Authors and Affiliations

  • Benoit Combemale
    • 1
  • Xavier Thirioux
    • 2
  • Benoit Baudry
    • 3
  1. 1.University of Rennes 1, IRISAFrance
  3. 3.Inria, Centre Rennes Bretagne AtlantiqueFrance

Personalised recommendations