Double-Pullback Transitions and Coalgebraic Loose Semantics for Graph Transformation Systems

The classical algebraic approach to graph transformation is a mathematical theory based on categorical techniques with several interesting applications in computer science. In this paper, a new semantics of graph transformation systems (in the algebraic, double-pushout (DPO) approach) is proposed in order to make them suitable for the specification of concurrent and reactive systems. Classically, a graph transformation system comes with a fixed behavioral interpretation. Firstly, all transformation steps are intended to be completely specified by the rules of the system, that is, there is an implicit frame condition: it is assumed that there is a complete control about the evolution of the system. Hence, the interaction between the system and its (possibly unknown) environment, which is essential in a reactive system, cannot be modeled explicitly. Secondly, each sequence of transformation steps represents a legal computation of the system, and this makes it difficult to model systems with control. The first issue is addressed by providing graph transformation rules with a loose semantics, allowing for unspecified effects which are interpreted as activities of the environment. This is formalized by the notion of double-pullback transitions, which replace (and generalize) the well-known double-pushout diagrams by allowing for spontaneous changes in the context of a rule application. Two characterizations of double-pullback transitions are provided: the first one describes them in terms of extended direct DPO derivations, and the second one as incomplete views of parallel or amalgamated derivations. The issue of constraining the behavior of a system to transformation sequences satisfying certain properties is addressed instead by introducing a general notion of logic of behavioral constraints, which includes instances like start graphs, application and consistency conditions, and temporal logic constraints. The loose semantics of a system with restricted behavior is defined as a category of coalgebras over a suitable functor. Such category has a final object which includes all finite and infinite transition sequences satisfying the constraints.

[1]  H. Ehrig Compugraph Ii: a Survey of Research Goals and Main Results , 1995 .

[2]  Vladimiro Sassone,et al.  Characterizing Behavioural Congruences for Petri Nets , 1995, CONCUR.

[3]  Reiko Heckel,et al.  Ensuring consistency of conditional graph rewriting - a constructive approach , 1995, SEGRAGRA.

[4]  José Meseguer,et al.  Petri Nets Are Monoids , 1990, Inf. Comput..

[5]  Horst Reichel,et al.  An approach to object semantics based on terminal co-algebras , 1995, Mathematical Structures in Computer Science.

[6]  Gordon D. Plotkin,et al.  Towards a mathematical operational semantics , 1997, Proceedings of Twelfth Annual IEEE Symposium on Logic in Computer Science.

[7]  Hartmut Ehrig,et al.  Pragmatic and Semantic Aspects of a Module Concept for Graph Transformation Systems , 1994, TAGT.

[8]  David Harel,et al.  Statecharts: A Visual Formalism for Complex Systems , 1987, Sci. Comput. Program..

[9]  Hartmut Ehrig,et al.  Introduction to the Algebraic Theory of Graph Grammars (A Survey) , 1978, Graph-Grammars and Their Application to Computer Science and Biology.

[10]  Annegret Habel,et al.  Graph Transformation for Specification and Programming , 1999, Sci. Comput. Program..

[11]  Reiko Heckel,et al.  A view-oriented approach to system modelling based on graph transformation , 1997, ESEC '97/FSE-5.

[12]  C. A. R. Hoare,et al.  An axiomatic basis for computer programming , 1969, CACM.

[13]  Francesco Parisi-Presicce,et al.  Transformations of Graph Grammars , 1994, TAGT.

[14]  MeseguerJosé Conditional rewriting logic as a unified model of concurrency , 1992 .

[15]  Reiko Heckel,et al.  Open graph transformation systems: a new approach to the compositional modelling of concurrent and reactive systems , 1998 .

[16]  J. Michael Spivey,et al.  Understanding Z : A specification language and its formal semantics , 1985, Cambridge tracts in theoretical computer science.

[17]  Michael Barr,et al.  Terminal Coalgebras in Well-Founded Set Theory , 1993, Theor. Comput. Sci..

[18]  Hartmut Ehrig,et al.  Categorical principles, techniques and results for high-level-replacement systems in computer science , 1993, Appl. Categorical Struct..

[19]  Annegret Habel,et al.  Amalgamation of Graph Transformations: A Synchronization Mechanism , 1987, J. Comput. Syst. Sci..

[20]  Hartmut Ehrig,et al.  How to Transfer Concepts of Abstract Data Types to Petri Nets? , 1997, Bull. EATCS.

[21]  Reiko Heckel,et al.  Graph Grammars with Negative Application Conditions , 1996, Fundam. Informaticae.

[22]  Andy Schürr,et al.  Graph Grammar Engineering with PROGRES , 1995, ESEC.

[23]  Reiko Heckel,et al.  Structured Transition Systems as Lax Coalgebras , 1998, CMCS.

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

[25]  Hartmut Ehrig,et al.  Graph-Grammars: An Algebraic Approach , 1973, SWAT.

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

[27]  Azriel Rosenfeld,et al.  Web Grammars , 1969, IJCAI.

[28]  Zohar Manna,et al.  The Temporal Logic of Reactive and Concurrent Systems , 1991, Springer New York.

[29]  G. Engels,et al.  Graph Transformation for Speciication and Programming , 1996 .

[30]  Reiko Heckel,et al.  Classification and comparison of module concepts for graph transformation systems , 1999 .

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

[32]  José Meseguer,et al.  Conditioned Rewriting Logic as a United Model of Concurrency , 1992, Theor. Comput. Sci..

[33]  Gabriele Taentzer,et al.  The AGG approach: language and environment , 1999 .

[34]  Joost Engelfriet,et al.  Node Replacement Graph Grammars , 1997, Handbook of Graph Grammars.

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

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

[37]  Bart Jacobs,et al.  Inheritance and Cofree Constructions , 1996, ECOOP.

[38]  A. Schfürr,et al.  Programmed graph replacement systems , 1997 .

[39]  Hans-Jörg Kreowski,et al.  On the Interleaving Sematics of Transformation Units - A Step into GRACE , 1994, TAGT.

[40]  Hartmut Ehrig,et al.  Fundamentals of Algebraic Specification 1: Equations and Initial Semantics , 1985 .

[41]  Reiko Heckel,et al.  Compositional Verification of Reactive Systems Specified by Graph Transformation , 1998, FASE.

[42]  Jan J. M. M. Rutten,et al.  Universal coalgebra: a theory of systems , 2000, Theor. Comput. Sci..

[43]  Reiko Heckel,et al.  Integrating the Specification Techniques of Graph Transformation and Temporal Logic , 1997, MFCS.

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

[45]  Reiko Heckel,et al.  Cooperability in Train Control Systems: Specification of Scenarios using Open Nets , 2001, Trans. SDPS.

[46]  Reiko Heckel,et al.  Horizontal and vertical structuring of typed graph transformation systems , 1996, Mathematical Structures in Computer Science.

[47]  Ugo Montanari,et al.  Separable Graphs, Planar Graphs and Web Grammars , 1970, Inf. Control..

[48]  H. Ehrig,et al.  Loose Semantics and Constraints for Graph Transformation Systems , 1997 .

[49]  Hartmut Ehrig,et al.  The Category of Typed Graph Grammars and its Adjunctions with Categories , 1994, TAGT.

[50]  Cliff B. Jones,et al.  Systematic software development using VDM , 1986, Prentice Hall International Series in Computer Science.

[51]  Michel Bauderon A Category-Theoretical Approach to Vertex Replacement: The Generation of Infinite Graphs , 1994, TAGT.