Summary
Grammar-like systems for manipulating directed graphs (together with information associated with individual nodes and arcs) have many uses in computing but have not been studied as deeply, elegantly, and fruitfully as classical string grammars or even tree grammars. Satisfactory definitions of the most basic concepts have been elusive. When can the left side of a production be said to occur in a graph ? In replacing an occurrence of the left side of a production by the right side, how is the right side to be connected with the rest of the graph ?
Ehrig, Pfender, and Schneider recently proposed general definitions adequate for a variety of applications and established some fundamental properties of graph grammars. This paper generalizes and sharpens their work so as to cover more applications. The exposition is mathematically rigorous but departs from that of Ehrig, Pfender, and Schneider's paper in ways that will perhaps render the material more accessible to readers who are not algebraists.
Similar content being viewed by others
References
Birkhoff, G., Lipson, J. D.: Heterogeneous algebras. J. Combinatorial Theory 8, 115–133 (1970)
Burge, W. H.: Stream processing functions. IBM J. Res. and Devel., to appear
Ehrig, H., Mueller, F.: Graph grammar formalization and manipulation of data structures. Unpublished abstract, May 1974
Ehrig, H., Pfender, M., Schneider, H. J.: Graph grammars: an algebraic approach. Proc. 14th Annual IEEE Symposium on Switching and Automata Theory, Iowa City, 1973, p. 167–180
Ehrig, H., Tischer, K. W.: Graphs grammars for the specialization of organisms. Proc. Conf. Biologically Motivated Automata Theory, MITRE Corp., McLean (Virginia), June 1974
Goguen, J. A., Thatcher, J. W.: Initial algebra semantics. Proc 15th Annual IEEE Symposium on Switching and Automata Theory, New Orleans, 1974, p. 63–77
Maggiolo-Schettini, A., Rosen, B. K., Strong, H. R.: Procedure linkage optimzation. Working paper. Proc. ACM Symposium on Principles of Programming Languages, Boston, 1973, p. 183–193
Manna, Z., Ness, S., Vuillemin, J.: Inductive methods for proving properties of programs. Comm. ACM 16, 491–502 (1973)
Mitchell, B.: Theory of categories. London-New York: Academic Press 1965
Pareigis, B.: Categories and functors. London-New York: Academic Press 1970
Rosen, B. K.: Tree-manipulating systems and Church-Rosser theorems. J. ACM 20, 160–187 (1973)
Tarjan, R.: Depth-first search and linear graph algorithms. SIAM J. Computing 1, 146–160 (1972)
Vuillemin, J.: Correct and optimal implementations of recursion in a simple programming language. Proc. Fifth Annual ACM Symp. on Theory of Computing, Austin (Tex.), 1973, p. 224–239
Walker, S. A., Strong, H. R.: Characterization of flowchartable recursions. J. Computer and System Sciences 7, 404–447 (1973)
Author information
Authors and Affiliations
Rights and permissions
About this article
Cite this article
Rosen, B.K. Deriving graphs from graphs by applying a production. Acta Informatica 4, 337–357 (1975). https://doi.org/10.1007/BF00289616
Received:
Issue Date:
DOI: https://doi.org/10.1007/BF00289616