A Static Analysis of Non-confluent Triple Graph Grammars for Efficient Model Transformation

  • Anthony Anjorin
  • Erhan Leblebici
  • Andy Schürr
  • Gabriele Taentzer
Part of the Lecture Notes in Computer Science book series (LNCS, volume 8571)


Triple Graph Grammars (TGGs) are a well-known bidirectional model transformation language. All actively developed TGG tools pose restrictions to guarantee efficiency (polynomial runtime), without compromising formal properties. Most tools demand confluence of the TGG, meaning that a choice between applicable rules can be freely made without affecting the final result of a transformation. This is, however, a strong restriction for transformations with inherent degrees of freedom that should not be limited at design time. eMoflon is a TGG tool that supports non-confluent TGGs, allowing different results depending on runtime choices. To guarantee efficiency, nonetheless, a local choice of the next source element to be translated, based on source context dependencies of the rules, must not lead to a dead end, i.e., to a state where no rule is applicable for the currently chosen source element to be translated, and the transformation is not yet complete. Our contribution in this paper is to formalize a corresponding property, referred to as local completeness, using graph constraints. Based on the well-known transformation of constraints to application conditions, we present a static analysis that guarantees dead end-freeness for non-confluent TGGs.


Bidirectionality triple graph grammars static analysis 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Anjorin, A., Schürr, A., Taentzer, G.: Construction of Integrity Preserving Triple Graph Grammars. In: Ehrig, H., Engels, G., Kreowski, H.-J., Rozenberg, G. (eds.) ICGT 2012. LNCS, vol. 7562, pp. 356–370. Springer, Heidelberg (2012)CrossRefGoogle Scholar
  2. 2.
    Arendt, T., Biermann, E., Jurack, S., Krause, C., Taentzer, G.: Henshin: Advanced Concepts and Tools for In-Place EMF Model Transformations. In: Petriu, D.C., Rouquette, N., Haugen, Ø. (eds.) MODELS 2010, Part I. LNCS, vol. 6394, pp. 121–135. Springer, Heidelberg (2010)CrossRefGoogle Scholar
  3. 3.
    Ehrig, H., Ehrig, K., Prange, U., Taentzer, G.: Fundamentals of Algebraic Graph Transformation. Monographs in Theoretical Computer Science. An EATCS Series. Springer (2006)Google Scholar
  4. 4.
    Ehrig, H., Habel, A., Ehrig, K., Pennemann, K.H.: Theory of Constraints and Application Conditions: From Graphs to High-Level Structures. Fundamenta Informaticae 74(1), 135–166 (2006)zbMATHMathSciNetGoogle Scholar
  5. 5.
    Ghamarian, A.H., de Mol, M., Rensink, A., Zambon, E., Zimakova, M.: Modelling and Analysis Using GROOVE. STTT 12 14(1), 15–40 (2012)CrossRefGoogle Scholar
  6. 6.
    Giese, H., Hildebrandt, S., Lambers, L.: Toward Bridging the Gap Between Formal Semantics and Implementation of Triple Graph Grammars. Tech. Rep. 37, Hasso-Plattner Institute (2010)Google Scholar
  7. 7.
    Greenyer, J., Rieke, J.: Applying Advanced TGG Concepts for a Complex Transformation of Sequence Diagram Specifications to Timed Game Automata. In: Schürr, A., Varró, D., Varró, G. (eds.) AGTIVE 2011. LNCS, vol. 7233, pp. 222–237. Springer, Heidelberg (2012)CrossRefGoogle Scholar
  8. 8.
    Hermann, F., Ehrig, H., Golas, U., Orejas, F.: Efficient Analysis and Execution of Correct and Complete Model Transformations Based on Triple Graph Grammars. In: Bézivin, J., Soley, M.R., Vallecillo, A. (eds.) MDI 2010, vol. 1866277, pp. 22–31. ACM Press (2010)Google Scholar
  9. 9.
    Klar, F., Lauder, M., Königs, A., Schürr, A.: Extended Triple Graph Grammars with Efficient and Compatible Graph Translators. In: Engels, G., Lewerentz, C., Schäfer, W., Schürr, A., Westfechtel, B. (eds.) Nagl Festschrift. LNCS, vol. 5765, pp. 141–174. Springer, Heidelberg (2010)CrossRefGoogle Scholar
  10. 10.
    Lauder, M., Anjorin, A., Varró, G., Schürr, A.: Efficient Model Synchronization with Precedence Triple Graph Grammars. In: Ehrig, H., Engels, G., Kreowski, H.-J., Rozenberg, G. (eds.) ICGT 2012. LNCS, vol. 7562, pp. 401–415. Springer, Heidelberg (2012)CrossRefGoogle Scholar
  11. 11.
    Leblebici, E., Anjorin, A., Schürr, A.: A Catalogue of Optimization Techniques for Triple Graph Grammars. In: Fill, H.G., Karagiannis, D., Reimer, U. (eds.) Modellierung 2014. LNI, vol. 225, pp. 225–240. GI (2014)Google Scholar
  12. 12.
    Leblebici, E., Anjorin, A., Schürr, A.: Developing eMoflon with eMoflon. In: Varró, D. (ed.) ICMT 2014. LNCS, vol. 8568, pp. 138–145. Springer, Heidelberg (2014)Google Scholar
  13. 13.
    Schürr, A.: Specification of Graph Translators with Triple Graph Grammars. In: Mayr, E.W., Schmidt, G., Tinhofer, G. (eds.) WG 1994. LNCS, vol. 903, pp. 151–163. Springer, Heidelberg (1995)CrossRefGoogle Scholar

Copyright information

© Springer International Publishing Switzerland 2014

Authors and Affiliations

  • Anthony Anjorin
    • 1
  • Erhan Leblebici
    • 1
  • Andy Schürr
    • 1
  • Gabriele Taentzer
    • 2
  1. 1.Real-Time Systems LabTechnische Universität DarmstadtGermany
  2. 2.Fachbereich Mathematik und InformatikPhilipps-Universität MarburgGermany

Personalised recommendations