On the Concurrent Semantics of Algebraic Graph Grammars

Graph grammars are a powerful model of concurrent and distributed systems which can be seen as a proper extension of Petri nets. Inspired by this correspondence, a truly concurrent semantics has been developed along the years for the algebraic approaches to graph grammars, based on Winskel's style unfolding constructions as well as on suitable notions of processes. A basic role is played in this framework by the study of contextual and inhibitor nets, two extensions of ordinary nets which can be seen as intermediate models between ordinary Petri nets and algebraic graph grammars. This paper presents a survey of these results, discussing in a precise, even if informal way, some of the main technical contributions that made possible the development of such a theory.

[1]  Hartmut Ehrig,et al.  Abstract Graph Derivations in the Double Pushout Approach , 1993, Dagstuhl Seminar on Graph Transformations in Computer Science.

[2]  Francesca Rossi,et al.  Partial Order and Contextual Net Semantics for Atomic and Locally Atomic CC Programs , 1998, Sci. Comput. Program..

[3]  Ugo Montanari,et al.  Modelling Concurrent Accesses to Shared Data via Petri Nets , 1994, PROCOMET.

[4]  Paolo Baldan,et al.  Approximating the Behaviour of Graph Transformation Systems , 2002, ICGT.

[5]  R. Milner,et al.  Bigraphical Reactive Systems , 2001, CONCUR.

[6]  Sérgio Vale Aguiar Campos,et al.  Symbolic Model Checking , 1993, CAV.

[7]  Julian Bradfield CONCUR '96: Concurrency Theory , 1996 .

[8]  Manfred Nagl,et al.  Graph-Grammars and Their Application to Computer Science , 1986, Lecture Notes in Computer Science.

[9]  Robin Milner,et al.  On Observing Nondeterminism and Concurrency , 1980, ICALP.

[10]  Andrea Corradini,et al.  Concurrent Graph and Term Graph Rewriting , 1996, CONCUR.

[11]  Hartmut Ehrig,et al.  An Event Structure Semantics for Graph Grammars with Parallel Productions , 1994, TAGT.

[12]  Hartmut Ehrig,et al.  An Event Structure Semantics for Safe Graph Grammars , 1994, PROCOMET.

[13]  Francesca Rossi,et al.  Contextual nets , 1995, Acta Informatica.

[14]  Glynn Winskel,et al.  Petri Nets, Event Structures and Domains, Part I , 1981, Theor. Comput. Sci..

[15]  Marco Ajmone Marsan,et al.  Application and Theory of Petri Nets 1993 , 1993, Lecture Notes in Computer Science.

[16]  Reiko Heckel,et al.  Algebraic Approaches to Graph Transformation - Part I: Basic Concepts and Double Pushout Approach , 1997, Handbook of Graph Grammars.

[17]  Ugo Montanari,et al.  Bisimulation Equivalences for Graph Grammars , 2002, Formal and Natural Computing.

[18]  Georg Schied On Relating Rewriting Systems and Graph Grammars to Event Structures , 1993, Dagstuhl Seminar on Graph Transformations in Computer Science.

[19]  Paolo Baldan,et al.  Modelling Concurrent Computations: from Contextual Petri Nets to Graph Grammars , 2000 .

[20]  G. Michele Pinna,et al.  Functorial Concurrent Semantics for Petri Nets with Read and Inhibitor Arcs , 2000, CONCUR.

[21]  Hartmut Ehrig,et al.  Parallelism and concurrency in high-level replacement systems , 1991, Mathematical Structures in Computer Science.

[22]  Hartmut Ehrig,et al.  Formal and Natural Computing , 2002, Lecture Notes in Computer Science.

[23]  Kousha Etessami,et al.  Optimizing Büchi Automata , 2000, CONCUR.

[24]  Wolfgang Reisig Petri Nets: An Introduction , 1985, EATCS Monographs on Theoretical Computer Science.

[25]  Wolfgang Reisig,et al.  The Non-sequential Behavior of Petri Nets , 1983, Inf. Control..

[26]  Michael Löwe,et al.  Algebraic Approach to Single-Pushout Graph Transformation , 1993, Theor. Comput. Sci..

[27]  Wolfgang Reisig,et al.  Petri Nets: Applications and Relationships to Other Models of Concurrency , 1986, Lecture Notes in Computer Science.

[28]  Leila Ribeiro,et al.  Parallel composition and unfolding semantics of graph grammars , 1996 .

[29]  Ugo Montanari,et al.  Unfolding of Double-Pushout Graph Grammars is a Coreflection , 1998, TAGT.

[30]  Ugo Montanari,et al.  Coreflective Concurrent Semantics for Single-Pushout Graph Grammars , 2002, WADT.

[31]  Ugo Montanari,et al.  Unfolding and Event Structure Semantics for Graph Grammars , 1999, FoSSaCS.

[32]  Dana S. Scott,et al.  Outline of a Mathematical Theory of Computation , 1970 .

[33]  José Meseguer,et al.  Process versus Unfolding Semantics for Place/Transition Petri Nets , 1996, Theor. Comput. Sci..

[34]  Maciej Koutny,et al.  Invariant Semantics of Nets with Inhibitor Arcs , 1991, CONCUR.

[35]  J. Davenport Editor , 1960 .

[36]  Francesca Rossi,et al.  Graph Processes , 1996, Fundam. Informaticae.

[37]  César Fernández Non-sequential Processes , 1986, Advances in Petri Nets.

[38]  Alexandre Yakovlev,et al.  Unfolding and Finite Prefix for Nets with Read Arcs , 1998, CONCUR.

[39]  Martin Wirsing,et al.  Extraction of Structured Programs from Specification Proofs , 1999, WADT.

[40]  Ursula Goltz,et al.  Equivalence Notions for Concurrent Systems and Refinement of Actions (Extended Abstract) , 1989, MFCS.

[41]  Glynn Winskel,et al.  Event Structures , 1986, Advances in Petri Nets.

[42]  Walter Vogler Efficiency of Asynchronous Systems and Read Arcs in Petri Nets , 1997, ICALP.

[43]  James L. Peterson,et al.  Petri net theory and the modeling of systems , 1981 .

[44]  Robin Milner,et al.  Theories for the Global Ubiquitous Computer , 2004, FoSSaCS.

[45]  B. König,et al.  Verifying Finite-State Graph Grammars: An Unfolding-Based Approach , 2004, CONCUR.

[46]  Hartmut Ehrig,et al.  Refinements of Graph Transformation Systems via Rule Expressions , 2000 .

[47]  Hartmut Ehrig,et al.  Tutorial introduction to the algebraic approach of graph grammars , 1986, Graph-Grammars and Their Application to Computer Science.

[48]  Vincent Danos,et al.  Reversible Communicating Systems , 2004, CONCUR.

[49]  Maciej Koutny,et al.  Semantics of Inhibitor Nets , 1995, Inf. Comput..

[50]  Hartmut Ehrig,et al.  Graph Transformations in Computer Science , 1994, Lecture Notes in Computer Science.

[51]  Ugo Montanari,et al.  Contextual Petri Nets, Asymmetric Event Structures, and Processes , 2001, Inf. Comput..

[52]  G. Michele Pinna,et al.  Domain and event structure semantics for Petri nets with read and inhibitor arcs , 2004, Theor. Comput. Sci..

[53]  Robert de Simone,et al.  CONCUR'98 Concurrency Theory , 1998, Lecture Notes in Computer Science.

[54]  Andrea Corradini,et al.  A Static Analysis Technique for Graph Transformation Systems , 2001, CONCUR.

[55]  Pawel Sobocinski,et al.  Adhesive Categories , 2004, FoSSaCS.

[56]  Tilak Agerwala,et al.  Comments on capabilities, limitations and “correctness” of Petri nets , 1973, ISCA '73.

[57]  Søren Christensen,et al.  Coloured Petri Nets Extended with Place Capacities, Test Arcs and Inhibitor Arcs , 1992, Application and Theory of Petri Nets.

[58]  Ugo Montanari,et al.  On the semantics of place/transition Petri nets , 1997, Mathematical Structures in Computer Science.

[59]  Ugo Montanari,et al.  Concatenable Graph Processes: Relating Processes and Derivation Traces , 1998, ICALP.

[60]  Kenneth L. McMillan,et al.  Symbolic model checking , 1992 .

[61]  César Fernández,et al.  Non-sequential Processes , 1986, Advances in Petri Nets.

[62]  C. Petri Kommunikation mit Automaten , 1962 .

[63]  Grzegorz Rozenberg,et al.  Handbook of Graph Grammars and Computing by Graph Transformations, Volume 1: Foundations , 1997 .

[64]  Reiko Heckel,et al.  Algebraic Approaches to Graph Transformation - Part II: Single Pushout Approach and Comparison with Double Pushout Approach , 1997, Handbook of Graph Grammars.