Abstract
The paper extends Sesqui-Pushout Graph Rewriting (SqPO) by polymorphism, a key concept in object-oriented design. For this purpose, the necessary theory for rule composition and decomposition is elaborated on an abstract categorical level. The results are applied to model rule extension and type dependent rule application. This extension mechanism qualifies SqPO – with its very useful copy mechanism for unknown contexts – as a modelling technique for extendable frameworks. Therefore, it contributes to the applicability of SqPO in software engineering. A version management example demonstrates the practical applicability of the combination of context-copying and polymorphism.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Notes
- 1.
Composition and prefix closure: for all \(f\in \mathcal {L}\), \(f\circ g\in \mathcal {L}\iff g\in \mathcal {L}\).
- 2.
If \(g\circ f'=f\circ g'\), \((g',f')\) is pullback in \(\mathcal {C}\) of (f, g), and \(g\in \mathcal {L}\), then \(g'\in \mathcal {L}\).
- 3.
If \(g'\circ f'=f\circ g\), \((g',f')\) is final pullback complement of (f, g), \(g\in \mathcal {L}\), then \(g'\in \mathcal {L}\).
- 4.
Note that (C5) also implies \(i_{0},i_{2},i_{3}\in \mathcal {L}\) due to (C3) and (C4).
- 5.
In SPO, \(\mathcal {L}\) is required to be a suitable subset of the monomorphisms in \(\mathcal {C}\).
- 6.
The statement “\(t'\left\langle m'\right\rangle \circ m\) is match” requires that \(t'\left\langle m'\right\rangle \circ m\in \mathcal {C}\), which – being more precise – means that \(t'\left\langle m'\right\rangle \circ m=[\mathrm {id},f]\) for some \(f\in \mathcal {C}\).
- 7.
Note that this notion of parallel independence is a conservative generalisation of the corresponding notions in [2, 5]. If the rules \(t=(l:K\rightarrow L,r:K\rightarrow R)\) and \(t'=(l':K'\rightarrow L',r':K'\rightarrow R')\) have monic left-hand sides l and \(l'\), we obtain monic morphisms \(l\left\langle m\right\rangle \) and \(l'\left\langle m'\right\rangle \) in the traces for matches m and \(m'\). In this case, the existence of morphisms n and \(n'\) with \(l'\left\langle m'\right\rangle \circ n=m\) and \(l\left\langle m\right\rangle \circ n'=m'\) implies that \((n,\mathrm {id}_{L})\) and \((n',\mathrm {id}_{L'})\) are pullbacks of \((m,l'\left\langle m'\right\rangle )\) and \((m',l\left\langle m\right\rangle )\) resp.
- 8.
Compare Fact 2.
- 9.
These maximal rules model object-oriented operations.
- 10.
Compare “Negative Application Conditions” in [12].
- 11.
Vertex or edge.
- 12.
Compare also [19].
- 13.
For an arbitrary hierarchy H, the Dedekind/MacNeille-completion [23] provides the smallest order closed under least upper and greatest lower bounds containing H.
- 14.
If \(f,g:X\rightarrow G\) are two mappings into a partially ordered set \(G=(G,\le )\), we write \(f\le g\) if \(f(x)\le g(x)\) for all \(x\in X\).
- 15.
The comparison operator \(\le \) in (11) is replaced by \(=\).
- 16.
The notation \(o\in D\) stands here and in the following five occurrences for \(o\in Object_{D}\).
- 17.
The composition \(c\circ a\) exists.
- 18.
Version management systems typically store a successor version of an atomic component by some delta-information or text differences wrt. to its direct predecessor.
References
Anjorin, A., Saller, K., Lochau, M., Schürr, A.: Modularizing triple graph grammars using rule refinement. In: Gnesi and Rensink [9], pp. 340–354
Corradini, A., Heindel, T., Hermann, F., König, B.: Sesqui-pushout rewriting. In: Corradini, A., Ehrig, H., Montanari, U., Ribeiro, L., Rozenberg, G. (eds.) ICGT 2006. LNCS, vol. 4178, pp. 30–45. Springer, Heidelberg (2006)
Danos, V., Heindel, T., Honorato-Zimmer, R., Stucki, S.: Reversible sesqui-pushout rewriting. In: Giese and König [8], pp. 161–176
Duval, D., Echahed, R., Prost, F., Ribeiro, L.: Transformation of attributed structures with cloning. In: Gnesi and Rensink [9], pp. 310–324
Ehrig, H., Ehrig, K., Prange, U., Taentzer, G.: Fundamentals of Algebraic Graph Transformation. Springer, New York (2006)
Ehrig, H., Rensink, A., Rozenberg, G., Schürr, A. (eds.): ICGT 2010. LNCS, vol. 6372. Springer, Heidelberg (2010)
Lüdtke Ferreira, A.P., Ribeiro, L.: Derivations in object-oriented graph grammars. In: Ehrig, H., Engels, G., Parisi-Presicce, F., Rozenberg, G. (eds.) ICGT 2004. LNCS, vol. 3256, pp. 416–430. Springer, Heidelberg (2004)
Giese, H., König, B. (eds.): ICGT 2014. LNCS, vol. 8571. Springer, Heidelberg (2014)
Gnesi, S., Rensink, A. (eds.): FASE 2014 (ETAPS). LNCS, vol. 8411. Springer, Heidelberg (2014)
Golas, U., Lambers, L., Ehrig, H., Orejas, F.: Attributed graph transformation with inheritance: efficient conflict detection and local confluence analysis using abstract critical pairs. Theor. Comput. Sci. 424, 46–68 (2012)
Guerra, E., de Lara, J.: Attributed typed triple graph transformation with inheritance in the double pushout approach. Technical Report UC3M-TR-CS-06-01, Technical Report Universidad Carlos III de Madrid (2006)
Habel, A., Heckel, R., Taentzer, G.: Graph grammars with negative application conditions. Fundam. Inform. 26(3/4), 287–313 (1996)
Hayman, J., Heindel, T.: On pushouts of partial maps. In: Giese and König [8], pp. 177–191
Heindel, T.: Hereditary pushouts reconsidered. In: Ehrig et al.: [6], pp. 250–265
Kennaway, R.: Graph rewriting in some categories of partial morphisms. In: Ehrig, H., Kreowski, H.-J., Rozenberg, G. (eds.) Graph-Grammars and Their Application to Computer Science. LNCS, vol. 532, pp. 490–504. Springer, Heidelberg (1990)
Klar, F., Königs, A., Schürr, A.: Model transformation in the large. In: Crnkovic, I., Bertolino, A. (eds.) ESEC/SIGSOFT FSE, pp. 285–294. ACM (2007)
Liskov, B.H., Wing, J.M.: Family values: a behavioral notion of subtyping. Technical Report CMU-CS-93-187-1, Carnegie Mellon University (1993)
Löwe, M.: Algebraic approach to single-pushout graph transformation. Theor. Comput. Sci. 109(1&2), 181–224 (1993)
Löwe, M.: Graph rewriting in span-categories. In: Ehrig et al.: [6], pp. 218–233
Löwe, M.: Polymorphic sesqui-pushout graph transformation. Technical Report 2014/02, FHDW-Hannover (ISSN 1863–7043) (2014)
Löwe, M., König, H., Schulz, C.: Polymorphic single-pushout graph transformation. In: Gnesi and Rensink [9], pp. 355–369
Löwe, M., König, H., Schulz, C., Schultchen, M.: Algebraic graph transformations with inheritance. In: Iyoda, J., de Moura, L. (eds.) SBMF 2013. LNCS, vol. 8195, pp. 211–226. Springer, Heidelberg (2013)
MacNeille, H.M.: Partially ordered sets. Trans. Amer. Math. Soc. 42(3), 416–460 (1937)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2015 Springer International Publishing Switzerland
About this paper
Cite this paper
Löwe, M. (2015). Polymorphic Sesqui-Pushout Graph Rewriting . In: Parisi-Presicce, F., Westfechtel, B. (eds) Graph Transformation. ICGT 2015. Lecture Notes in Computer Science(), vol 9151. Springer, Cham. https://doi.org/10.1007/978-3-319-21145-9_1
Download citation
DOI: https://doi.org/10.1007/978-3-319-21145-9_1
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-21144-2
Online ISBN: 978-3-319-21145-9
eBook Packages: Computer ScienceComputer Science (R0)