Book 6

The aim of this book is to present fundamentals of algebraicspecifications with respect to the following three aspects: fundamentals in the sense of a carefully motivatedintroduction to algebraic specifications, which is easy tounderstand for computer scientists and mathematicians; fundamentals in the sense of mathematical theories which arethe basis for precise definitions, constructions, results, and correctness proofs; and fundamentals in the sense ofconcepts, which are introduced on a conceptual level andformalized in mathematical terms. The book is equally suitableas a text book for graduatecourses and as a reference for researchers and systemdevelopers.

Book 21

Since the early seventies concepts of specification have become central in the whole area of computer science. Especially algebraic specification techniques for abstract data types and software systems have gained considerable importance in recent years. They have not only played a central role in the theory of data type specification, but meanwhile have had a remarkable influence on programming language design, system architectures, arid software tools and environments. The fundamentals of algebraic specification lay a basis for teaching, research, and development in all those fields of computer science where algebraic techniques are the subject or are used with advantage on a conceptual level. Such a basis, however, we do not regard to be a synopsis of all the different approaches and achievements but rather a consistently developed theory. Such a theory should mainly emphasize elaboration of basic concepts from one point of view and, in a rigorous way, reach the state of the art in the field. We understand fundamentals in this context as: 1. Fundamentals in the sense of a carefully motivated introduction to algebraic specification, which is understandable for computer scientists and mathematicians. 2. Fundamentals in the sense of mathematical theories which are the basis for precise definitions, constructions, results, and correctness proofs. 3. Fundamentals in the sense of concepts from computer science, which are introduced on a conceptual level and formalized in mathematical terms.

This book is a comprehensive explanation of graph and model transformation. It contains a detailed introduction, including basic results and applications of the algebraic theory of graph transformations, and references to the historical context. Then in the main part the book contains detailed chapters on M-adhesive categories, M-adhesive transformation systems, and multi-amalgamated transformations, and model transformation based on triple graph grammars. In the final part of the book the authors examine application of the techniques in various domains, including chapters on case studies and tool support.

The book will be of interest to researchers and practitioners in the areas of theoretical computer science, software engineering, concurrent and distributed systems, and visual modelling.


Graphs are widely used to represent structural information in the form of objects and connections between them. Graph transformation is the rule-based manipulation of graphs, an increasingly important concept in computer science and related fields. This is the first textbook treatment of the algebraic approach to graph transformation, based on algebraic structures and category theory.

Part I is an introduction to the classical case of graph and typed graph transformation. In Part II basic and advanced results are first shown for an abstract form of replacement systems, so-called adhesive high-level replacement systems based on category theory, and are then instantiated to several forms of graph and Petri net transformation systems. Part III develops typed attributed graph transformation, a technique of key relevance in the modeling of visual languages and in model transformation. Part IV contains a practical case study on model transformation and a presentation of the AGG (attributed graph grammar) tool environment. Finally the appendix covers the basics of category theory, signatures and algebras.

The book addresses both research scientists and graduate students in computer science, mathematics and engineering.