Abstract.
An operation of concatenation is defined for graphs. This allows strings to be viewed as expressions denoting graphs, and string languages to be interpreted as graph languages. For a class \(K\) of string languages, \({\rm Int}(K)\) is the class of all graph languages that are interpretations of languages from \(K\). For the classes REG and LIN of regular and linear context-free languages, respectively, \({\rm Int}({\rm REG}) = {\rm Int}({\rm LIN})\). \({\rm Int}({\rm REG})\) is the smallest class of graph languages containing all singletons and closed under union, concatenation and star (of graph languages). \({\rm Int}({\rm REG})\) equals the class of graph languages generated by linear HR (= Hyperedge Replacement) grammars, and \({\rm Int}(K)\) is generated by the corresponding \(K\)-controlled grammars. Two characterizations are given of the largest class \(K'\) such that \({\rm Int}(K') = {\rm Int}(K)\). For the class CF of context-free languages, \({\rm Int}({\rm CF})\) lies properly inbetween \({\rm Int}({\rm REG})\) and the class of graph languages generated by HR grammars. The concatenation operation on graphs combines nicely with the sum operation on graphs. The class of context-free (or equational) graph languages, with respect to these two operations, is the class of graph languages generated by HR grammars.
Similar content being viewed by others
Author information
Authors and Affiliations
Additional information
Received 16 October 1995 / 18 September 1996
Rights and permissions
About this article
Cite this article
Engelfriet, J., Joris Vereijken, J. Context-free graph grammars and concatenation of graphs. Acta Informatica 34, 773–803 (1997). https://doi.org/10.1007/s002360050106
Issue Date:
DOI: https://doi.org/10.1007/s002360050106