Abstract
Variables make rule-based systems more abstract and expressive, as witnessed by term rewriting systems and two-level grammars. In this paper we show that variables can be used to define advanced ways of graph transformation as well. Taking the gluing approach to graph transformation [7,3] as a basis, we consider extensions of rules with attribute variables, clone variables, and graph variables, respectively. In each case, the variables in a rule are instantiated in order to obtain a set of rule instances that in turn defines the transformation relation. By combining different kinds of variables, we define very expressive rules, and reduce them to plain rules by instantiation. Since gluing graph transformation has a well developed theory, this opens the door to lift results of that theory from instances to rules with variables.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Claus, V., Ehrig, H., Rozenberg, G.: Graph Grammars 1978. LNCS, vol. 73. Springer, Heidelberg (1979)
Cleaveland, C.J., Uzgalis, R.C.: Grammars for Programming Languages. Elsevier, New York (1977)
Corradini, A., Ehrig, H., Heckel, R., Löwe, M., Montanari, U., Rossi, F.: Algebraic approaches to graph transformation, part I: Basic concepts and double pushout approach. In: Rozenberg, G. (ed.) Handbook of Graph Grammars and Computing by Graph Transformation. Foundations, vol. I. World Scientific, Singapore (1997)
Corradini, A., Ehrig, H., Kreowski, H.-J., Rozenberg, G. (eds.): ICGT 2002. LNCS, vol. 2505. Springer, Heidelberg (2002)
Drewes, F., Habel, A., Kreowski, H.-J.: Hyperedge replacement graph grammars. In: Rozenberg (ed.) [27], ch. 2, pp. 95–162.
Drewes, F., Hoffmann, B., Minas, M.: Constructing shapely nested graph transformations. In: Kreowskiand, H.-J., Knirsch, P. (eds.) Proc. Int’l Workshop on Applied Graph Transformation (AGT 2002), pp. 107–118 (2002)
Ehrig, H.: Introduction to the algebraic theory of graph grammars. In: Claus et al. [1], pp. 1–69
Ehrig, H., Engels, G., Parisi-Presicce, F., Rozenberg, G. (eds.) ICGT 2004. LNCS, vol. 3256. Springer, Heidelberg (2004)
Ehrig, H., Hoffmann, B., Schmiedecke, I.-R.: A Graph- Theoretical Model for Multi-Pass Parsing. In: Mühlbacher, J.R. (ed.) Proc. 7th Conf. on Graph-Theoretical Concepts in Comp. Sci. (WG 1981), München-Wien, pp. 19–32. Hanser, Verlag (1982)
Engelfriet, J., Rozenberg, G.: Node replacement graph grammars. In: Rozenberg [27], ch. 1, pp. 1–94
Göttler, H.: Zweistufige Graphmanipulationssysteme für die Semantik von Programmiersprachen. Dissertation, Universität Erlangen-Nürnberg (1977) (in German)
Habel, A., Heckel, R., Taentzer, G.: Graph grammars with negative application conditions. Fundamenta Informaticae 26, 287–313 (1996)
Habel, A., Hoffmann, B.: Parallel independence in hierarchical graph transformation. In: Ehrig et al. [8], pp. 178–193
Habel, A., Müller, J., Plump, D.: Double-pushout graph transformation revisited. Mathematical Structures in Computer Science 11(5), 637–688 (2001)
Habel, A., Plump, D.: Relabelling in graph transformation. In: Corradini et al. [4], pp. 135–147
Heckel, R., Küster, J.M., Taentzer, G.: Confluence of typed attributed graph transformation systems. In: Corradini et al. [4], pp. 161–176
Hesse, W.: Two-level graph grammars. In: Claus et al. [1], pp. 255–269
Hoffmann, B.: Shapely hierarchical graph transformation. In: Proc. IEEE Symposia on Human-Centric Computing Languages and Environments, pp. 30–37. IEEE Computer Press, Los Alamitos (2001)
Klop, J.W.: Term rewriting systems. In: Abramsky, S., Gabbay, D.M., Maibaum, T.S.E. (eds.) Handbook of Logic in Computer Science, vol. 2, pp. 1–116. Oxford University Press, Oxford (1992)
Kreowski, H.-J., Rozenberg, G.: On structured graph grammars, I and II. Information Sciences 52, 185–210, 221–246 (1990)
Löwe, M., Korff, M., Wagner, A.: An algebraic framework for the transformation of attributed graphs. In: Sleep et al. [31], pp. 185–199
Mens, T., Demeyer, S., Janssens, D.: Formalising behaviour-preserving transformation. In: Corradini et al. [4], pp. 286–301
Nagl, M.: Graph-Grammatiken: Theorie, Anwendungen, Implementierungen. Vieweg-Verlag, Braunschweig (1979) (in German)
Plump, D.: Hypergraph rewriting: Critical pairs and undecidability of confluence. In: Sleep et al. [31], pp. 201–213
Plump, D., Habel, A.: Graph unification and matching. In: Cuny, J.E., Engels, G., Ehrig, H., Rozenberg, G. (eds.) Graph Grammars 1994. LNCS, vol. 1073, pp. 75–89. Springer, Heidelberg (1996)
Plump, D., Steinert, S.: Towards graph programs for graph algorithms. In: Ehrig et al. [8], pp. 128–143
Rozenberg, G. (ed.): Handbook of Graph Grammars and Computing by Graph Transformation. Foundations, vol. I. World Scientific, Singapore (1997)
Schied, G.: Über Graphgrammatiken, eine Spezifikationsmethode für Programmiersprachen und verteilte Regelsysteme. Dissertation, Universität Erlangen- Nürnberg (1992) (in German)
Schneider, H.-J.: On categorical graph grammars integrating structural transformations and operations on labels. Theoretical Computer Science 109, 257–274 (1993)
Schürr, A.: Programmed graph replacement systems. In: Rozenberg [27], ch. 7, pp. 479–546
Ronan Sleep, M., Plasmeijer, R., von Eekelen, M. (eds.): Term Graph Rewriting, Theory and Practice. Wiley & Sons, Chichester (1993)
van Eetvelde, N., Janssens, D.: Extending graph rewriting for refactoring. In: Ehrig et al. [8], pp. 399–415
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2005 Springer-Verlag Berlin Heidelberg
About this chapter
Cite this chapter
Hoffmann, B. (2005). Graph Transformation with Variables. In: Kreowski, HJ., Montanari, U., Orejas, F., Rozenberg, G., Taentzer, G. (eds) Formal Methods in Software and Systems Modeling. Lecture Notes in Computer Science, vol 3393. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-31847-7_6
Download citation
DOI: https://doi.org/10.1007/978-3-540-31847-7_6
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-24936-8
Online ISBN: 978-3-540-31847-7
eBook Packages: Computer ScienceComputer Science (R0)