Skip to main content
×
Home
    • Aa
    • Aa

Multi-amalgamation of rules with application conditions in $\mathcal{M}$-adhesive categories

  • ULRIKE GOLAS (a1), ANNEGRET HABEL (a2) and HARTMUT EHRIG (a3)
Abstract

Amalgamation is a well-known concept for graph transformations that is used to model synchronised parallelism of rules with shared subrules and corresponding transformations. This concept is especially important for an adequate formalisation of the operational semantics of statecharts and other visual modelling languages, where typed attributed graphs are used for multiple rules with nested application conditions. However, the theory of amalgamation for the double-pushout approach has so far only been developed on a set-theoretical basis for pairs of standard graph rules without any application conditions.

For this reason, in the current paper we present the theory of amalgamation for $\mathcal{M}$-adhesive categories, which form a slightly more general framework than (weak) adhesive HLR categories, for a bundle of rules with (nested) application conditions. The two main results are the Complement Rule Theorem, which shows how to construct a minimal complement rule for each subrule, and the Multi-Amalgamation Theorem, which generalises the well-known Parallelism and Amalgamation Theorems to the case of multiple synchronised parallelism. In order to apply the largest amalgamated rule, we use maximal matchings, which are computed according to the actual instance graph. The constructions are illustrated by a small but meaningful running example, while a more complex case study concerning the firing semantics of Petri nets is presented as an introductory example and to provide motivation.

Copyright
Linked references
Hide All

This list contains references from the content that can be linked to their source. For a full set of references and notes please see the PDF or HTML where available.

E. Biermann , H. Ehrig , C. Ermel , U. Golas and G. Taentzer (2010a) Parallel Independence of Amalgamated Graph Transformations Applied to Model Transformation. In: Graph Transformations and Model-Driven Engineering. Springer-Verlag Lecture Notes in Computer Science 5765 121140.

P. Böhm , H. Fonio and A. Habel (1987) Amalgamation of Graph Transformations: A Synchronization Mechanism. Journal of Computer and System Sciences 34 (2-3) 377408.

I. Castellani and U. Montanari (1983) Graph Grammars for Distributed Systems. In: H. Ehrig , M. Nagl and G. Rozenberg (eds.) Graph Grammars and Their Application to Computer Science. Springer-Verlag Lecture Notes in Computer Science 153 2038.

J. de Lara , C. Ermel , G. Taentzer and K. Ehrig (2004) Parallel Graph Transformation for Model Simulation Applied to Timed Transition Petri Nets. Electronic Notes in Theoretical Computer Science 109 1729.

P. Degano and U. Montanari (1987) A Model of Distributed Systems Based on Graph Rewriting. Journal of the ACM 34 (2) 411449.

T. Fischer , J. Niere , L. Torunski and A. Zündorf (2000) A New Graph Rewrite Language Based on the Unified Modeling Language. In: Proceedings of TAGT 1998. Springer-Verlag Lecture Notes in Computer Science 1764 296309.

U. Golas , H. Ehrig and A. Habel (2010) Multi-Amalgamation in Adhesive Categories. In: Graph Transformations. Proceedings of ICGT 2010. Springer-Verlag Lecture Notes in Computer Science 6372 346361.

R. Grønmo , S. Krogdahl and B. Møller-Pedersen (2009) A Collection Operator for Graph Transformation. In: Proceedings of ICMT 2009. Springer-Verlag Lecture Notes in Computer Science 5563 6782.

B. Hoffmann , D. Janssens and N. van Eetvelde (2006) Cloning and Expanding Graph Transformation Rules for Refactoring. Electronic Notes in Theoretical Computer Science 152 5367.

S. Kuske , M. Gogolla , R. Kollmann and H.-J. Kreowski (2002) An Integrated Semantics for UML Class, Object and State Diagrams Based on Graph Transformation. In: Proceedings of IFM 2002. Springer-Verlag Lecture Notes in Computer Science 2335 1128.

S. Lack and P. Sobociński (2005) Adhesive and Quasiadhesive Categories. Theoretical Informatics and Applications 39 (3) 511545.

M. Löwe (1993) Algebraic Approach to Single-Pushout Graph Transformation. Theoretical Computer Science 109 181224.

G. Rozenberg (ed.) (1997) Handbook of Graph Grammars and Computing by Graph Transformation 1: Foundations, World Scientific.

A. Schürr , A. Winter and A. Zündorf (1999) The PROGRES-Approach: Language and Environment. In: Handbook of Graph Grammars and Computing by Graph Transformation 2: Applications, Languages and Tools, World Scientific487550.

G. Taentzer (2004) AGG: A Graph Transformation Environment for Modeling and Validation of Software. In: Proceedings of AGTIVE 2003. Springer-Verlag Lecture Notes in Computer Science 3062 446456.

G. Taentzer and M. Beyer (1994) Amalgamated Graph Transformations and Their Use for Specifying AGG – an Algebraic Graph Grammar System. In: Graph Transformations in Computer Science. Springer-Verlag Lecture Notes in Computer Science 776 380394.

D. Varró (2002) A Formal Semantics of UML Statecharts by Model Transition Systems. In: Proceedings of ICGT 2002. Springer-Verlag Lecture Notes in Computer Science 2505 378392.

Recommend this journal

Email your librarian or administrator to recommend adding this journal to your organisation's collection.

Mathematical Structures in Computer Science
  • ISSN: 0960-1295
  • EISSN: 1469-8072
  • URL: /core/journals/mathematical-structures-in-computer-science
Please enter your name
Please enter a valid email address
Who would you like to send this to? *
×

Metrics

Full text views

Total number of HTML views: 0
Total number of PDF views: 5 *
Loading metrics...

Abstract views

Total abstract views: 79 *
Loading metrics...

* Views captured on Cambridge Core between September 2016 - 24th April 2017. This data will be updated every 24 hours.