Double-pushout Approach
   HOME

TheInfoList



OR:

In
computer science Computer science is the study of computation, information, and automation. Computer science spans Theoretical computer science, theoretical disciplines (such as algorithms, theory of computation, and information theory) to Applied science, ...
, double pushout graph rewriting (or DPO graph rewriting) refers to a mathematical framework for
graph rewriting In computer science, graph transformation, or graph rewriting, concerns the technique of creating a new graph out of an original graph algorithmically. It has numerous applications, ranging from software engineering ( software construction and also ...
. It was introduced as one of the first algebraic approaches to graph rewriting in the article "Graph-grammars: An algebraic approach" (1973). It has since been generalized to allow rewriting structures which are not graphs, and to handle negative application conditions, among other extensions.


Definition

A DPO graph transformation system (or
graph grammar In computer science, graph transformation, or graph rewriting, concerns the technique of creating a new graph (discrete mathematics), graph out of an original graph algorithmically. It has numerous applications, ranging from software engineering (s ...
) consists of a finite
graph Graph may refer to: Mathematics *Graph (discrete mathematics), a structure made of vertices and edges **Graph theory, the study of such graphs and their properties *Graph (topology), a topological space resembling a graph in the sense of discret ...
, which is the starting state, and a finite or countable set of labeled spans in the
category Category, plural categories, may refer to: General uses *Classification, the general act of allocating things to classes/categories Philosophy * Category of being * ''Categories'' (Aristotle) * Category (Kant) * Categories (Peirce) * Category ( ...
of finite graphs and graph homomorphisms, which serve as derivation rules. The rule spans are generally taken to be composed of
monomorphism In the context of abstract algebra or universal algebra, a monomorphism is an injective homomorphism. A monomorphism from to is often denoted with the notation X\hookrightarrow Y. In the more general setting of category theory, a monomorphis ...
s, but the details can vary."Double-pushout graph transformation revisited", Habel, Annegret and Müller, Jürgen and Plump, Detlef, Mathematical Structures in Computer Science, vol. 11, no. 05., pp. 637--688, 2001, Cambridge University Press Rewriting is performed in two steps: deletion and addition. After a match from the left hand side to G is fixed, nodes and edges that are not in the right hand side are deleted. The right hand side is then glued in. Gluing graphs is in fact a pushout construction in the
category Category, plural categories, may refer to: General uses *Classification, the general act of allocating things to classes/categories Philosophy * Category of being * ''Categories'' (Aristotle) * Category (Kant) * Categories (Peirce) * Category ( ...
of graphs, and the deletion is the same as finding a pushout complement, hence the name.


Uses

Double pushout graph rewriting allows the specification of graph transformations by specifying a pattern of fixed size and composition to be found and replaced, where part of the pattern can be preserved. The application of a rule is potentially non-deterministic: several distinct matches can be possible. These can be non-overlapping, or share only preserved items, thus showing a kind of concurrency known as parallel independence,"Concurrent computing: from Petri nets to graph grammars", Corradini, Andrea, ENTCS, vol. 2, pp. 56--70, 1995, Elsevier or they may be incompatible, in which case either the applications can sometimes be executed sequentially, or one can even preclude the other. It can be used as a language for software design and programming (usually a variant working on richer structures than graphs is chosen). Termination for DPO graph rewriting is undecidable because the
Post correspondence problem The Post correspondence problem is an undecidable decision problem that was introduced by Emil Post in 1946. Because it is simpler than the halting problem In computability theory (computer science), computability theory, the halting problem ...
can be reduced to it., "Termination of graph rewriting is undecidable", Detlef Plump, Fundamenta Informaticae, vol. 33, no. 2, pp. 201--209, 1998, IOS Press DPO graph rewriting can be viewed as a generalization of
Petri nets A Petri net, also known as a place/transition net (PT net), is one of several mathematical modeling languages for the description of distributed systems. It is a class of discrete event dynamic system. A Petri net is a directed bipartite grap ...
.


Generalization

Axioms have been sought to describe categories in which DPO rewriting will work. One possibility is the notion of an adhesive category, which also enjoys many closure properties. Related notions are HLR systems, quasi-adhesive categories and \mathcal{M}-adhesive categories, adhesive HLR categories.Hartmut Ehrig and Annegret Habel and Julia Padberg and Ulrike Prange, "Adhesive high-level replacement categories and systems", 2004, Springer The concepts of adhesive category and HLR system are related (an adhesive category with
coproduct In category theory, the coproduct, or categorical sum, is a construction which includes as examples the disjoint union of sets and of topological spaces, the free product of groups, and the direct sum of modules and vector spaces. The cop ...
s is a HLR system"Adhesive categories", Stephen Lack and Paweł Sobociński, in ''Foundations of software science and computation structures'', pp. 273--288, Springer 2004).
Hypergraph In mathematics, a hypergraph is a generalization of a Graph (discrete mathematics), graph in which an graph theory, edge can join any number of vertex (graph theory), vertices. In contrast, in an ordinary graph, an edge connects exactly two vert ...
, typed graph and attributed graph rewriting,"Fundamentals of Algebraic Graph Transformation", Hartmut Ehrig, Karsten Ehrig, Ulrike Prange and Gabriele Taentzer for example, can be handled because they can be cast as adhesive HLR systems.


Notes

Graph algorithms Graph rewriting