• No results found

Final Report. ESPRIT Basic Research Working Group No edited by. H. Ehrig and G. Taentzer

N/A
N/A
Protected

Academic year: 2022

Share "Final Report. ESPRIT Basic Research Working Group No edited by. H. Ehrig and G. Taentzer"

Copied!
50
0
0

Loading.... (view fulltext now)

Full text

(1)

ESPRIT Basic Research Working Group No. 7183

Computing by Graph Transformation II (COMPUGRAPH II)

editedby

H. Ehrigand G. Taentzer

March1996

(2)

Contents

1 Introduction and Survey 2

1.1 The COMPUGRAPH II Working Group . . . 2

1.2 Aims, Paradigms and Research Areas . . . 3

1.3 Survey of Central Contributions and Results . . . 4

1.3.1 Foundations . . . 4

1.3.2 Concurrency . . . 5

1.3.3 Graph Transformation for Speci cation and Programming . . . 7

2 Summary of COMPUGRAPH II Activities 9

2.1 The COMPUGRAPH II Working Group . . . 9

2.2 Workshops . . . 10

2.3 Graph Grammar Handbook . . . 11

2.4 BrAaBeLei/GRACE . . . 11

2.5 Deliverables . . . 11

2.6 COMPUGRAPH Follow Up Projects and Activities . . . 12

3 Scienti c Contributions and Results 13

3.1 Foundations . . . 13

3.1.1 Algebraic Approach to Graph Transformation . . . 13

3.1.2 Context-free Graph Grammars and Graph Transductions . . . 15

3.1.3 Non-context-free Speci cation Tools . . . 19

3.1.4 2-Structures . . . 20

3.1.5 Graph Rewriting Systems . . . 21

3.2 Concurrency . . . 23

3.2.1 Theory of parallelism, concurrency, and distribution of Graph Grammars 23 3.2.2 Graph rewriting for specifying concurrent and distributed systems, and relationship with other formalisms . . . 25

3.3 Graph Transformation for Speci cation and Programming . . . 28

3.3.1 Languages Based on Graph Transformation . . . 28

3.3.2 Term Graph Rewriting . . . 30

3.3.3 Application to Language De nitions . . . 32

3.3.4 Various Applications . . . 32

4 References 35

(3)

Introduction and Survey

The research area of graph grammars or graph transformations is a discipline of computer science which dates back to the early seventies. Methods, techniques, and results from the area of graph transformations have already been studied and applied in many elds of com- puter science such as formal language theory, pattern recognition and generation, compiler construction, software engineering, concurrent and distributed systems modeling, database design and theory, logical and functorial programming, AI etc.

This wide applicability is due to the fact that graphs are a very natural way of explaining complex situations on an intuitive level. Hence, they are used in computer science almost everywhere, e.g. as data and control ow diagrams, entity relationship diagrams, Petri nets, visualization of software and hardware architectures, evolution diagrams of nondeterministic processes, SADT diagrams, and many more. Like the \token game" for Petri nets, a graph transformation brings dynamic to all these descriptions, since it can describe the evolution of graphical structures. Therefore, graph transformations become attractive as a \programming paradigm" for complex-structured software and graphical interfaces. In particular, graph rewriting is promising as a comprehensive framework in which the transformation of all these very di erent structures can be modeled and studied in a uniform way.

1.1 The COMPUGRAPH II Working Group

Inspired by this observation, some of the most active reseach teams on graph grammars and graph transformation in Europe have established the ESPRIT Basic Research Working Group

\Computing by Graph Transformation (COMPUGRAPH)". The rst phase of this project, COMPUGRAPH I, was from March 1, 1989, until February 29, 1992. It has been followed by COMPUGRAPH II from October 1, 1992 until March 31, 1996.

The COMPUGRAPH II Working Group consists of the following partners:

 Technical University of Berlin (D), represented by Prof. H. Ehrig

 University of Bordeaux (F), represented by Prof. B. Courcelle

 University of Bremen (D), represented by Prof. H.-J. Kreowski

 University of Brussels/Antwerp (B), represented by Prof. D. Janssens University of Leiden (NL), represented by Prof. G. Rozenberg

(4)

 University of Pisa (I), represented by Prof. U. Montanari

Additionally, there are close links to the European Cooperators of COMPUGRAPH II and other ESPRIT Basic Research Actions, especially COMPASS and SEMAGRAPH, and to international experts in the area of graph transformations all over the world.

1.2 Aims, Paradigms and Research Areas

Computing originally was done on the level of the \von Neumann Machine" which is based on machine instructions and registers. This kind of low level computing was considerably improved by assembler and high level imperative languages. From the conceptual - but not yet from the eciency point of view these languages were further improved by functional and logical programming languages. This newer kind of computing is mainly based on term rewriting, which - in the terminology of graphs and graph transformations - can be consid- ered as a concept of tree transformations. Trees, however, don't allow sharing of common substructures, which is one of the main reasons for eciency problems concerning functional and logical programs. This leads to consider graphs rather than trees as the fundamental structure of computing.

The novelty of our approach is to advocate graph transformations for the whole range of computing. Our concept of Computing by Graph Transformations is not limited to pro- gramming but includes also speci cation and implementation by graph transformations, as well as graph algorithms and computational models and computer architectures for graph transformations.

Thus it is supposed to extend current graph grammar techniques in view of speci cation, programming and implementation concepts. One of the main objections against graphs as fundamental data structure is the high complexity of most graph algorithms (typically NP- complete). Most recently, however, it was shown how to use the theory of graph grammars to reduce the complexity of graph algorithms from intractable (NP-complete) to tractable (polynomial) and even ecient (linear) cases.

On the other hand the eciency of imperative programming techniques in contrast to functional and logical ones is the reason - as pointed out above - that most of our computers are still based on the von Neumann architecture with its concept of references and pointers.

Eciency of many well-known algorithms is based on that capability. The new idea is to use the well-known concept of references and pointers to allow ecient representation and trans- formation of quite arbitrary graphs and to overcome the restrictions of tree transformations which are mainly used up to now.

Combining these aspects there is really a good chance for a breakthrough in several areas of computer sciences using graph transformations.

The main research areas of COMPUGRAPH II are



Foundations



Concurrency



Graph Transformation in Speci cation and Programming

(5)

Besides in this nal report, technical details and explicit references of the corresponding papers, about 200, published within COMPUGRAPH II, we refer to the rst three interim reports [EK94a], [EK94b] and [ET95]. For a summary of the results of the rst phase of COMPUGRAPH we refer to the surveys [EL91] and [EL93c].

1.3 Survey of Central Contributions and Results

The main research goals and results in the three areas of COMPUGRAPH II will be summa- rized in the following paragraphs.

1.3.1 Foundations

The main research goal in this area is a comparative study, uni cation and the strengthening of the concepts developed in the di erent approaches, especially the algebraic, algorithmic, logical and the hyperedge replacement approach. This should lead to a much better under- standing of common goals and results of di erent approaches. Moreover, the research on foundations should provide a uniform and solid basis for the investigations in the research areas concurrency and graph transformations for speci cation and programming. The main results in the di erent areas are the following:

Algebraic Approaches

The algebraic approach developed in the 70's and 80's is based on two pushout constructions in the category of graphs and total graph morphisms. It is now called double-pushout approach, short DPO-approach, in contrast to the single-pushout approach, short SPO-approach, which is based on a single-pushout in the category of graphs and partial graph morphisms.

While the foundations of the DPO-approach were almost stable in the rst phase of COMPUGRAPH signi cant new results have been obtained in cooperation of the groups in Pisa and Berlin concerning suitable notions for abstract graph derivations based on standard isomorphisms and typed graph grammars [CEL+94a].

Concerning the SPO-approach the basic theory has been developed by M. Lowe in his PhD-thesis and subsequent publications in the rst phase of COMPUGRAPH [Low93]. In the second phase signi cant extensions have been made by the Berlin and Erlangen groups concerning attributed graphs, which can be considered as dynamic abstract data types, and graph transformations with application and consistency conditions [HHT96], which are im- portant in view of speci cation by graph transformation.

Categorical Approaches

The theory of high-level-replacement systems, short HLR-systems, is a categorical generalization of the DPO-approach which was developed in the rst phase by the groups in Berlin and Bremen in cooperation with F. Parisi-Presicce (Rome) in order to unify DPO-approaches based on di erent kinds of graphs and structures [EHKP92]. In the second phase theory and applications of HLR-systems were extended in various ways, especially to include canonical derivation sequences in the theory [EKT94] and transforma- tions of algebraic speci cations and algebraic high-level nets in the applications. Moreover, the HLR-approach was extended to the SPO-approach in the second phase [EL93a] An in- teresting notion of categorical graph grammars was developed by H. J. Schneider (Erlangen) [Sch93].

(6)

Context Free Graph Grammars and Extensions

Several interesting results concern- ing uni cation of context-free and non-context-free approaches for graph grammars have been obtained already by the groups in Bordeaux, Bremen and Leiden in the rst phase of COM- PUGRAPH. An excellent survey of hyperedge-replacement (HR) is given in the PhD-thesis by A. Habel (Bremen/Hildesheim) [Hab92a]. In the second phase the relationship between hyperedge- and vertex-replacement has been studied in more detail by B. Courcelle (Bor- deaux) [Cou93a] and an interesting extension of HR-grammars, called collage grammars, was studied in the Bremen group, where important decidability results and interesting applica- tions to fractal geometry were obtained [HKT93]. Moreover, the extension of context-free graph grammars using application conditions, mentioned in 2.1, allows to consider rules with positive and negative context conditions which increase their expressive power.

Logical Approach

In the rst phase B. Courcelle has used already monadic second-order logic as a formal language to express graph properties and to characterize graph transductions [Cou94d]. The relationship between graph grammars and tree transducers has been studied by J. Engelfriet (Leiden) [Eng94]. In the second phase this was extended to specify also non-context-free sets of graphs and hypergraphs and to de ne linear orders on graphs with applications to traces and modular decomposition of graphs [Cou94b].

New Approaches (2-Structures and Graph Relabeling)

Two interesting new ap- proaches have been developed in the second phase: The concept of 2-structures, a variant of graphs, developed by G. Rozenberg (Leiden), in cooperation with Boulder and Turku, has been extended to transformations of 2-structures [ER95] with applications to networks, communication and texts. The concept of graph relabeling systems, developed in Bordeaux, allows to study graph transformations without changing the underlying structure but only the labeling of the graph [LMS93].

1.3.2 Concurrency

The main research goal in this area is a high-level concept for concurrent and distributed computation based on graph transformations which is suitable to express various kinds of semantics of concurrent computations as well as speci cations of distributed systems based on graph transformations. The main results in this area are the following:

Truly Concurrent Semantics

In a joint research activity the Berlin and Pisa groups have started to provide graph grammars with a truly concurrent semantics in terms of event structures, similar to the corresponding construction for Petri nets. The ultimate goal for this research is to make graph grammars even a better candidate as model for the speci - cation of concurrent and distributed systems. In particular the Pisa group has developed a notion of \graph processes" generalizing Golz-Reisig net processes [CMR96]. The event struc- ture construction has been obtained for \safe" graph grammars (avoiding automorphisms of graphs) in a rst step [CELMR94] and was then extended to general \consuming" grammars, i.e. each graph grammar rule deletes at least one item. The event structure construction is based on the construction of abstract graph derivations (2.1) in contrast to a corresponding construction by Schied (Erlangen) based on concrete representations of graphs [Schi94]. It remains open to extend the construction to become an adjunction between the categories of graph grammars and event structures similar to the case of Petri nets.

(7)

Canonical Parallel Derivations

Already in the late 70's H.-J. Kreowski has shown in his PhD-thesis existence and uniqueness of canonical derivations for graph grammars in the DPO-approach with parallel productions. Canonical derivations are the graph grammati- cal counterpart to leftmost derivations in Chomsky grammars. Within COMPUGRAPH II the groups in Berlin and Bremen were able to generalize this result to HLR-systems (2.2) including graphs, hypergraphs, structures, algebraic speci cations and algebraic high-level nets [EKT94]. Moreover, H.-J. Kreowski has presented an axiomatic approach to canonical derivation sequences [Kre94].

Parallel and Distributed Graph Grammars and Synchronization Mechanisms

Par- allel and distributed graph grammars have been developed in the algebraic approach already in the 70's and 80's. Within COMPUGRAPH II a systematic study of di erent kinds of these graph grammars was done by G. Taentzer (Berlin) showing exactly how these approaches are related to each other and how they are able to express di erent synchronization mechanisms [Tae96].

Extended Structure Morphism Systems

Motivated by a notion of Actor grammars [Jan93, JLR93] which has been developed in Leiden in the late 80's in order to model ac- tor systems by graph grammars the new concept of extended structure morphisms, short ESM-systems, has been developed by D. Janssens within COMPUGRAPH II [Jan94]. In this approach the basic objects, called computation structures, are not states represented by graphs - as usual in other graph transformation approaches - but rewriting processes, while system states can be considered as special cases. In the theory of ESM-systems the communication of processes corresponds to a simple pushout construction. As main results a compositional semantics for ESM-systems is given and it is shown how classical Actor systems and Petri nets as well as new interesting variants of them can be obtained as special cases of ESM-systems.

Graph Transformations and Other Models of Concurrency

As pointed out in 3.1 and 3.4 already, graph transformations resp. ESM-systems allow to model Actor systems and Petri nets, which are well-known models of concurrency. Actor systems have also been modeled by M. Kor by algebraic actor graph grammars based on equationally de ned graph struc- ture transformation in the SPO-approach [Kor94a]. In the rst phase of COMPUGRAPH it was already shown by the Pisa group how to represent logic programming by context-free graph grammars [CR93]. This idea was extended in the second phase by modeling concurrent constraint programming using graph transformations in the DPO-approach with context rep- resented by the interface graph [MR93]. This idea was applied to Petri nets leading to the new notion of contextual nets [MR94]. Another interesting application of graph transformations to Petri nets is to consider place/transition, colored, or algebraic high-level nets as objects in the sense of high-level replacement systems (2.2) which allows to transform the dynamic structure of di erent kinds of Petri nets in a rule-based way. It was also shown by the Berlin group that the relationship between graph grammars and place transition nets can be lifted to attributed graph grammars and algebraic high-level nets. Finally it was shown by the Pisa group that state charts can be modeled by graph grammars such that dynamic changes of con gurations of state charts correspond to graph transformations [MSP94].

(8)

1.3.3 Graph Transformation for Speci cation and Programming

In the rst phase of COMPUGRAPH executability of algebraic speci cations using graph transformations was one of the main aims. It turned out that jungle evaluation, studied by the group in Bremen, and term graph rewriting, investigated in the ESPRIT Basic Research Action SEMAGRAPH, were closely related to each other and both are very useful for ecient execution of algebraic speci cations on one hand and functional programs on the other hand.

In the second phase of COMPUGRAPH the aim is even broader: We want to justify the new paradigm that computing by graph transformation is a fundamental concept for speci cation and programming on di erent levels of abstraction in the software development process. This includes in addition to term graph rewriting the integration of graph transformations, graph rewriting languages for speci cation of programs and software systems modularity concepts for graph transformation systems as well as tools and applications. The main results in these areas are the following:

Term Graph Rewriting

In the rst phase of COMPUGRAPH and SEMAGRAPH it has been shown already that functional expressions and logical formulas represented by graphs and hypergraphs allow sharing of common subexpressions or subformulas and hence an ef- cient evaluation using graph and hypergraph rewriting. Main results of the theory for the evaluation of functional expressions by hypergraph rewriting based on the algebraic DPO- approach are summarized in the PhD-thesis by D. Plump (Bremen) [Plu93b]. In the second phase of COMPUGRAPH these results have been extended by the groups in Bremen, Pisa and Berlin taking into account also folding steps for the identi cation of common subex- pressions, memoization, and implementation technique known from function programming, narrowing, which combines conditional term rewriting with uni cation, graph rewriting, and critical pair analysis in analogy to well-known results in term rewriting [Plu93a].

Graph Rewrite Systems and Languages

In the rst phase of COMPUGRAPH the Berlin group has developed the AGG-System, an implementation of algebraic graph rewriting based on the SPO-approach (2.1). In the second phase this AGG-system was documented and applied [LB93] and a system called BIZARR to visualize collage and other grammars is under development in Bremen.

The graph rewriting language PROGRES has been developed by A. Schurr (Aachen) extending the well-known IPSEN-approach, initiated by M. Nagl and his group in the 80's, for software development using graph transformations based on the algorithmic approach.

IPSEN and PROGRES have been successful already in several practical applications, but do not include parallelism and modularity [Sch94].

A new graph and rule centered language, called GRACE, is in an early stage of develop- ment in the second phase of COMPUGRAPH by the group in Bremen in cooperation with Aachen, Berlin and Leiden [Kre95]. The main idea of GRACE is that of structured program- ming with graph transformation units which are independent of a speci c graph grammar approach.

Modularity of Graph Transformation Systems

A rst kind of modularity for graph transformation systems is the notion of distributed graph transformations studied in the late 80's for the DPO-approach (2.1) and in the rst phase of COMPUGRAPH for the SPO- approach (3.3). Within COMPUGRAPH II modularity was considered to be one of the

(9)

important aims and di erent modularity concepts based on distributed graph transformations, the inheritance concept from object-oriented programming, and an import-export-concept similar to algebraic module speci cations is under development by the groups in Leiden, Aachen and Berlin [EE93]. Moreover, transformation units in the sense of GRACE (4.2) can be considered as a modularity concept in its own right or as integrated part of other concepts.

An important aspect for modularity is also the integration of graph types and typed graph transformations which are studied by the groups in Leiden and Berlin in cooperation with Aachen. But these are only rst attempts in order to obtain suitable modularity concepts for graph transformation systems and languages. Another aspect is the combination of graph transformation systems using categorical methods studied by the groups in Pisa and Berlin.

Applications to Languages and Software Systems

As pointed out in 4.1 and 4.2 already, graph transformations have been used successfully for speci cation and implemen- tation of functional languages and software systems before and within the rst phase of COMPUGRAPH. Within COMPUGRAPH II several new applications have been studied.

The most important language applications are a hybrid query language for databases and a visual language for parsing of pictures by the Leiden group [AE94], and the semantics of the object-based database language TROLL light by A. Wagner (Berlin) in cooperation with M.

Gogolla (Braunschweig/Bremen) [WG96]. Concerning applications of graph transformations for speci cation of software systems let us mention main aspects of the speci cation of the AGG-system using parallel graph transformation systems and of the software development process using di erent kinds of graph transformations. A \3D-Model of Software Engineering"

using PROGRES and a \G2L-System" for the design of modular arti cial neural networks was developed by the group in Leiden, a \Character Recognition System" using attributed graph transformations by G. Valiente (Palma de Mallorca), a revision control system [Wes91]

and CIM applications by the group in Aachen.

(10)

Summary of COMPUGRAPH II Activities

Due to its character as a working group, the COMPUGRAPH project has supported the cooperation of the partners, European cooperators and international experts. Research on graph transformation has been intensi ed by several workshops, further meetings of the part- ners, guest lectures of the European cooperators and international experts and joint work of the project teams.

2.1 The COMPUGRAPH II Working Group

The COMPUGRAPH II Working Group consists of the following team members (team leaders are printed in italics) and European cooperators.

Berlin:

Prof. Dr. H. Ehrig, Dr. M. Lowe, M. Kor , G. Taentzer, A. Wagner, J. Padberg, L.

Ribeiro, J. Muller, R. Heckel, R. Betschko

Cooperators:

Prof. Dr. H.-J. Schneider, Prof. Dr. F. Parisi-Presicce, Prof. Dr.

G. Valiente

Bordeaux:

Prof. Dr. B. Courcelle, Prof. Dr. Y. Metivier, Prof. Dr. G. Senizergues, Prof.

Dr. R. Strandh, Dr. M. Billaud, Dr. W. Zielonka, Dr. E. Sopena, Dr. M. Bauderon, Dr.

I. Durand, Dr. I. Litovsky, M. Mosbah, A. Paries, D. Lapoire

Cooperators:

Prof. Dr. Arnborg, Prof. Dr. Dauchet, Prof. Dr. Raoult

Bremen:

Prof. Dr. H. -J. Kreowski, Dr. B. Ho mann, Dr. D. Plump, S. Kuske, F. Drewes, R. Klempien-Hinrichs

Cooperator:

Prof. Dr. C. Lautemann, Prof. Dr. A. Habel

Brussels/Antwerp (since October 1994):

Prof. Dr. D. Janssens, Joris Heirbaut, Tom Mens

Cooperator:

Prof. Dr. F. Brandenburg

Leiden:

Prof. Dr. G. Rozenberg, Prof. Dr. G. Engels, Dr. J. Engelfriet, Dr. P. Koopman, M.

Andries

Cooperator:

Prof. Dr. M. Nagl

(11)

Pisa:

Prof. U. Montanari, Prof. Dr. P. Degano, Prof. Dr. Maggiolo-Schettini, Dr. A. Corra- dini, Dr. F. Rossi

Cooperator:

Prof. Dr. R. de Nicola, Prof. Dr. F. Parisi-Presicce

2.2 Workshops

During the phase of COMPUGRAPH II six workshops have been organized by partners of the project.

Dagstuhl Workshop, January 93:

An international workshop on graph transformations in computer science was held at Dagstuhl castle, Germany, January 4 - 8, 1993. About 50 participants visited this workshop. The proceedings of this workshop have been edited by H.J.

Schneider and H. Ehrig and were published by Springer in LNCS, vol 776 (1994). (Compare [SE94].)

L'Aquila Workshop, June 93:

This workshop on COncurrency and Object Orientation was a joint activity of the COMPASS and COMPUGRAPH projects. Some 30 participants were visiting this workshop. Since a major aim of this workshop was to continue the coopera- tion between the Esprit projects COMPASS II and COMPUGRAPH II no proceedings were planned.

Leiden Workshop, October 93:

On October 3 - 7, 1993, a COMPUGRAPH II workshop took place in Noordwijkerhout (Leiden), Netherlands. For this workshop a new form of meeting has been invented. Separate meetings in di erent areas and general discussions are scheduled. About 50 participants visited this workshop. There will be a special issue in Fundamental Informatica edited by G. Rozenberg, H. Ehrig, and G. Engels.

Mallorca Workshop, March 94:

A colloquium on Graph Transformations and its Appli- cation in Computer Science has been organized by Gabriel Valiente at the University of the Balearic Islands, Palma de Mallorca, Spain, in cooperation with COMPUGRAPH. Supported by the Spanish Government, this workshop has taken place on March 14 - 17, 1994. Proceed- ings have been published by the University of the Balearic Islands (techn. report B-19,1995) edited by G. Valiente Feruglio and F. Rosello Llompart.

5th Int. Gragra-Workshop, USA, Nov 94:

This workshop organized by J. Cuny (USA) in cooperation with H. Ehrig, G. Engels, and G. Rozenberg took place in Williamsburg, Virginia, USA, on November 13 - 18, 1994. The workshop has been organized on invitation basis together with an additional open call for papers. The proceedings of this workshop will be published in Springer LNCS.

SEGRAGRA-Workshop, Volterra, Aug 1995:

This workshop on Graph Rewriting and Computation which took place in Volterra, Italy, on August 28 - September 1, 1995, was a joint activity of the two Esprit Basic Research Working Groups, COMPUGRAPH II and SEMAGRAPH II organized by A Corradini and U. Montanari. It was the nal work- shop for both projects where a coherent, detailed account of achieved results was presented.

Proceedings will be published in Electronic Notes of Theoretical Computer Science (a new

(12)

series by Elsevier associated with the TCS journal and edited by M. Mislove, M. Nivat and C.

Papadimitriou available viawwwashttp://www.elsevier.nl/locate/entcs). Furthermore, selected papers will be published in a special issue of the MSCS journal.

2.3 Graph Grammar Handbook

A \Handbook of Graph Transformations" in three volumes according to the overall structure of the COMPUGRAPH project (Foundations, Concurrency and Speci cation and Program- ming) is planned and will be edited by G. Rozenberg. The rst part \Foundations" shall collect nearly all di erent approaches to graph transformation each presented on about 50 pages by di erent authors. By now, all chapters of the handbook are written, but nal layout still has to be done to adapt the chapters to a common style. In the following, a survey of all contributions of the rst volume is given.

[CMR

+

96]

Corradini, A., Montanari, U., Rossi, F., Ehrig, H., Heckel, R., and Lowe, M.:

Algebraic Approaches to Graph Transformation I: Basic Concepts and Double Pushout Approach

[EHK

+

96]

Ehrig, H., Heckel, R., Kor , M., Lowe, M., Ribeiro, L., Wagner, A., and Corra- dini, A.: Algebraic Approaches to Graph Transformation II: Single Pushout Approach and Comparison with Double Pushout Approach

[DKH96]

Drewes, F., Kreowski, H.-J., Habel, A.: Hyperedge Replacement Graph Grammars

[Sch96]

Schurr, A.: Programmed Graph Replacement Systems

[EHR96]

Ehrenfeucht, A., Harju, T., Rozenberg, G.: 2-Structures, A Framework for De- composition and Transformation of Graphs

[Cou96a]

Courcelle, B.: The Expression of Graph Properties and Graph Transformations in Monadic Second-order Logic

2.4 BrAaBeLei/GRACE

Team members and cooperators from Aachen, Berlin, Bremen, Hildesheim and Leiden have started the BrAaBeLei initiative within the COMPUGRAPH working group to make the potentials of graph transformation more visible and application of graph transformation more popular. On several meetings the graph and rule centered language GRACE has been created which is still in an early stage of development. GRACE supports approach independent and structured graph transformation using transformation units. The current state at the end of the COMPUGRAPH II project is summarized in [AEH+96].

2.5 Deliverables

A survey of research goals and main results of the COMPUGRAPH II project was given in [ET95]. Two main activities are concerned with the survey and presentation of the overall concepts and results in the COMPUGRAPH II-project.

(13)

Whereas this nal report contains the new contributions made in the COMPUGRAPH II period only, the annotated bibliography considers the whole time graph transformation has been studied. The long period before COMPUGRAPH II is described along few key contri- butions in the three main areas of graph transformation considered in COMPUGRAPH II, particularly emphasizing the contributions of the COMPUGRAPH I project. These contri- butions are selected mainly from published papers. All contributions are shortly described.

Similarly to the reports the annotated bibliography is also structured according to the areas of COMPUGRAPH II. Moreover, it is intended to publish the annotated bibliography in the EATCS bulletin.

2.6 COMPUGRAPH Follow Up Projects and Activities

Two follow up projects are proposed. These are \General Theory of Graph Transformation Systems" (GETGRATS) as a research network within TMR and \Applications of Graph Transformation" (APPLIGRAPH) as a working group within RTD in IT of ESPRIT. The GETGRATS initiative which has been accepted is coordinated by A. Corradini. APPLI- GRAPH has been mainly worked out by H.-J. Kreowski and D. Plump and is presently not yet decided.

Two further workshops concerning graph transformation are planned for the coming years:

 a workshop \Graph Transformation in Computer Science" in Dagstuhl, Germany, Septem- ber 9 - 13, 1996, organized by H.-J. Schneider, H. Ehrig, U. Montanari and G. Rozenberg

 the next international workshop on \Graph Grammars and Their Application to Com- puter Science" in Leiden, autumn 1997, organized by G. Engels and G. Rozenberg

(14)

Scienti c Contributions and Results

3.1 Foundations

The research in the area of foundations can be structured according to the following sub- areas: algebraic approach to graph transformation, context-free graph grammars and graph transductions, non-context-free speci cation tools, 2-structures, and graph rewriting systems.

3.1.1 Algebraic Approach to Graph Transformation Surveys

In [CMR+96] the state of the art in the double pushout (DPO) approach is given, whereas [EHK+96] deals with the single pushout (SPO) approach. A survey of transformational and algorithmic aspects of the algebraic approach to hypergraph grammars is given in [Hab92b].

High-Level-Replacement Systems

The theory of high-level-replacement (HLR) systems based on the DPO-approach which was published in [EHKP92] was further extended to include also canonical derivation sequences [EKT94], parallel graph grammars [ET92, Tae96b], and embeddings of derivations [PT95], and new applications of HLR-systems to transformations of Petri nets and algebraic speci cations have been studied in [PER95] and [EP93]. Based on HLR-systems rule-based re nement, its abstract relation to other kinds of re nement, as well as horizontal structuring has been established in [Pad96]. A comparing study between HLR-systems in the DPO- and the SPO- approach was started in [EL93a] and [Wag93].

The Single PushOut Approach

The main theory of the SPO-approach was published in [Low93] and extended to distributed derivations in [EL93] and to equationally de ned graph structures in [Kor92, Kor94a]. At- tributed graphs were considered in [LKW91, LKW93]. In [CEL+94a] and [CEL+94c] it was shown how to avoid inconsistencies for abstract graph derivations using standard represen- tations of graphs. A new categorical framework of so-called generalized graph structures generalizing comma categories w.r.t. partial morphisms was elaborated in [Kor93a]. A new

(15)

categorical framework of so-called graph-interpreted graph transformation has been presented in [Kor96]. Single pushout transformation allowing partial graphs has been introduced in [WG96].

The Pullback Approach

In [Bau94, Bau95a, Bau95b] a new approach to graph rewriting is introduced based on pull- back constructions, which provides a categorical framework for NLC and NCE rewriting.

Pullback rewriting is also shown to encompass hyperedge rewriting as well as most cases of double push-out rewriting and to have an intrinsic notion of parallel computation. It appears to be a candidate for a unifying framework of graph rewriting.

Application Conditions

Graph grammars with application conditions were introduced in [HHT96]. The concept is general enough to express context conditions like the existence or non-existence of nodes, edges, or certain subgraphs in the given graph as well as embedding restrictions concerning the morphisms from the left-hand side of the production to the given graph. A commutation property and a parallelism theorem for derivations with application conditions are shown in [HHT96]; moreover, context-free graph grammars with application conditions are investigated with respect to their generative power. The embedding properties of graph grammars with application conditions have been studied in [Hec95b]. In [Wag95] the expressive power of graph grammars with di erent kinds of application conditions are compared. In [HW95]

a construction is presented how consistency conditions can be transfered into application conditions, i.e., a given conditional graph grammar is transfered into a conditional graph grammar that satis es the given consistency conditions. In [HMTW95] a combination of attributed graph transformation with application conditions, amalgamation concepts for rules, and a transaction concept is presented.

Concurrency

In [Kor94c] minimalization properties of derived rules were used in order to carry over the notion of a concurrent rule from the double to the single pushout approach. In [ELO95]

algebraic graph transformations were considered as instances of dynamic abstract data types which were newly proposed as generalizations of the well-known concept of abstract data types. Complementary dynamic abstract data types were used in [Pad95] for giving a seman- tics to algebraic high-level nets.

Structuring of Graph Transformations

Little emphasis has been given in the literature to the \in-the-large" structure of graph gram- mars, i.e., to the study of the relationship among various grammars and of transformations among them. In [CEL+96a] the authors make a rst step in this direction, proposing the de nition of two categories: the rst one has as objects typed graph grammars, while the second one has small categories of graph derivations. Typed graph grammars are a slight generalization of ordinary (algebraic) grammars, where all graphs have a morphism to a xed type graph. The two categories are shown to be related by an adjunction, which associates each grammar with its free category of derivations. This result generalizes similar results

(16)

already known for Petri nets. Based on the categories of derivations a categorical seman- tics for typed graph grammars has been developed. In [CH95] pushouts are used to model composition, and graph grammar morphisms are used to describe re nements of typed graph grammars. Composition and re nement are shown to be compatible with each other and with the proposed semantics.

Graph Grammar Machines

In [Kre93b], Kreowski introduces the notion of a graph grammar machine. Various trans- lations of computational models into a particular graph grammar machine are constructed.

Correctness (in a certain sense) is shown for the translations, leading to several undecidability results for the considered graph grammar approach.

3.1.2 Context-free Graph Grammars and Graph Transductions

The theory of graph grammars can be seen as an extension to graphs of the theory of for- mal languages. Two essential aspects are context-free grammars and transformations, called transductions in language theory. Context-free grammars are basic in formal language the- ory. There are two well-known classes of context-free graph (and hypergraph) grammars: HR grammars, which are based on Hyperedge Replacement, and C-edNCE (or NR) grammars, which are based on Node Replacement (with Neighbourhood Controlled Embedding). Graph transductions can be de ned in di erent ways, by monadic second-order formulas, by tree transducers, by hyperedge replacement grammars.

Surveys

In the monograph [Hab92a] the theory of HR grammars and languages is developed in detail.

Among the most important topics are: context-freeness, characterizations of HR languages, a pumping lemma for HR languages, generative power of HR grammars, predicates and numeric functions on hypergraphs compatible with the derivation process.

The survey paper [DHK96] presents the concept of Hyperedge Replacement as one of the most elementary, best studied, and frequently used approaches to graph and hypergraph rewriting. In particular, HR grammars are discussed as a (hyper)graph-grammatical counter- part to context-free string grammars. To give a representative view of the existing theory of hyperedge replacement, structural properties, decision problems, and the membership prob- lem are considered.

The state of the art of Node Replacement graph grammars (in particular C-edNCE gram- mars and several of its subclasses) is given in [ER96].

The survey paper [Cou96a] discusses the use of Monadic Second-Order Logic (MSOL) for expressing graph properties and graph transformations. An invited lecture on these topics has been presented in [Cou95c].

A survey on the notion of an MSOL de nable transduction is given in [Cou94d]. This notion applies to words, trees, graphs, hypergraphs, relational structures. It is the equivalent for graph grammars of a rational transduction in language theory.

The tutorial [Cou95a] surveys the basic notions of equational and recognizable sets in a Universal Algebra setting. The applications to graphs are immediate for any set of graph operations. One obtains in this way the notions of HR and NR context-free grammars in terms of systems of equations. Extensions to Parikh's theorem are also given.

(17)

A survey on the use of tree transducers as a technical tool in the theory of context-free graph grammars, both HR and NR, is presented in [Eng94].

Hyperedge Replacement

In the theory of HR graph grammars and languages essentially three di erent types of graph properties with nice decidability and structural results have been found. These three well- behaved types are called compatible, nite, and inductive graph properties. In [HKL93] it is shown that these notions are essentially equivalent. Consequently, three lines of investigation in the theory of hyperedge replacement merge into one.

As shown in [CM93], many functions on graphs that can be de ned by MSOL formulas and semiring homomorphisms are inductively computable. Consequently, these functions can be computed eciently on graphs of bounded tree-width.

In [Dre93b] a 1937 result by Mac Lane, stating that 2{connected graphs uniquely de- compose into components of three di erent types, is extended to hypergraphs. This result is used to develop an ecient recognition algorithm for hyperedge{replacement languages consisting of k{connected k{hypergraphs (i.e., hypergraphs with hyperedges of size k only).

This algorithm runs in cubic time, despite the NP-completeness of this problem in general, thus extending a result by Vogler. In [Dre93a] this result is complemented by the proof that hyperedge-replacement grammars of order k can generate NP-complete sets of k-connected graphs (as opposed tok-hypergraphs).

In [Kus93] a new type of pumping lemma for graph languages generated by edge-replacement graph grammars is developed. Whereas the classical pumping lemma increases the size of the pumped graph, the new pumping lemma increases its maximum path length: every graph of a given edge-replacement language that has a suciently long path can be pumped in such a way that the resulting graph is also in that language but has a longer path. Using this pumping lemma, a boundedness problem is shown to be decidable and a sublinear growth property of maximal paths is proved.

In [Mos96a] probabilistic graph grammars are introduced. These are hyperedge replace- ment grammars equipped with production probabilities. It is shown how to compute statistical measures for xed production probabilities. Moreover, these probabilities can be determined so as to generate graphs with given statistical information. In [Mos96b] the consistency of such grammars is discussed.

In [Rao93] HR grammars are used to de ne tree transductions.

It is proved in [CE95] that a set of hypergraphs is HR i it is the image of a recognizable set of binary trees under an MSOL de nable transduction. A similar result was already known for NR sets of graphs.

A notion of concatenation of graphs which allows string languages to be interpreted as graph languages is investigated in [EV95, EV96a]. The regular string languages characterize the graph languages generated by linear HR grammars.

Node Replacement

In [Cou95e] a decidable condition is given that is necessary and sucient for a set of graphs generated by an NR graph grammar to be generable by a HR grammar. It uses a version of Parikh's theorem for context-free graph grammars, where one can count the cardinality of sets de ned by MSOL formulas.

(18)

In [EO95] it is shown that the C-edNCE graph languages can be described by regular tree languages and regular string languages. With nite string languages the subclass of apex edNCE graph languages is obtained.

Node replacement in hypergraphs is introduced in [Kle96] as a generalization of node replacement in graphs, yielding hypergraph grammars with neighbourhood controlled em- bedding (hNCE-grammars). This approach, even when restricted to boundary grammars (i.e., no sentential form contains two adjacent nonterminal nodes), can simulate hyperedge replacement. The main result is that con uence is a decidable property of hNCE-grammars.

This is proved by a decision algorithm which runs in triply exponential time in the size of the grammar.

Collage Grammars

In [HKT93] the notion of collage grammars is introduced and studied. The idea of col- lage grammars is based on the notion of hyperedge replacement, similar to the case of (hy- per)graphs. However, instead of graphs, sets of geometric patterns are equipped with hy- peredges in order to allow a generation process. As collages represent patterns that may be overlaid, collage grammars provide a syntactic device for the generation of sets of patterns as well as a certain type of fractal patterns (see also [DHKT93]).

The purpose of [DHKT94, DHKT95] is to sketch and to illustrate the basic features of collage grammars as a pattern-generating device based on hyperedge replacement. The properties of patterns generated by a special class of collage grammars are studied. It is shown that the so-called increasing generalized Sierpinski grammars yield self-ane fractals.

If one replaces the overlay by a certain intersection of all generated collages, the same result holds for decreasing generalized Sierpinski grammars, and in this case even the converse can be shown: essentially, each self-ane fractal can be generated by a decreasing generalized Sierpinski grammar.

In [Tau94] collage grammars are compared with three concepts from fractal geometry that are used for the generation of fractal pictures, viz. iterated function systems, iterated function systems with condensation, and mutually recursive function systems. It is shown that essentially each operation with these methods can be simulated by the use of collage grammars.

A rst attempt to investigate compatible properties of collages is made in [DK96]. As in the case of HR grammars, for a property P of collages that is compatible with the derivation process in collage grammars, decidability results follow. It can, for instance, be decided whether all collages generated by a given grammar satisfy P, or whether there is one among the generated collages satisfyingP. In contrast to the situation for graphs, however, one has diculty in nding compatible properties. In the paper, a few are presented, and it is shown that slight generalizations lead to undecidability of the questions quoted above.

As shown in [Dre96b] there nevertheless exist meaningful classes of collage grammars and iterated function systems for which positive decidability results can be proved. The restriction considered in this paper makes use of a particular sort of similarity transformations called grid transformations. The results concern language theoretic aspects and algorithmic properties of context-free collage languages and of patterns generated by iterated function systems, where the generating devices use only grid transformations. It turns out that the language classes have nice closure properties, and that non-trivial questions concerning the generated pictures can be decided. These studies extend the results of [Dre96a], where it is shown

(19)

that the connectedness of fractals generated by grid iterated function systems in the plane is decidable.

The relationship between chain-code picture languages and collage languages is investi- gated in [DHT96]. It is shown that regular chain-code picture languages can be generated by collage grammars. As a consequence, all known undecidability results for regular chain-code languages can be adapted to picture languages generated by collage grammars.

Graph Transductions

Using hypergraph replacement instead of tree substitution, the usual top-down tree transduc- ers are generalized to top-down tree-to-graph transducers in [EV94]. Restricting the latter to generate term graphs (i.e., graphs that represent trees) the top-down tree-to-graph-to-tree transducers (top-down tgt transducers) are obtained. It is shown that these have the same power as macro tree transducers. In [EV96b] it is proved that the bottom-up tgt transducers also have the same power.

Generalizing the notion of functions compatible with the derivation process in HR gram- mars (or, the notion of an inductively computable function), the notion of transducibility is de ned in [Dre93c]. Roughly speaking, a function f from an algebra A into an algebraB is transducible with respect to a given class of tree transductions if there exists a transduction (in this given class) which, given as input a term that describes an element a of A, yields a term over the operations of B whose value is f(a). First results concerning the decidability of boundedness problems (obtained by extending the results known for compatible functions) are presented.

In [Dre94] the power of a particular class of transducible functions is investigated, namely the set of all codings of binary trees as natural numbers that can be computed by top-down tree transducers. It is shown that these functions cannot reduce the size of their input by more than a linear factor if the target algebra contains only monotonic operations.

An investigation of the power of top-down, bottom-up, and tree-to-graph-to-tree trans- ducers (tgt transducers) to compute translations from hyperedge-replacement algebras into edge-replacement algebras is carried out in [Dre95a]. Compositions of top-down and bottom- up tree transducers turn out to be too weak if the operations in the target algebra can de ne series-parallel graphs, 2-trees, or related types of graphs. Tgt transducers are shown to be more powerful. They can compute translations into ER algebras whose operations are so- called 2tree operations, which are generalizations of the well-known operations to generate 2-trees. By contrast, it is shown in [Dre95b] that top-down tree transducers are as powerful as sharing-free top-down tgt transducers for the computation of functions into a semiring.

In [Dre96c] the notion of computation by tree transductions, and especially its application to graphs and collages, is studied in depth. In addition to the results mentioned above, mainly two new results are presented. The rst is a generalization of the result by Habel, Kreowski, and Vogler saying that one can decide whether the image of a hyperedge-replacement lan- guage under a given (max;+;)-compatible function is nite. The generalization is threefold:

as computing devices arbitrary tgt transductions are allowed (whereas compatibility corre- sponds to the use of deterministic top-down tree transductions), the target domain need not necessarily be given by the natural numbers with max, +, and, and there is no restriction on the input domain at all. The second result says that compositions of top-down tree transduc- ers suce in order to compute translations from arbitrary hyperedge-replacement algebras into edge-replacement algebras containing as operations only (hyper)trees, contrasting the

(20)

fact that these transductions do not suce for more general target algebras (see above).

Treewidth and Forbidden Minors

In [BE95] the notion of domino tree-width is introduced and investigated, based on tree- decompositions for which each node of the graph belongs to at most two nodes of the tree.

This notion is closely related to apex HR grammars.

By using methods of context-free graph grammars, it is proved in [Lap94] that the tree- width of a planar graph and of its dual di er by at most 1, as conjectured by Robertson and Seymour.

It is proved in [CS96] (see also [Cou95b]) that one can e ectively construct the nite set of forbidden minors for a minor-closed set of graphs given by a HR graph grammar. The corresponding computation method is actually intractable.

Context-free Graphs and Groups

An in nite graph is context-free (or equational) if it is the solution of a nite set of equations.

It is known that every equational graph which happens to be also a Cayley graph, has either 0 or 2 ends. It follows from the celebrated Stallings' theorem, that the underlying group must be either nite or have a decomposition as an amalgamated product (with nite amalgamated subgroups) or as an HNN-extension (with nite associated subgroups). It is shown in [Sen93] that such a decomposition can be computed in time at most a tower of 5 exponentials.

LetGbe a group,XG a nite set of generators ofGand ? the Cayley-graph ofGonXG. Suppose that ? is -triangulable for some   0. Using geometric considerations, an upper bound on the cardinality of every nite subgroup ofGis computed in [Sen96]. As a corollary an upper bound on the accessibility-length of G is obtained. Both bounds are exponential functions of .

In [Pel96] some sucient conditions are given on the action of the group of automorphisms of a context-free graph, ensuring that this group is nitely generated. In the most general case a geometrical condition, which can be considered as a niteness condition, is proved.

3.1.3 Non-context-free Speci cation Tools Hyperedge Replacement

In [Kre93a] ve variations and extensions of hyperedge replacement beyond context freeness are discussed: (1) parallel hyperedge replacement with a mode of rewriting like OL- and TOL- systems, (2) hyperedge replacement with rendezvous, (3) hyperedge replacement with required presence or absence of context, (4) hyperedge replacement with rule-selection speci cations like path expressions, (5) in nite hyperedge replacement generating potentially in nite graphs.

These ve facets of hyperedge replacement, the rst two of which are already known in the literature, are introduced, discussed, investigated, and related to each other and to other frameworks.

In [DDK93] a rendezvous mechanism for parallel hyperedge replacement is introduced and studied. This provides the|originally context-free|notion of hyperedge replacement with a restricted kind of context sensitivity. It is shown that the rendezvous mechanism gives indeed

(21)

extra generative power. In fact, even edge replacement with rendezvous exceeds the power of hyperedge replacement without.

Monadic Second-Order Logic

It is proved in [Cou95d] that by using MSOL formulas with edge set quanti cations, one can de ne all orientations of a graph or a hypergraph of bounded rank. This is not possible if set quanti cations are restricted to vertices. Consequences concern the structure of sets of graphs having a decidable monadic second-order theory.

In [Cou94a, Cou94c, Cou96b] it is investigated whether or not a linear order on the set of vertices of a graph can be de ned by MSOL formulas. This is not always possible. Appli- cations concern traces (i.e., graphs representing partially commutative words) and modular decompositions of graphs.

Dynamic Graphs

In [MSW96] Dynamic Graphs are proposed: a model of processes of transforming data, in which branching, concurrency and structures of data can be represented. Data are represented by labelled graphs, processes of transforming data are represented by labelled graphs with some extra features, operations on graphs representing processes are de ned. A particular subclass of dynamic graphs can be interpreted as a semantics of a graph grammar.

3.1.4 2-Structures

2-Structures form a unifying framework for the investigation of the decomposition and trans- formation of graph-like structures.

Survey

The state of the art of 2-structures is given in [EHR96].

Hierarchical Decomposition

The modular decomposition of graphs can be generalized to the clan decomposition of 2- structures in a natural way, using the notion of prime clan of a 2-structure. Thus, each 2-structure can be decomposed into a tree of prime clans, such that the quotient structure of each node and its direct descendants forms one of three types of basic 2-structures: linear, complete, or primitive. This decomposition result is generalized from nite to in nite 2- structures in [HR94].

A Petri net can be synthesized from its state space, modelled as a 2-structure, by the use of regions of that 2-structure. The basic properties of clans and regions of 2-structures, and their relationship, are investigated in [DER94b].

In [ER94b] the notion of a square system is introduced, based on a quaternary relation satisfying certain symmetry conditions. Square systems provide a uniform framework for studying decompositions of systems into a hierarchal family of subsets (e.g., prime clans).

Such families are related to independent boolean algebra's.

Uniformly non-primitive 2-structures (that have no primitive quotient structures) are studied in [EHPR96]. Several characterizations of these 2-structures (that generalize cographs

(22)

and transitive VSP digraphs) are presented, e.g., in terms of forbidden subgraphs. It is shown that every MSOL property of uniformly non-primitive 2-structures can be recognized in polynomial time.

A new way of specifying graphs is introduced in [EER96]: through nite sets of strings.

The strings of a given (pre x-free) language represent the vertices of the graph, and whether or not there is an edge between the vertices represented by two strings is determined by the pair of symbols at the rst position where these strings di er. The main results show an intrinsic relationship between the operations of graph substitution (as used in the decomposition of 2-structures) and language concatenation.

Particular types of 2-structures, called texts, are introduced in [EHPR94]. A text can be viewed as a string with an additional linear ordering on its positions. Context-free text grammars are considered, and it is investigated when a derivation tree of such a grammar corresponds to the decomposition tree of the generated 2-structure.

Dynamic Labeled 2-Structures

Dynamic labeled 2-structures are introduced and studied in [ER95], as a model of evolution of a network of processors. In a dynamic labeled 2-structure the relationships (i.e., edge labels) between the nodes can change dynamically. The edge labels are naturally taken from a group, and changes are modelled by group multiplication, in order to be able to undo each change.

The notion of clan is generalized to dynamic 2-structures, and quotients are investigated in [EHR94a]. In [ER94a] it is shown how nodes can be added to or deleted from (dynamic) 2-structures in a natural way. The group of free invariants of a dynamic 2-structure is studied in [EHR94b]. In [DER94a] dynamic 2-structures are generalized to allow hyperedges; it is proved that communication in a hyperedge is governed by an Abelian group.

3.1.5 Graph Rewriting Systems Generalized Term Rewriting

In [Plu93] critical pairs are introduced in the double pushout approach to hypergraph rewrit- ing. A critical pair lemma is presented which provides a sucient condition for local con u- ence of hypergraph rewriting systems (and hence for con uence of terminating systems). It requires that all critical pairs are con uent by derivations satisfying certain conditions. Fur- thermore, con uence is shown to be undecidable even for terminating hypergraph rewriting systems. This reveals that a simple characterization of local con uence|as it is possible in the case of term rewriting|cannot exist.

A necessary and sucient condition for termination of graph rewriting systems is estab- lished in [Plu95]. Termination is equivalent to the niteness of all forward closures, being certain minimal derivations in which each step depends on previous steps. This characteri- zation di ers from corresponding results for term rewriting in that the latter hold only for subclasses of term rewriting systems. When applied to term graph rewriting, the result characterizes termination of arbitrary term rewriting systems under graph rewriting. In par- ticular, it captures non-terminating term rewriting systems that are terminating under graph rewriting.

A concept of graph uni cation and matching is introduced in [PH96]. The idea is to use hyperedges as graph variables and hyperedge replacement as substitution mechanism. It is shown that a restricted form of graph uni cation corresponds to solving linear Diophantine

(23)

equations, and hence is decidable. The decidability of the general graph uni cation problem is open. For graph matching, transformation rules are given which compute all solutions to a matching problem. The matching concept suggests a new graph rewriting approach called substitution-based graph rewriting. In this approach, a rule is just a pair (L;R) of graphs which is applied to a graph G by (1) choosing a substitution  such that L is isomorphic to G and (2) applying  toR. Substitution-based graph rewriting generalizes the double-pushout approach in that rewrite steps can copy or delete non-local subgraphs.

In [DS93] the class of constructor equivalent term rewriting systems is de ned, for which Thatte's transformation preserves strong sequentiality. A simple characterization of this new class is given and it is shown that it is a subclass of the forward-branching class, so a subclass of the strongly sequential class. In [DS94] a direct proof (i.e., a proof which does not involve the forward-branching class) of the inclusion of the constructor equivalent class into the strongly sequential class is given. In [Dur94] a simple characterization of the forward-branching class of term rewriting systems is given. The constructive proof of the characterization is extended to a quadratic time algorithm that builds a forward-branching index tree.

Graph Relabelling Systems

Graph relabelling systems have been introduced as a formal model for encoding distributed computations on graphs. These systems deal with vertex and edge-labeled graphs and satisfy the following constraints: (1) they do not change the underlying structure of the graph but only the labelling of its components, the nal labeling being the result of the computation; (2) they are local, i.e., each relabelling step modi es the labelling of a connected subgraph, having a xed size, of the underlying graph; and (3) they are locally generated, i.e., the application of any relabeling rule depends only on the local context of the relabeled subgraph.

In [LM92] a survey is given of classical graph and network algorithms using a tree structure, encoded as graph relabelling systems with priorities (PGRS).

The computational power of Noetherian graph relabelling systems with priorities is studied in [LM93]. In particular, the classes of sets of graphs recognized by PGRS are compared with the classes de nable by logic formulas.

It is proved in [CM94] that, apart from a few exceptions, minor-closed classes of graphs cannot be recognized by graph relabelling systems. Planar graphs and graphs of tree-width at mostk are typical examples of minor-closed classes of graphs.

In [MS94] the well-known problem of election in a tree is considered, and the probability for any vertex to be elected is studied. In particular, it is shown that there are one or two vertices having the highest probability of being elected: they are medians. A simple algorithm to compute these medians is given.

In [LMS95a] six di erent models of graph relabelling systems are de ned and compared;

[LMZ95] contributes to understanding the power and limitations of local computations in graphs.

The study of the general problem of characterizing those properties that can be locally computed on a graph by graph relabelling systems, is initiated in [LMS95b]. It is proved that graph relabelling systems can recognize all graphs in which a given label has majority. On the other hand, no such system can recognize all graphs in which a given label has majority with a prescribed number of exceeding occurrences.

Applications of the Kronecker product to local computations in graphs are studied in [BM96].

(24)

3.2 Concurrency

Formalisms based on graph rewriting may be used in a quite natural way to specify concurrent and/or distributed systems. In fact, distributed states are naturally represented by graphs, and graph transformation rules can be used to model local changes in a distribute state. The research in the area of concurrency during COMPUGRAPH II can be roughly divided in two main streams of investigation (which clearly have strong interconnections):

1. The rst line of investigation concerns the analysis of the various aspects of parallelism, concurrency and distribution of graph grammars and of their derivations. This area includes the study of parallel and distributed grammars; the analysis of properties of causal dependency or indepencence among graph derivation steps; the de nition of suitable equivalences among graph derivations, and of canonical representatives for such equivalence class (as canonical derivations, processes, and concurrent derivations);

the study of truly concurrent semantics for graph grammars. Such topics have been investigated for various rewriting formalisms, including for example the DPO and SPO approaches to graph grammars, HLR systems, and transition systems with parallelism structure.

2. The second line of research aims at investigating in a more direct way the suitability of graph grammars for the speci cation of concurrent and distributed systems. This is done either by de ning speci c formalisms based on graph rewriting that explicitly address such modelization issues, as in the case of ESM (Extended Structure Morphsm) systems, or by studying the relationship between graph grammars and other formalisms suitable for specifying concurrent and distributed system. In most cases the basic aspects of such formalisms are translated into corresponding notions for graph grammars, and it is proven that the resulting grammar faithfully model the operational behaviour of the original system. Such a translation sometimes provide useful hints for some cross- fertilization between the theory of graph grammars and the theory of other formalism, as it happened for Petri nets. Other formalisms considered include Actor Systems, Concurrent Constraint Programming, the CHARM, and Statecharts.

In the following subsections we list and shortly describe the various topics under which the main contributions to the area of concurrency produced during the COMPUGRAPH II project can be classi ed.

3.2.1 Theory of parallelism, concurrency, and distribution of Graph Gram- Truly concurrent semantics for graph grammars mars

In a joint research activity started in 1992, the Berlin and Pisa groups of COMPUGRAPH have provided graph grammars in the DPO approach with a truly concurrent semantics in terms of Event Structures. In order to de ne such a semantics in a satisfactory way, in [CEL+94c] the authors addressed the problem of formalizing what is precisely meant by rea- soning about graphs and graph derivations \up to isomorphism": they showed that some incongruences arising from a naive use of isomorphisms in the de nition of \abstract" graphs and graph derivation can be solved by restricting the class of allowed isomorphisms to a proper

(25)

subclass of so-called \standard isomorphisms". This result has been exploited in [CEL+94a], where the main result is the de nition of an original equivalence on graph derivations which is compatible with sequential composition and guarantees the uniqueness of canonical deriva- tions. This equivalence allows for the de nition of a new category having abstract graphs as objects and abstract derivations as arrows.

In [CEL+94b] an abstract event structure semantics has been given to so-called safe graph grammars following the double pushout approach. The restriction to safe grammars allowed the authors to get rid easily of the problems (stressed in [CEL+94a]) arising from the exis- tence of non-trivial automorphisms. In [CEL+96b] the event structure semantics has been extended to arbitrary, consuming graph grammars, fully exploiting the techniques developed in [CEL+94a].

Motivated by a corresponding application to actor systems, an event structure semantics is also proposed in [Kor94b] for the single pushout approach. This kind of semantics is based on concurrent derivations which can be considered as graph grammar processes ([KR95a]).

Canonical Derivations

Canonical derivations, i.e., derivations where each production is applied \as early as possible"

(as soon as all its preconditions are generated), are known, In the graph grammar theory, as the counterpart to leftmost derivations in Chomsky grammars. As such, they can be regarded as standard representatives for equivalence classes of derivations with respect to the so-called

\shift-equivalence". Such an equivalence relates derivations which apply non-causally related derivation steps in any order.

In [EKT94], Ehrig, Kreowski and Taentzer generalize canonical derivations, previously studied for string and graph grammars only, from graph grammars to high-level replacement systems, short HLR-systems. These systems were recently introduced to provide a common categorical framework for di erent types of replacement systems on complex objects, including graphs, hypergraphs, structures and algebraic speci cations. It turns out that basic results concerning synthesis and analysis of parallel derivation sequences in HLR-systems, obtained in previous papers, can be extended to construct canonical parallel derivation sequences which are optimal w.r.t. leftmost parallelism. The main results show the existence and uniqueness of canonical derivations under weak assumptions for the underlying categories of HLR-systems.

These results are specialized to graphs, hypergraphs, Petri nets, algebraic speci cations and others by classifying the underlying categories with respect to the assumptions. This leads to interesting new results for most of the corresponding HLR-systems. Furthermore, a di- rect approach to obtain canonical derivation sequences in the single pushout approach was elaborated in [LD94].

Kreowski's paper [Kre94] presents an axiomatic approach to canonical derivations in the framework of transition systems with parallelism structures. Canonical derivations are studied in this paper as candidates to represent the processes in a concurrent system or, more exactly, as representatives of equivalent views on the processes. The main results give sucient conditions for existence and uniqueness of canonical derivations.

A di erent kind of representative for shift-equivalent classes of derivations has been pro- posed in [CMR96] and [Kor94b], for the DPO and the SPO, respectively. In both approaches, such a representative is obtained as a colimit of a derivation, regarded as a diagram in the cat- egory of Graphs: although such colimit object is not, in general, a derivation (unlike canonical derivations), the causal ordering of direct derivations can be extracted in an easier way.

References

Related documents

(Both groups of households finance business.) The model simultaneously determines the risk-free debt rate, risk premiums on mortgages, corporate equities and housing, and the

This section describes how to install the client, the storage node, and the server software as well as the optional NetWorker software packages such as the language packages on

• 1½-% per month finance charge on overdue accounts. • Damage claims must be made with carrier within 72 hours. • No returns without prior authorization. • 15% restocking charge

Knowledge of the indications for soft tissue coverage procedures in both the upper and lower extremity and the knowledge required to treat the skeletal component of the injury to

In this thesis, algorithms for near-end listening enhancement (NELE) have been presented which improve the intelligibility of the far-end speech signal perceived in near-end

The over growing criticisms of quality of customer service within banks in Ghana, has led sceptics undecided on whether a bank through its customer service scheme can build

Ward argues in Neoliberalism and the Global Restructuring of Knowledge and Education , unchecked and unrestrained college professors are considered “too dangerous” to