Amalgamation of graph transformations with applications to synchronization

  • Paul Boehm
  • Harald-Reto Fonio
  • Annegret Habel
Colloquium On Trees In Algebra And Programming Graph Grammars And Formal Languages
Part of the Lecture Notes in Computer Science book series (LNCS, volume 185)


In the present paper we generalize the well-known PARALLELISM THEOREM for graph derivations to the AMALGAMATION THEOREM. In this theorem the assumption of ‘parallel independence’ is dropped. For each pair of productions together with a relational production (allowing productions to be associated with each other) we construct a single ‘amalgamated’ production. The AMALGAMATION THEOREM states that graph derivations which respect the given associations can be amalgamated to a single derivation via the ‘amalgamated’ production.

The amalgamation mechanism can be used to handle synchronization phenomena. The amalgamation concept is applied to synchronization of graph manipulations in a simplified railway control system as well as in GDS, a graph grammar formalism for distributed systems.


Relational Production Direct Derivation Graph Transformation Graph Grammar Bijective Correspondence 


  1. /AM 75/.
    M.A. Arbib, E.G. Manes: Arrows, Structures, and Functors, Academic Press, New YorkGoogle Scholar
  2. /BFH 84/.
    P. Boehm, H. Fonio, A. Habel: On Amalgamation of Graph Manipulations; in preparationGoogle Scholar
  3. /CER 79/.
    V. Claus, H. Ehrig, G. Rozenberg, (eds.): Graph Grammars and Their Application to Computer Science and Biology, LNCS 73 (1979)Google Scholar
  4. /CDM 84/.
    A. Corradini, P. Degano, U. Montanari: Specifying Highly Concurrent Data Structure Manipulation; Comp. Sci. Dept., Univ. of Pisa, Pisa, April 1984Google Scholar
  5. /CM 83/.
    I. Castellani, U. Montanari: Graph Grammars for Distributed Systems, LNCS 153, 20–38 (1983)Google Scholar
  6. /DM 83/.
    P. Degano, U. Montanari: A Model of Distributed Systems Based on Graph Rewriting, Note Cnet 111, Comp. Sci. Dept., Univ. of Pisa, Pisa 1983, submitted for publicationGoogle Scholar
  7. /Eh 79/.
    H. Ehrig: Introduction to the Algebraic Theory of Graph Grammars, LNCS 73 (1979), 1–69Google Scholar
  8. /Eh 83/.
    — Aspects of Concurrency in Graph Grammars, LNCS 153 (1983), 58–81Google Scholar
  9. /EHR 83/.
    H. Ehrig, A. Habel, B.K. Rosen: Concurrent Transformations of Structures: From Graphs to Relational Data Structures; TU Berlin, FB 20, Technical Report No. 83-01, January 1983Google Scholar
  10. /EK 80/.
    H. Ehrig, H.-J. Kreowski: Applications of Graph Grammar Theory to Consistency, Synchronization and Scheduling in Data Base Systems, Inform. Syst., Vol. 5, pp. 225–238, Pergamon Press Ltd., 1980CrossRefGoogle Scholar
  11. /ENR 83/.
    H. Ehrig, M. Nagl, G. Rozenberg (eds.): Graph Grammars and Their Application to Computer Science, LNCS 153 (1983)Google Scholar
  12. /EPS 73/.
    H. Ehrig, M. Pfender, H.J. Schneider: Graph-Grammars: An Algebraic Approach, Proc. of the IEEE Conf. on Automata and Switching Theory, Iowa City 1973, pp. 167–180Google Scholar
  13. /ER 79a/.
    H. Ehrig, B.K. Rosen: Parallelism and Concurrency of Graph Manipulations, Theoret. Comp. Sci. 11 (1980), pp. 247–275CrossRefGoogle Scholar
  14. /ER 79b/.
    — Decomposition of Graph Grammar Productions and Derivations, LNCS 73 (1979), pp. 192–205Google Scholar
  15. /Fo 84/.
    H.-R. Fonio: Amalgamation of Graph Transformations with Application to Synchronization in Distributed Systems, to appear as Techn. Report, TU Berlin, FB 20Google Scholar
  16. /Ha 80/.
    A. Habel: Concurrency in Graph-Grammatiken, TU Berlin, FB 20, Technical Report No. 80–11, March 1980Google Scholar
  17. /HBR 81/.
    C.A.R. Hoare, S.D. Brookes, A.W. Roscoe: A Theory of Communicating Sequential Processes, Techn. Monograph PRG-16, Progr. Research Group, Oxford Univ., 1981Google Scholar
  18. /JKRE 82/.
    D. Janssens, H.-J. Kreowski, G. Rozenberg, H. Ehrig: Concurrency of Node-label Controlled Graph Transformations, Techn. Report No. 82-38, Univ. of Antwerp, U.I.A. (1982)Google Scholar
  19. /Ku 80/.
    H.T. Kung: The Structures of Parallel Algorithms, Advances in Computers, Vol. 19, 65–108, Academic Press Inc. 1980Google Scholar
  20. /MW 82/.
    B. Mahr, A. Wilharm: Graph Grammars as a Tool for Description in Computer Processed Control: A Case Stude, Proc. 8th Conf. on Graphtheoretic Concepts in Comp. Sci. (WG'82), 165–176 (1982)Google Scholar
  21. /Mi 83/.
    R. Milner: Calculi for Synchrony and Asynchrony, Theoret. Comp. Sci. 25 (1983), pp. 267–310Google Scholar
  22. /Na 79/.
    M. Nagl: A Tutorial and Bibliographical Survey on Graph Grammars, LNCS 73 (1979), 70–126Google Scholar
  23. /Pe 80/.
    C.A. Petri: Concurrency, Proc. Net Theory and Applications, LNCS 84 (1980), 251–260Google Scholar
  24. /Ro 75/.
    B.K. Rosen: Deriving Graphs from Graphs by Applying a Production, Acta Informatica, 4 (1975), pp. 337–357CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1985

Authors and Affiliations

  • Paul Boehm
    • 1
  • Harald-Reto Fonio
    • 1
  • Annegret Habel
    • 1
  1. 1.Technische Universität BerlinBerlin 10

Personalised recommendations