Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

Adhesive Quasi Adhesive

Download as pdf or txt
Download as pdf or txt
You are on page 1of 35

RAIRO-Inf. Theor. Appl.

39 (2005) 511-545
DOI: 10.1051/ita:2005028

ADHESIVE AND QUASIADHESIVE CATEGORIES ∗

Stephen Lack 1 and Pawel Sobociński 2

Abstract. We introduce adhesive categories, which are categories


with structure ensuring that pushouts along monomorphisms are well-
behaved, as well as quasiadhesive categories which restrict attention to
regular monomorphisms. Many examples of graphical structures used
in computer science are shown to be examples of adhesive and quasi-
adhesive categories. Double-pushout graph rewriting generalizes well
to rewriting on arbitrary adhesive and quasiadhesive categories.

Mathematics Subject Classification. 18A30, 18A35, 18D99,


68Q42, 68Q65.

Introduction
Recently there has been renewed interest in reasoning using graphical methods,
particularly within the fields of mobility and distributed computing [15,21] as well
as applications of semantic techniques in molecular biology [4, 6]. Research has
also progressed on specific graphical models of computation [20]. As the number of
various models grows, it is important to understand the basic underlying principles
of computation on graphical structures. Indeed, a solid understanding of the
foundations of a general class of models (provided by adhesive categories), together
with a collection of general semantic techniques (for example [23]) will provide
practitioners and theoreticians alike with a toolbox of standard techniques with

Keywords and phrases. Adhesive categories, quasiadhesive categories, extensive categories,


category theory, graph rewriting.
∗ The first author acknowledges the support of the Australian Research Council. The second

author acknowledges the support of BRICS, Basic Research in Computer Science


(www.brics.dk), funded by the Danish National Research Foundation.
1 School of Quantitative Methods and Mathematical Sciences, University of Western Sydney,

Australia.
2 BRICS, University of Aarhus, Denmark; pawel@brics.dk

c EDP Sciences 2005

Article published by EDP Sciences and available at http://www.edpsciences.org/ita or http://dx.doi.org/10.1051/ita:2005028


512 S. LACK AND P. SOBOCIŃSKI

which to construct the models, define the semantics and derive proof-methods for
reasoning about these.
Category theory provides uniform proofs and constructions across a wide range
of models. The usual approach is to find a natural class of categories with the right
structure to support the range of constructions particular to the application area.
A well-known example is the class of cartesian-closed categories, which provides
models for simply typed lambda calculi [19].
In this paper we shall demonstrate that adhesive categories have structure which
allows a development of a rich general theory of double-pushout (DPO) rewrit-
ing [14]. DPO graph rewriting has been widely studied and the field can be con-
sidered relatively mature [8, 13, 22].
In DPO rewriting, a rewrite rule is given as a span L ← K → R. Roughly, the
intuition is that L forms the left-hand side of the rewrite rule, R forms the right-
hand side and K, common to both L and R, is the sub-structure to be unchanged
as the rule is applied. To apply the rule to a structure C, one first needs to find a
match L → C of L within C. The rule is then applied by constructing the missing
parts (E, D and arrows) of the following diagram

Lo K /R
  
Co E /D

in a way which ensures that the two squares are pushout diagrams. Once such a
diagram is constructed we may deduce that C  D, that is, C rewrites to D.
DPO rewriting is formulated in categorical terms and is therefore portable to
structures other than directed graphs. There have been several attempts [9, 11] to
isolate classes of categories in which one can perform DPO rewriting and in which
one can show that such rewriting grammars satisfy useful properties. In particular,
several axioms were put forward in [11] in order to prove a local Church-Rosser
theorem for such general grammars. Additional axioms were needed to prove a
general version of the so-called concurrency theorem [16].
An important general construction which appears in much of the literature on
graphical structures in computer science is the pushout construction. Sometimes
referred to as generalized union [9], it can often be thought of as the construction
of a larger structure from two smaller structures by gluing them together along a
shared substructure.
One can think of adhesive categories as categories in which pushouts along
monomorphisms are “well-behaved”, where the paradigm for behaviour is given
by the category of sets. An example of the good behaviour of these pushouts is
that they are stable under pullback (the dual notion to pushout, which intuitively
can often be thought of as a “generalized intersection”). The idea is analogous to
that of extensive categories [3], which have well-behaved coproducts in a similar
sense. Since coproducts can be obtained with pushouts and an initial object, and
an initial object is “well-behaved” if it is strict, one might expect that adhesive
ADHESIVE AND QUASIADHESIVE CATEGORIES 513

categories with a strict initial object would be extensive, and this indeed turns out
to be the case.
Various notions of graphical structures used in computer science form adhesive
categories. This includes ordinary directed graphs, typed graphs [1] and hyper-
graphs [11], amongst others. Indeed, it turns out that any elementary topos is
adhesive, although this shall be proved elsewhere [18]. The structure of adhesive
category allows us to derive useful properties. For instance, the union of two sub-
objects is calculated as the pushout over their intersection, which corresponds well
with the intuition of pushout as generalized union.
The notion of adhesivity is too strong for several relevant examples. These ex-
amples motivate the study of quasiadhesive categories. As a topos is adhesive, so a
quasitopos is quasiadhesive [18]; a fact which has guided our terminology. Roughly,
instead of focusing on the behaviour of pushouts along arbitrary monomorphisms,
quasiadhesive categories restrict attention to pushouts along regular monomor-
phisms. Quasiadhesive categories are shown to encompass several categories of
interest to computer scientists, including the category Spec of algebraic specifica-
tions and algebraic specification morphisms.
Adhesive categories can be seen as a degenerate quasiadhesive category, namely
one where all monomorphisms are regular. While the theory of quasiadhesive
categories generalises the theory of adhesive categories, we believe it is nonetheless
useful to study the stronger property of adhesivity because of its simplicity; helpful
when dealing with examples which do not require the extra generality.
This paper is an expanded version of the extended abstract [17]. It extends this
earlier version with full proofs, some new results about adhesive categories and a
more complete treatment of the relationship between adhesive categories and HLR-
categories. It also introduces the class of quasiadhesive categories, foreshadowed
in [17].
We shall consider adhesive grammars and quasiadhesive grammars, which are
DPO grammars on, respectively, adhesive and quasiadhesive categories. We prove
the local Church-Rosser theorem and the concurrency theorem without the need
for extra axioms. We shall also examine how adhesive and quasiadhesive categories
fit within the previously conceived general frameworks for rewriting [9, 11]. Many
of the axioms put forward in [11] follow elegantly as lemmas from the axioms of
adhesive categories.
Adhesive and quasiadhesive categories, therefore, provide an abstract setting in
which it is possible to define a theory of DPO rewriting. They are mathematically
elegant and arguably less ad hoc than previous approaches.

Structure of the paper. In Section 1 we recall the definition of extensive categories.


The notion of van Kampen (VK) square is given in Section 2. VK squares are
central in the definition of adhesive categories which are introduced in Section 3.
In Section 4 we state and prove some basic lemmas which hold in any adhesive
category. In Section 5 we show that, in adhesive categories, the subobjects of any
object form a distributive lattice, with the union of two subobjects constructed as
the pushout over their intersection. Quasiadhesive categories are motivated and
514 S. LACK AND P. SOBOCIŃSKI

defined in Section 6. We develop double-pushout rewriting theory in adhesive cate-


gories in Section 7 and offer a comparison with High-Level Replacement Categories
in Section 8. We conclude in Section 9 with directions for future research.
Conventions. Throughout the paper we assume that the reader is familiar with
basic concepts of category theory. We adopt the convention in diagrams of usually
not writing labels for identities, arrows to terminal objects, arrows from initial
objects and (binary) coproduct coprojections. When we do need to name co-
projections, we use i1 and i2 to refer to, respectively, the first and the second
coprojection, letting the context determine exactly which coproduct is discussed.

1. Extensive categories
We shall repeatedly use basic properties of pushouts and pullbacks, and in
particular, the following well-known lemma, sometimes referred to as the pasting
lemma. Since pushouts and pullbacks are dual, there are two versions of the
lemma.
Lemma 1.1. Given a commutative diagram:

A
k /B k /E

l s v
  
C /D /F
u w

Pullback version - If the right square is a pullback then the left square is
a pullback if and only if the whole rectangle is a pullback.
Pushout version - If the left square is a pushout then the right square is
a pushout if and only if the whole rectangle is a pushout.
In the remainder of this section we recall briefly the notion of extensive category [3].
Definition 1.2. A category C is said to be extensive when
(i) it has finite coproducts;
(ii) it has pullbacks along coproduct coprojections;
(iii) given a diagram where the bottom row is a coproduct diagram

X
m /Zo n
Y
r h s
  
A / A+B o B

the two squares are pullbacks if and only if the top row is a coproduct.
The third axiom states what we mean when we say that the coproduct A + B
is “well-behaved”: it includes the fact that coproducts are stable under pullback,
and it implies that coproducts are disjoint (the pullback of the coprojections is
ADHESIVE AND QUASIADHESIVE CATEGORIES 515

initial) and that initial objects are strict.1 It also implies a cancellativity prop-
erty of coproducts: given an isomorphism A + B ∼ = A + C compatible with the
coprojections, one can construct an isomorphism B ∼ = C. For an object Z of an
extensive category, the lattice Sub(Z) of coproduct summands of Z is a Boolean
algebra.
This third axiom is actually equivalent to requiring certain canonical functors
to be equivalences of categories (Prop. 1.3, (i)). This is sometimes taken to be the
definition of extensive categories; apart from elegance, it has the added advantage
of not requiring pullbacks along coprojections.
Proposition 1.3. Given a category C, the following conditions are equivalent for
all objects A and B:
(i) the functor C/A × C/B → C/(A + B), which forms the coproducts of mor-
phisms in C, is an equivalence of categories;
(ii) in a commutative diagram

X
m /Zo n
Y
r h s
  
A / A+B o B

the top row is a coproduct diagram if and only if the squares are pullbacks;
(iii) (when C has pullbacks along coproduct coprojections) the functor

C/(A + B) → C/A × C/B

given by pullback along the coprojections A → A + B and B → A + B is an


equivalence of categories.
The following is a simple lemma about pullbacks in extensive categories; it states
that pullbacks commute with coproducts.
Lemma 1.4. Suppose that C is an extensive category and that diagrams (i)
and (ii) below are pullbacks in C.

f1 +f2
A1
f1
/ B1 A2
f2
/ B A1 + A2 / B1 + B2
g1 u1 g2 u2 g1 +g2 u1 +u2
     
C1 / D1 C2 / D2 C1 + C2 / D1 + D2
v1 v2 v1 +v2

(i) (ii) (iii)

Then diagram (iii) is a pullback in C.

1An initial object is said to be strict precisely when any arrow with the initial object as its
codomain is an isomorphism.
516 S. LACK AND P. SOBOCIŃSKI

Proof. Diagrams (i) and (ii) can also be seen as pullbacks in, respectively, C/D1
and C/D2 . Diagram (iii) is then the image of the two pullbacks under the equiv-
alence C/D1 × C/D2 → C/(D1 + D2 ) of Proposition 1.3, part (i). It is a pullback
since equivalences preserve limits. 

2. Van Kampen squares

In this section we work in a category C with pullbacks. The definition of adhe-


sive category is stated in terms of something called a van Kampen square, which
can be thought of as a “well-behaved pushout”, in a similar way to which coprod-
ucts can be thought of as “well-behaved” in an extensive category; essentially this
means that they satisfy some of the properties of certain pushouts in the category
of sets.
The name van Kampen derives from the relationship between these squares and
the van Kampen theorem in topology, in its “coverings version”, as presented for
example in [2]. This relationship is described in detail in [18].

Definition 2.1 (van Kampen square). A van Kampen (VK) square is a pushout
as in (VK1)

mjjjj C  IIf 
j I$
ujjj
A II c
j
jj B

CA I$ j jj
~ AAf ujj
m
~~ AA g
D n
~~
~ a  b
A@ B mjj C J f
@@ JJJ 
@ }}
}  tjjjj jj $
g @ ~}} n A JJJ d jj j B
D J
g $  tjjj n
jjj
D
(V K1)
(V K2)

which satisfies the following condition, for any commutative cube (VK2) of which
(VK1) forms the bottom face and the back faces are pullbacks: the front faces are
pullbacks if and only if the top face is a pushout. (Another way of stating the
“only if” condition is that such a pushout is required to be stable under pullback.)

Another, equivalent, way of defining a VK square in a category with pullbacks


is as follows. A VK square (VK1) is a pushout which satisfies the property that
given a commutative diagram (i), the two squares are pullbacks if and only if there
ADHESIVE AND QUASIADHESIVE CATEGORIES 517

exists an object C  and morphisms

g n  f m C Df 
A / D o B A o
m
C / B }zz D"
A D B
a
 
d b

a
 
c

b D! z
}z 
/Do Ao /B 
A g n B m C f
g
D n

(i) (ii) (iii)

so that the squares in (ii) are pullbacks and (iii) is a pushout.


By a pushout along a monomorphism we mean a pushout, as in diagram (VK1)
above, in which m is a monomorphism.
A morphism m is said to be regular monomorphism when it is an equalizer

m /B
f
/
A /C
g

of two morphisms. (It follows easily from the universal property of equalizers that
any equalizer is a monomorphism.) Then if m in diagram (VK1) is a regular
monomorphism, we have a pushout along a regular monomorphism, while if it is
a coprojection then we have a pushout along a coprojection.
A crucial class of examples of VK squares is provided by:
Theorem 2.2. In an extensive category, pushouts along coproduct coprojections
are VK squares.
Proof. If m : C → A is a coprojection, say C → C + E, then the diagrams (VK1)
and (VK2) have the form

f 
fffff C KKKf%


f
s fffff
C KK f C + E R c
h B
pppp KKK RRRR hhh hhhh
wpp % u ) thh
C + EN Z v
B 
NNN ss
c+e b
N& yss f ffff C LLLf
f
sffffff
f +E
B+E  % 
C +E R
RR) h h
hhh B
f +E
 thhhh
B+E

(i) (ii)

where the unlabelled arrows are coprojections.


If the top face is a pushout then we may take Z = B  + E  , it then follows that
h = b+e. The front right face of the cube is then a pullback, using extensivity. The
front left face is a pullback using the conclusion of Lemma 1.4; it is constructed
518 S. LACK AND P. SOBOCIŃSKI

by “adding together” two pullbacks, namely the back right face of the cube and
the pullback of the identity on E and e : E  → E.
Conversely, suppose that the front faces are pullbacks. Then, as the bottom
row of the following diagram

E / C + E u /Zo v
B
e c+e h b
   
E / C +E /B+E o B
f +E

is a coproduct diagram and all the squares are pullbacks, we may deduce that the
top row is a coproduct diagram, that is Z = B  + E  . Thus the top face of the
cube is a pushout. 
We have the following important properties of VK squares:
Lemma 2.3. In a VK square as in (VK1), if m is a monomorphism then n is a
monomorphism and the square is also a pullback.
Proof. Suppose that the bottom face of the cube

jjj C HHf#
ujjjj
C HHH jj B
$ u jjjj
f B j
m 
m j C Hf
 ujjj j j H# 
A HHH n jj B
g $
 ujjjjnj
D

is VK. Then the top and bottom squares are pushouts, while the back squares are
pullbacks if m is a monomorphism. Thus the front faces will be pullbacks: the
front right face being a pullback means that n is a monomorphism, and the front
left face being a pullback means that the original square is a pullback. 
There is an alternative way of defining a VK square which involves requiring a
certain functor to be an equivalence of categories. This is akin to the alternative
way of presenting the main axiom of extensive categories (see Prop. 1.3).
m f
Definition 2.4. Given a span A ←− C −→ B, let C/A ×C/C C/B denote the
category with:
− objects: commutative diagrams, as illustrated below, where both squares
are pullbacks;
m f
A o C / B
a c b
  
Ao m C f
/B
ADHESIVE AND QUASIADHESIVE CATEGORIES 519

− arrows: given two such diagrams, as illustrated below, an arrow is a triple


p : A → A , q : C  → C  and r : B  → B  so that a p = a, c q = c and
b r = b, while pm = m q and f  q = rf  .

 

A o q p C  / B
m f
p
p p
p a ppp r ppp
p
xpp m xpp f 
c
xppp
A oNN C  NN / B 
N NNN
b
NNN NNN
NN'  N N'  NN& 
a c b
Ao m C f
/B

Composition and identities are obvious.


For a morphism u : U → V we shall write u∗ : C/V → C/U for the functor
given by pulling back along u. Now, suppose that we have a pushout diagram as
below.
CA
~ AAf
m
~~ AA
~~ ~
A@ B
@@ }
g @
@ }}
~}} n
D
∗ ∗
Then the functors n and g induce a functor

Pb : C/D → C/A ×C/C C/B

which takes an arrow d : D → D and gives the object of C/A ×C/C C/B obtained
by taking the rear faces of the cube (VK2). One constructs the cube by taking
pullbacks, first in order to construct the front faces and then the back faces. It is
easy to verify that this definition defines the functor
On the other hand, if C has pushouts (or pushouts along monomorphisms, if
we assume m to be a monomorphism) we can define a functor

Po : C/A ×C/C C/B → C/D

as follows: starting with the back faces of diagram (VK2) we construct the pushout
of m and f  and obtain a unique arrow d : D → D given by the universal property
of pushouts.
Proposition 2.5. Pb is right adjoint to Po.
The composite PoPb is given by pulling back d : D → D and then forming a
pushout; thus the counit of the adjunction is invertible if and only if, in the cube,
if the vertical faces are pullbacks then the top face is a pushout; in other words, if
the pushout (VK1) is stable under pullback. On the other hand, the unit of the
adjunction is invertible if and only if, whenever the back faces are pullbacks, and
520 S. LACK AND P. SOBOCIŃSKI

the top (and bottom) faces are pushouts, then the front faces are also pullbacks.
We may summarize all this as follows:
Proposition 2.6. For the pushout diagram (VK1), the following conditions are
equivalent:
(i) Pb is an equivalence;
(ii) Po is an equivalence;
(iii) diagram (i) is a VK-square;
(iv) the pushout is stable under pullback, and the functor Pb is essentially surjec-
tive on objects2.
Remark 2.7. It is important to consider what underlying conditions are required
of a category for Pb and Po to exist.
(i) Condition (i) of the proposition makes sense without assuming all pushouts,
and could be taken as the definition of van Kampen square when not all
pushouts are assumed to exist. Furthermore, if m in diagram (VK1) is a
monomorphism, then Po will exist provided that pushouts along monomor-
phisms do so, and the proposition will hold in that generality;
(ii) Condition (ii) makes sense without assuming all pullbacks, however, arbitrary
pullbacks along m and g in the square (VK1) must exist for Pb to exist; recall
that we make no assumptions about g.
We can put a preorder on monomorphisms into an object Z of an arbitrary cat-
egory by defining a monomorphism a : A → Z to be less than or equal to a
monomorphism b : B → Z precisely when there exists an arrow c : A → B such
that bc = a. We shall denote such a preorder by Sub(Z). A subobject (of Z) is an
equivalence class with respect to the equivalence generated by this preorder. For
example, subobjects in Set are subsets while subobjects in Graph are subgraphs.
Let g : A → D be a morphism along which pullbacks of monomorphisms exist,
and let g ∗ : Sub(D) → Sub(A) be the resulting functor. A right adjoint to g ∗ ,
if it exists, is called ∀g . Even if ∀g does not exist, it may exist partially: given a
subobject C of A, we write ∀g (C) for a subobject of D for which D ≤ ∀g (C) if
and only if g ∗ (D ) ≤ C.
Lemma 2.8. In a VK square (VK1) with m a monomorphism, n = ∀g (m).
Proof. Let d : D → D be an arbitrary monomorphism, and form the cube

m jj C JJ f
t jj jjjj $
A JJ c
jj B
$ j
t jjjj n

g D
a  b
i ii
m C f
KKK% 
 tiiii i
K  iiiiii i
A KK d i B
g % t n
D
2A functor F : C → D is said to be essentially surjective on objects when, for every object
D ∈ D, there exists an object C ∈ C such that F C ∼
= D.
ADHESIVE AND QUASIADHESIVE CATEGORIES 521

in which the top and bottom squares are pushouts and the remaining faces are
pullbacks. Observe that g ∗ (d : D → D) is a : A → A. Now D ≤ B if and only if
n is invertible, while g ∗ (D ) ≤ C if and only if m is invertible. But the top face
is both a pushout and a pullback, so m is invertible if and only if n is invertible.
Thus n : B → D has the universal property of ∀g (m : C → A). 

3. Adhesive categories
We shall now proceed to define the notion of adhesive category, and provide
various examples and counterexamples.
Definition 3.1 (adhesive category). A category C is said to be adhesive if
(i) C has pushouts along monomorphisms;
(ii) C has pullbacks;
(iii) pushouts along monomorphisms are VK-squares.

Remark 3.2.
(i) By defining VK-squares as in Proposition 2.6 (i) we could leave out the
assumption of pushouts along monomorphisms, but the existence of such
pushouts would then be a consequence (see Rem. 2.7 (i));
(ii) Similarly, by defining VK-squares as in Proposition 2.6 (ii) we could drop the
assumption of arbitrary pullbacks, but arbitrary pullbacks would then be a
consequence (see Rem. 2.7 (ii)).
Just as the third axiom of extensive categories (Def. 1.2) ensures that coproducts
are “well-behaved”, it is the third axiom of adhesive categories which ensures that
pushouts along monomorphisms are “well-behaved”. This includes the fact that
such pushouts are stable under pullback.
Since every monomorphism in Set is a coproduct coprojection, and Set is
extensive, we immediately have:
Example 3.3. Set is adhesive.
Observe that the restriction to pushouts along monomorphisms is necessary:
there are pushouts in Set which are not VK squares. Consider the underlying set
of the 2-element abelian group Z2 (the argument works for any non-trivial group).
In the diagram
π1 i Z2 × Z2OOπ2
ii OO'
tiiii +
Z2 G gg g Z2
GG ggg
# sggggggg
1

i Z
ii 2 PPPP
 tiiii iii PP' 
1 HH ff f ff1
HH  f
# sffffffff
1
522 S. LACK AND P. SOBOCIŃSKI

both the bottom and the top faces are easily verified to be pushouts and the rear
faces are both pullbacks. However, the front two faces are not pullbacks.
Even with the restriction to pushouts along a monomorphism, many well-known
extensive categories fail to be adhesive.
Example 3.4. The categories Pos, Top, Gpd and Cat are not adhesive.
Proof. Write [n] for the ordered set {0 ≤ 1 ≤ . . . n − 1}. The pushout square

0 / [2]
[1]
1  
[2] / [3]

in Pos is not van Kampen, since it is not stable under pullback along the map
[2] → [3] sending 0 to 0 and sending 1 to 2. Thus Pos is not adhesive. The
same pushout square, regarded as a pushout of categories, shows that Cat is not
adhesive. For the case of Gpd, one simply replaces the poset [n] by the groupoid
with n objects and a unique isomorphism between each pair of objects.
Finally consider the category Top of topological spaces. A finite poset induces
a finite topological space on the same underlying set: the topology is determined
by specifying that y is in the closure of x if and only if x ≤ y. Applying this process
to the previous example yields an example showing that Top is not adhesive. 
Since the definition of adhesive category only uses pullbacks, pushouts, and
relationships between these, we have the following constructions involving adhesive
categories:
Proposition 3.5.
(i) If C and D are adhesive categories then so is C × D.
(ii) If C is adhesive then so are C/C and C/C for any object C of C.
(iii) If C is adhesive then so is any functor category [X, C].
Because Set is adhesive, part (iii) of the proposition implies the following.
Corollary 3.6. Any presheaf topos [X, Set] is adhesive.
In particular, the category Graph of directed graphs is adhesive. Indeed, if C
is adhesive, then so is the category Graph(C) = [· ⇒ ·, C] of internal graphs in C.
Part (ii) implies that categories of typed graphs [1], coloured (or labelled)
graphs [5], ranked graphs [15] and hypergraphs [11], considered in the literature
on graph grammars, are adhesive.
As a consequence, all proof techniques and constructions in adhesive categories
can be readily applied to any of the aforementioned categories of graphs. In fact,
more generally, we have:
Proposition 3.7. Any elementary topos is adhesive.
This is somewhat harder to prove than the result for presheaf toposes; the proof
can be found in [18].
ADHESIVE AND QUASIADHESIVE CATEGORIES 523

Part (ii) of Proposition 3.5 also allows us to construct examples of adhesive


categories which are not toposes.
Example 3.8. The category Set∗ = 1/Set of pointed sets (or equivalently, sets
and partial functions) is adhesive, but is not extensive, and therefore, is not a
topos.
Proof. In the category of pointed sets, the initial object is the one-point set 1.
Since every non-initial object has a map into 1, the initial object is not strict, and
so the category is not extensive [3], Proposition 2.8. 

4. Basic properties of adhesive categories


In this section we prove several simple lemmas which hold in any adhesive
category. Lemma 4.1 describes the relationship between adhesive categories and
extensive categories. Lemmas 4.2, 4.3, 4.5 , 4.6 and 4.7 shed some light on pushouts
in adhesive categories.
Lemma 4.1. An adhesive category is extensive if and only if it has a strict initial
object.
Proof. In an extensive category the initial object is strict [3], Proposition 2.8. On
the other hand, in an adhesive category with strict initial object, any arrow with
domain 0 is a monomorphism. Consider the cube

gg 0 HH
ggggg H#
sggggg
X OOO iii Y
O iii
m O' tiiini
Z
r  s

g gg gg 0 HH
 sggggg g H# 
A OOO t i
ii Bi
i
O'  tiiiij
A+B

in which the bottom square is a pushout along a monomorphism, while the back
squares are pullbacks since the initial object is strict. By adhesiveness, front
squares are pullbacks if and only if the top squares is a pushout; but this says
that the front squares are pullbacks if and only if the top row of these squares is
a coproduct (Z = X + Y). 
As explained previously, there are adhesive categories which are not extensive –
for instance Set∗ (Ex. 3.8) which doesn’t have a strict initial object. Conversely,
there are many extensive categories which are not adhesive; for instance Pos, Top
and Cat (Ex. 3.4).
The following two lemmas are used extensively in the literature on algebraic
graph rewriting. Indeed, they are usually assumed as axioms (see [9] and Sect. 8
524 S. LACK AND P. SOBOCIŃSKI

below) in attempts at generalizing graph rewriting. They hold in any adhesive


category by Lemma 2.3.
Lemma 4.2. Monomorphisms are stable under pushout in any adhesive category.
Lemma 4.3. In any adhesive category, pushouts along monomorphisms are also
pullbacks.
The following definition introduces the notion of pushout complement [14],
which is vital in algebraic approaches to graph rewriting.
Definition 4.4. Let m : C → A and g : A → B be arrows in an arbitrary category
(m is not assumed to be a monomorphism).

C
~
~~
m f
~~ ~
A@ B
@@
g @
@
~ n
D

A pushout complement of the pair (m, g) consists of arrows f : C → B and


n : B → D for which the resulting square commutes and is a pushout, as illus-
trated in the diagram above. We shall sometimes refer to pushout complements
of monomorphisms: this refers to pushout complements of pairs (m, g) where m
is a monomorphism.
The following lemma is a crucial ingredient in many applications of graph rewrit-
ing. It has also been assumed as an axiom [11] in order to prove the concurrency
theorem (cf. Th. 7.11). It is important mainly because it assures that once an
occurrence of a left hand side of a rewrite rule is found within a structure, then
the application of the rewrite rule results in a structure which is unique up to
isomorphism (cf. Sect. 7). In other words, rewrite rule application is functional
up to isomorphism.
Lemma 4.5. Pushout complements of monomorphisms (if they exist) are unique
up to isomorphism. In other words, given two pushouts along a monomorphism
m as illustrated below, there exists an isomorphism ϕ : B → B  such that n ϕ = n
and ϕf = f  .
f
C
f
/B C / B

m n m n
   
A /D A /D
g g

Proof. Using Lemma 2.8, both n and n have the universal property of ∀g (m),
and so we have n ∼
= n in Sub(D), meaning that there is an isomorphism ϕ :
B → B such that n ϕ = n. The fact that ϕf = f  follows because n is a


monomorphism. 
ADHESIVE AND QUASIADHESIVE CATEGORIES 525

The following lemma will be used in Section 8 to show that adhesive categories
are high-level replacement categories:
Lemma 4.6. Consider a diagram

A
k /B/ r /E
 
l s v
  
C /D/ /F
u w

in which the marked morphisms are monomorphisms, the exterior is a pushout


and the right square is a pullback. Then the left square is a pushout, and so all
squares are both pullbacks and pushouts.
Proof. This amounts to stability of the exterior pushout under pullback along
w : D → F . We illustrate this in the diagram below, where we leave the identity
morphisms unlabelled.

l ~~
~ A AA k
~ AA
~~~  A
C Au ~ A A B A
AA~~ AAk AA
Ac AA AA
 ~~~ A 
C A D A B AAr ~ B
AA AA }
A AA }} s r
u A  ~}} AA 
D A D ~E
AA }}
A
w A  ~}} v
w }
F

The following lemma is of a similar nature (the difference between the diagrams
of Lems. 4.6 and 4.7 is that different morphisms are assumed to be mono) and was
used in [24]; the proof is straightforward and similar to the proof of Lemma 4.6.
Lemma 4.7. Consider a diagram

A/ /B/ /E
k r

l s v
  
C/ u
/D/
w
/F

in which the marked morphisms are monomorphisms, the exterior is a pushout,


the right square is a pullback, and morphisms k, r, u and w are monomorphisms.
Then the left square is a pushout.
The following lemma shows that all monomorphisms in adhesive categories are
regular.
526 S. LACK AND P. SOBOCIŃSKI

Lemma 4.8. Monomorphisms are regular.


Proof. Given m : A → B, construct the pushout of m with itself:

A
m /B
m
  n1
B /C
n2

Since m is a monomorphism, the diagram above is also a pullback (Lem. 4.3). It


is now easy to show that m is the equalizer of n1 and n2 . Indeed, suppose we’re
given a morphism p : X → B such that n1 p = n2 p. Using the pullback property,
there exists a unique morphism h : X → A such that mh = p. 
The following lemma is an easy corollary of the former, but we include a simple
direct proof.
Lemma 4.9. Adhesive categories are balanced. That is, a morphism which is both
a monomorphism and an epimorphism is an isomorphism.
Proof. Suppose that f : A → B is both a monomorphism and an epimorphism.
Because it is an epimorphism, the diagram

A
f
/B
f
 1
B /B
1

is a pushout. Since f is a monomorphism, using Lemma 4.3 we can conclude that


it is also a pullback, but this implies that f is invertible. 

5. Algebra of subobjects
Recall that the monomorphisms into an object Z form a preorder Sub(Z),
and that a subobject refers to an equivalence class with respect to the resulting
equivalence relation. Thus the subobjects of Z organise themselves in a poset.
Subobject intersection (resp. union) refers to the meet (resp. join) in this poset.
If a poset has both (binary) meets and joins we say that it is a lattice, a lattice is
distributive when the meets distribute over the joins.
Here we shall demonstrate that, in adhesive categories, the union of two sub-
objects can be constructed as the pushout over their intersection. This provides
further evidence of how pushouts behave in adhesive categories, as well as making
more precise the intuition that the pushout operation “glues together” two struc-
tures along a common substructure. As a corollary, it follows that in an adhesive
category the lattices of subobjects are distributive.
Let C be an adhesive category, and Z a fixed object of C. Then Sub(Z) has
products (=intersections), given by pullback in C. It has a top object, given
ADHESIVE AND QUASIADHESIVE CATEGORIES 527

by Z itself. If C has a strict initial object 0, then the unique map 0 → Z is a


monomorphism, and is the initial object of Sub(Z).
Theorem 5.1. For an object Z of an adhesive category C, the category Sub(Z)
of subobjects of Z has binary coproducts: the coproduct of two subobjects is their
pushout in C over their intersection.
Proof. We shall show how to form binary coproducts (=unions) in Sub(Z). Let
a : A → Z and b : B → Z be subobjects of Z, and form the intersection A∩B → Z,
with projections p : A ∩ B → A and q : A ∩ B → B; and now the pushout

A∩B
q
/B
p v
 
A /C
u

in C. Let c : C → Z be the unique map satisfying cu = a and cv = b. We shall


show that c is a monomorphism, and so that C is the coproduct A ∪ B in Sub(Z)
of A and B. Suppose then that f, g : K → C satisfy cf = cg. Form the following
pullbacks

L1
l1
/Ko l2
L2 M1
m1
/Ko m2
M2 N11
m11
/ M1 o m12 N12
f1 f f2 g1 g g2 l11 m1 l
         12
A /Co B A /Co B LO 1
l1
/Ko l2
LO 2
u v u v O
l21 m2 l22

N21 / o
m21 M2 m22 N22

and note that each of the following pairs are the coprojections of a pushout, hence
each pair is jointly epimorphic: (l1 , l2 ), (m1 , m2 ), (m11 , m12 ), and (m21 , m22 ). We
are to show that f = g; to do this, it will suffice to show that f m1 = gm1 and
f m2 = gm2 ; we shall prove only the former, leaving the latter to the reader. To
show that f m1 = gm1 it will in turn suffice to show that f m1 m11 = gm1 m11 and
f m1 m12 = gm1 m12 .
First note that af1 l11 = cuf1 l11 = cf l1 l11 = cgl1 l11 = cgm1 m11 = cug1 m11 =
ag1 m11 , so that f1 l11 = g1 m11 since a is monic; thus f m1 m11 = f l1 l11 = uf1 l11 =
ug1 m11 = gm1 m11 as required.
On the other hand, bf2 l12 = cvf2 l12 = cf l2 l12 = cgl2 l12 = cgm1 m12 =
cug1 m12 = ag1 m12 , so by the universal property of the pullback A ∩ B, there
is a unique map h : N12 → A ∩ B satisfying ph = g1 m12 and qh = f2 l12 . Now
f m1 m12 = f l2 l12 = vf2 l12 = vqh = uph = ug1 m12 = gm1 m12 , and so f m1 = gm1
as claimed. As promised, we leave the proof that f m2 = gm2 to the reader, and
deduce that f = g, so that c is monic. 
Since pushouts are stable it follows that intersections distribute over unions:
Corollary 5.2. The lattice Sub(Z) is distributive.
528 S. LACK AND P. SOBOCIŃSKI

Proof. It is easy to verify that the front and back faces of the cube below are
pullbacks. Because the bottom face is a pushout, we use adhesivity in order to
conclude that the top face is a pushout, which in turn implies that A ∩ (B ∪ C) =
(A ∩ B) ∪ (A ∩ C).

ccccc A ∩ B ∩ CUU*
qcccccccc
A ∩ B UU* dddd A ∩ C
qddddddd
A ∩ (B ∪ C)

 cccccccc ccccccc B ∩ C UUUUU* 
B VqcVVVV cccccccc C
*  qcccccccc
B∪C


6. Quasiadhesive categories
The notion of adhesivity is too strong for some relevant examples, and therefore,
it is useful to study weaker notions. In this section, we introduce the class of
quasiadhesive categories. Quasiadhesive categories have well-behaved pushouts
along regular 3 monomorphisms, that is, only such pushouts are required to be
VK-squares.
Definition 6.1. A category C is said to be quasiadhesive if
(i) C has pushouts along regular monomorphisms;
(ii) C has pullbacks;
(iii) pushouts along regular monomorphisms are VK-squares.
Since regular monomorphisms are monomorphisms, the class of quasiadhesive cat-
egories includes the class of adhesive categories. In fact, we have that
Proposition 6.2. Adhesive categories are precisely the quasiadhesive categories
in which every monomorphism is regular.
The conclusion of the Proposition 6.2 raises the question of whether it is useful
to study the stronger property of adhesivity when quasiadhesive categories are
strictly more general. We believe that the answer is positive due to the added
simplicity of not having to consider regularity when it is not required.
Although quasiadhesive categories are strictly more general than adhesive cat-
egories, the categories mentioned in Example 3.4 still fail to be quasiadhesive: in
each case the pushout in question is actually the pushout of two regular monomor-
phisms.
Just as an adhesive category is extensive iff it has a strict initial object (Lem. 4.1),
we have:
Lemma 6.3. A quasiadhesive category is extensive if and only if it has a strict
initial object.
3Recall that a regular monomorphism is one that is an equalizer of two morphisms.
ADHESIVE AND QUASIADHESIVE CATEGORIES 529

6.1. Properties of quasiadhesive categories

It will be useful to examine the properties of regular monomorphisms in quasi-


adhesive categories. First, recall some basic facts about regular monomorphisms
which hold in any category.
Proposition 6.4. The following hold in any category C:
(i) if mn is a regular monomorphism and m is arbitrary then n is a regular
monomorphism;
(ii) if C has pullbacks then the class of regular monomorphisms is stable under
pullback.
An important property of regular monomorphisms in quasiadhesive categories is
that the composite of regular monomorphisms is a regular monomorphism; this is
not the case in general (non-quasiadhesive) categories – for example it is not true
in Cat. Another crucial property which holds in quasiadhesive categories is that
regular monomorphisms are stable under pushouts.
Lemma 6.5. The following hold in any quasiadhesive category C:
(i) regular monomorphisms are stable under pushout;
(ii) regular monomorphisms are closed under composition.
Proof.
(i) Suppose that diagram (a) below is a pushout and that m is a regular
monomorphism.

miiii C JJJ f
i
tiiii %
A LL m
i ii iB
m }
CAf
AA L
g & tiiii n
~}} D
AA B
p  n
q iA g
AA }  tiiii ii i JJJ
g ~}}n $ 
D A KKK r j jj jD
j
%  tjjj s
h
D
(a)
(b)

Then m is the equalizer of p and q, obtained by constructing the pushout


illustrated as the back left face of diagram (b). Now there exists a (unique)
morphism t : A → A such that tp = idA and tq = idA .4 It follows that
p and q are regular (for instance, p is easily checked to be the equaliser
of idA and pt). Hence we are able to complete the cube in (b) so that
all faces are pushouts. Indeed all except possibly the front right face are

4Thus p and q are said are split monomorphisms; a morphism is said to be a split monomor-
phism precisely when it has a left inverse. It follows easily that such a morphism is mono and,
moreover, regular.
530 S. LACK AND P. SOBOCIŃSKI

pushouts along regular monomorphisms, hence VK squares, hence pull-


backs.
Since the bottom square is VK, it follows that the front right face is also
a pullback, which implies that n is the equalizer of r and s.
(ii) Recall from the proof of Lemma 4.8 that if a pushout of a morphism with
itself is also a pullback then the morphism is a regular monomorphism.
Now, if m and n are regular monomorphisms, form the pushouts in
m/
Bp /
n
A C
m   r
B
q
/D t/ E
n  u v
C /F / G
s w

and use the fact (i) that regular monomorphisms are stable under pushout
to deduce that all four squares are VK, hence pullbacks, and so that the
composite square is a pullback, and so finally that nm is the equalizer of
vr and ws.

One also has the closure properties shown for adhesive categories. In particular:
Proposition 6.6. Let C and D be quasiadhesive categories, X an arbitrary
category, and C an object of C. Then:
(i) C × D is quasiadhesive;
(ii) C/C is quasiadhesive.
If moreover C has equalizers then also
(iii) C/C is quasiadhesive;
(iv) the functor category [X, C] is quasiadhesive.
Proof. We rely on the facts that pushouts and pullbacks are constructed pointwise
in all of the above cases, the class of regular monomorphisms in C × D is the
product of the regular monomorphisms of C and D, the regular monomorphisms
of C/C coincide with those of C. We use the hypothesis that C has equalizers to
ensure that the regular monomorphisms of C/C and [X, C] are formed as in C. 
We can also say something about the subobjects in quasiadhesive categories.
Proposition 6.7. Given any two regular subobjects in the category of subobjects
Sub(Z), their coproduct is calculated as the pushout over their intersection. In
general, however, there seems to be no reason why the resulting subobject should
be regular.

6.2. Examples

Binary relations. A simple, yet important, example of a quasiadhesive category


is the category BRel of binary relations. The objects of this category are injective
ADHESIVE AND QUASIADHESIVE CATEGORIES 531

functions m : E → V × V , where E, V are arbitrary sets and V × V denotes the


cartesian product of V with itself. Morphisms are commutative squares

E
fE
/ E
m 
 m
V ×V / V  × V .
fV ×fV

Computer scientists may be familiar with this category in another guise, that is,
the category of graphs without edge identities; or in other words, graphs with at
most one edge from one vertex to another. More formally, the category BRel is
easily seen to be equivalent to the category Gr where the objects are the class
{ V, E | E ⊆ V × V } and the morphisms are ordinary graph homomorphisms.
It is routine to verify that BRel is complete and cocomplete, indeed, BRel is a
full reflective subcategory of Graph, the category of “ordinary” graphs and graph
morphisms. Limits are calculated pointwise, and a consequence, a mono in BRel
is a morphism where both fE and fV are injective. Regular monomorphisms in
BRel are easily characterised as precisely the graph monomorphisms which reflect
edges, or more abstractly:
Proposition 6.8. A monomorphism is regular in BRel iff the corresponding
square of monos is a pullback diagram.
Notice that a simple corollary of Proposition 6.8 is that BRel is not a topos,
since in toposes every monomorphism is regular. For the same reasons, it is not
adhesive (Lem. 4.8). Indeed, we shall demonstrate a simple counterexample of a
pushout along a mono which fails to be VK, let 1 denote the object 0 → 1 × 1 (the
discrete graph on one vertex) and let 1 denote the object 1 → 1 × 1 (the complete
graph on one vertex). Then clearly, the diagram below is a pushout along a mono
in BRel, but it is not a pullback.

1@
~~~ @@@
~~
1 ? 1
?? 
 
1

Lemma 6.9. BRel is quasiadhesive.


Proof. See Remark 6.15. 
Algebraic specifications. Here we shall consider the category Spec [9] of alge-
braic specifications and algebraic specification morphisms. We begin by recalling
the definition of Spec as given in [9]. First we recall a simple notion of multi-sorted
signature for an algebraic specification.
Definition 6.10. A signature Σ = S, P, dom, cod where S is a set of sorts,
P is a set of operator symbols, dom : P → S ∗ is a map giving each operator
532 S. LACK AND P. SOBOCIŃSKI

symbol a possibly empty string over S and cod : P → S gives each operator
a sort. An operator σ ∈ P with dom(σ) = s1 . . . sn and cod(σ) = s shall be
written σ : s1 . . . sn → s. A signature morphism f : Σ0 → Σ1 consists of a
maps fS : S0 → S1 and fP : P0 → P1 so that given σ : s1 . . . sn → s we have
fP (σ) : fS (s1 ) . . . fS (sn ) → fS (s). Let Sig denote the category of signatures and
signature morphisms.

Fixing a particular signature Σ and a set X = s∈S Xs of variables for each
sort s of Σ, one constructs the set of all terms of each sort s with variables from
X, denoted TΣ (X)s , in a standard way.
Definition 6.11. An equation is a pair of terms t1 , t2 ∈ TΣ (X)s , denoted t1 = t2 .
A positive conditional equation is an expression of the form e1 ∧ · · · ∧ en ⇒ e
where e1 , . . . , en , e are equations.
A signature morphism f : Σ0 → Σ1 induces a map TΣ0 (X)s → TΣ1 (X)fS (s) , also
called f , in the obvious way. This map clearly extends to equations, so that given
positive conditional equation e of sort s we have a positive conditional equation
f (e) of sort fS (s).
Definition 6.12. An algebraic specification S = Σ, E consists of a signature Σ
and a set E of positive conditional equations over Σ. An algebraic specification
morphism f : S0 → S1 consists of a signature morphism fΣ : Σ0 → Σ1 so that
for every e ∈ E0 we have f (e) ∈ E1 . Algebraic specifications and their morphisms
form the category Spec.
An algebraic specification morphism is injective if and only if the underlying
signature morphism is injective – which is the same as saying the underlying
functions on the sets of sorts and operators are injective. An algebraic specification
morphism f : S0 → S1 is strict if, given an arbitrary positive conditional equation
e, we have f (e) ∈ E1 then e ∈ E0 .
Proposition 6.13. The classes of regular monomorphisms and strict injective
morphisms in Spec coincide.
The reader is directed to [9] Fact 6.3.6, for details of how pushouts are con-
structed in Spec. Roughly, one constructs a pushout pointwise on the sorts and
operators of the signature, as well as the equations. Pullbacks of arbitrary mor-
phisms are similarly constructed “pointwise”.
Lemma 6.14. Spec is quasiadhesive.
Proof. See Remark 6.15. 
Remark 6.15. We have omitted the proofs of Lemmas 6.9 and 6.14. While it is
possible to prove the VK property directly for pushouts along regular monos using
only the descriptions of pushouts, pullbacks, and regular monos in BRel and Spec,
the resulting proofs are tedious and unenlightening. Moreover, it turns out that
both the examples fit into a general framework of quasiadhesive categories [18],
making such proofs unnecessary.
ADHESIVE AND QUASIADHESIVE CATEGORIES 533

7. Double-pushout rewriting
Here we shall recall the basic notions of double-pushout rewriting [14, 22] and
show that it can be carried out within an arbitrary quasiadhesive category. In
the quasiadhesive context, we work with regular monomorphisms; recall that if we
happen to be in an adhesive category, every monomorphism is regular.
Definition 7.1 (production). A production p is a span

Lo /R
l r
K (1)

in C. We shall say that p is left-linear when l is a regular monomorphism, and


linear when both l and r are regular monomorphisms. We shall let P denote an
arbitrary set of productions and let p range over P.
In order to develop an intuition of why a production is defined as a span, we
shall restrict our attention to linear production rules. One may then consider K as
a substructure of both L and R. We think of L and R as respectively the left-hand
side and the right-hand side of the rewrite rule p. In order to perform the rewrite,
we need to match L as a substructure of a redex C. The structure K, thought of
as a substructure of L, is exactly the part of L which is to remain invariant as we
apply the rule to C.
Thus, an application of a rewrite rule consists of three steps. First we must
match L as a substructure of the redex C; secondly, we delete all parts of the
redex matched by L which are not included in K. Thirdly, we add all of R which
is not contained in K, thereby producing a new structure D. The deletion and
addition of structure is handled, respectively, by finding a pushout complement
and constructing a pushout.
Definition 7.2 (gluing conditions). Given a production p as in (1), a match in C
is a morphism f : L → C. A match f satisfies the gluing conditions with respect
to p precisely when there exists an object E and morphisms g : K → E and
v : E → C such that
Lo
l
K
f g
 
Co v E
is a pushout diagram. (In other words, there exists a pushout complement of (l, f )
in the sense of Def. 4.4.)
Definition 7.3 (derivation). Given an object C ∈ C and a set of productions P,
we write C p,f D for a production p ∈ P and a morphism f : L → C if (a) f
satisfies the gluing conditions with respect to l, and (b) there is a diagram

Lo /R
l r
K
f g h
  
Co v E w
/D

in which both squares are pushouts.


534 S. LACK AND P. SOBOCIŃSKI

The object E in the above diagram can be thought of as a temporary state in


the middle of the rewrite process. Returning briefly to our informal description, it
is the structure obtained from C by deleting all the parts of L not contained in K.
Recall from Lemma 4.5 that if l is a regular monomorphism (that is, if p is left-
linear) then E is unique up to isomorphism. Indeed, if p is a left-linear production,
C p,f D and C p,f D then we must have D ∼ = D . This is a consequence
of Lemma 4.5 and the fact that pushouts are unique up to isomorphism.

Definition 7.4 (adhesive and quasiadhesive grammars). A quasiadhesive gram-


mar G is a pair C, P where C is a quasiadhesive category and P is a set of
linear productions. If C is in fact adhesive, we call G an adhesive grammar.

Assuming that all the productions are linear allows us to derive a rich rewriting
theory on quasiadhesive categories. Henceforth we assume that we are working
over an arbitrary quasiadhesive grammar G.

7.1. Local Church-Rosser theorem

As we shall explain in Section 8, adhesive and quasiadhesive categories naturally


fall into the framework of high-level replacement categories. In particular, we get
the local Church-Rosser theorem [9,16] in the setting of quasiadhesive or adhesive
grammars.
Before presenting this theorem we recall briefly the notions of parallel-
independent derivation and sequential-independent derivation. The reader may
wish to consult [5] for a more complete presentation.

Definition 7.5. A parallel-independent derivation is a pair of derivations

C p1 ,f1 D1 and C p2 ,f2 D2

as illustrated in diagram (2) which satisfy an additional requirement, namely the


existence of morphisms r : L1 → E2 and s : L2 → E1 which render the diagram
commutative, in the sense that v2 r = f1 and v1 s = f2 .

R1 o / L1 L2 o / R2
r1 l1 l2 r2
K1 r s K2
@ ~
@@
h1 g1
@@ ~~~ f2 g2 h2 (2)
  w f1 ~~ '  
D1 o w1 E1 v1
/Co
v2 E2 w2
/ D2

Definition 7.6. Similarly, a sequential-independent derivation, illustrated in dia-


gram (3), is a derivation

C p1 ,f1 D1 p2 ,f2 D


ADHESIVE AND QUASIADHESIVE CATEGORIES 535

where there additionally exist arrows r : R1 → E3 and s : L2 → E1 such that


w1 s = f2 and v3 r = h1 .

L1 o / R1 L2 o / R2
l1 r1 l2 r2
K1 r s K2
B |
BBB | g2 h2
}||| f2
f1 g1 (3)
 w B!
 h1
'  
Co v1 E1 w1
/ D1 o
v3 E3 w3
/D

If the underlying category has coproducts and given a pair of productions

p1 = L 1 o / R1 and p2 = L2 o / R2 ,
l1 r1 l2 r2
K1 K2

we may construct a production

l1 +l2 r1 +r2
p1 + p2 = L 1 + L 2 o K1 + K2 / R1 + R2 .

Note that if l1 and l2 are regular monomorphisms, l1 + l2 need not even be a


monomorphism, and similarly for r1 and r2 . If this is required one could further
suppose C to be extensive, in which case the coproduct of two regular monomor-
phisms would indeed be a regular monomorphism.
The statement of the theorem below differs from those previously published in
the literature in that we do not need coproducts to establish the equivalence of
the first 3 items.
Theorem 7.7 (local Church-Rosser). The following are equivalent:
(1) C p1 ,f1 D1 and C p2 ,f2 D2 are parallel-independent derivations;
(2) C p1 ,f1 D1 and D1 p2 ,f2 D are sequential-independent deriva-
tions;
(3) C p2 ,f2 D2 and D2 p1 ,f1 D are sequential-independent deriva-
tions.
If moreover C has coproducts then we may add the so-called parallelism theorem,
which states that item (4), below, is equivalent to the above three items.
(4) C p1 +p2 ,[f1 ,f2 ] D is a derivation.
Proof. (1)⇒(2): Let C p1 ,f1 D1 and C p2 ,f2 D2 be parallel-independent
(see Def. 7.5 and associated diagram) derivations. Form the pullback (i) below.

E1 o L1 o L1 o / R1
e1 l1 l1 r1
G K1 K1 K1
r r (†) k1 k1 t
v1 e2
  g1
   
 E2 o E2 o Go /G / E3
Co
g2 K2 e2 k2 K2 K2 k2 e3
v2 E2
v2 l2 v2 () e1 (‡) l2 r2 e4 w3
        
Co v1 E1 o s L2 Co v1 E1 o s L2 R2 u
/ E4
w4
/D

(i) (ii) (iii) (iv)


536 S. LACK AND P. SOBOCIŃSKI

The two regions in (ii) are pushouts [cf. diagram (3)]. Combining the two diagrams
gives (iii), with k1 and k2 obtained by the universal property of (i) and satisfying
e2 k1 = g1 and e1 k2 = g2 . Regions (†), (‡), and () are pushouts by Lemma 4.6,
and one now goes on to construct (iv) by taking successive pushouts.
The sequential-independent (see Def. 7.6 and associated diagram) derivation
C p1 ,f1 D1 p2 ,f2 D may now be constructed with the pushout squares
below.
L1 o / R1 L2 o / R2
l1 r1 l2 r2
K1 K2
r k1 t s k2 u
     
E2 o e2 G e3 / E3 E1 o e1 G e4 / E4
v2 e1 v3 w1 e3 w4
     
Co v1 E1 w1
/ D1 D1 o v1 E3 w3
/D

(2)⇒(1): Suppose that C p1 ,f1 D1 and D1 p2 ,f2 D are sequential-
independent derivations. Form the pullback (v) below.

F
e3
/ E3 K1
r1
/ R1 K1
r1
/ R1 K1
l1
/ L1
 k1 (†)  k1 t
e1

v3

g1
r  r  
g2 / E3 /F / E3 /F / E2
E1 / D1 K2 K2 k2 e3 K2 k2 e2
w1
l2 v3 l2 (‡) e1 () v3 r2 e4 w3
        
L2 / E1 / D1 L2 / E1 / D1 R2 / E4 / D2
s w1 s w1 u w4

(v) (vi) (vii) (viii)

The two regions in (vi) are pushouts [cf. diagram (3)]. Combining the two dia-
grams gives (vii), with k1 and k2 obtained by the universal property of (i) and
satisfying e3 k2 = g2 and e1 k1 = g1 . Regions (†), (‡), and () are pushouts by
Lemma 4.6, and one now goes on to construct (viii) by taking successive pushouts.
The parallel independent derivations C p1 ,f1 D1 and C p2 ,f2 D2 may
now be constructed with the pushout squares below.

L1 o / R1 L2 o / R2
l1 r1 l2 r2
K1 K2
r k1 t  k2 u
   s
  
E2 o e2 F e3 / E3 E1 o e1 F e4 / E4
v2 e1 w1 e2 w4
     
Co v1 E1 w1
/ D1 D1 o v1 E3 w3
/ D2

In fact, the proof that (1)⇒(2) remains valid more generally in the context of
left-linear productions, but the proof of the converse requires linearity.
The proof of (1)⇔(3) is similar.
To prove (1)⇔(4), we first note that, in a quasiadhesive category with coprod-
ucts, the objects C and D obtained in (iii) and (iv) can be obtained as the pushouts
ADHESIVE AND QUASIADHESIVE CATEGORIES 537

in (ix) and (x) below.

l1 +l2 r1 +r2
L1 + L2 o K1 + K2 K1 + K2 / R1 + R2
[f1 ,f2 ] [k1 ,k2 ] [k1 ,k2 ] [h1 ,h2 ]
   
Co c G G d
/D

(ix) (x)

Starting with parallel-independent derivations C p1 ,f1 D1 and C p2 ,f2


D2 , we construct diagrams (iii) and (iv) from which, using the translation outlined
above, we get diagrams (ix) and (x), which in turn amount to a derivation C
p1 +p2 ,[f1 ,f2 ] D. Similarly, starting with a derivation C p1 +p2 ,[f1 ,f2 ] D, we
obtain diagram (ix), from which we obtain diagram (iii). This gives us enough data
to conclude that C p1 ,f1 D1 and C p2 ,f2 D2 are parallel-independent. 

7.2. Concurrency theorem

The original concurrency theorems were proved for graph grammars [7] and later
generalized to high-level replacement categories (cf. Sect. 8) in [11] which satisfy
additional axiom sets, there called HLR2 and HLR2*. Roughly, the concurrency
theorem states that given two derivations in a sequence, together with information
about how they are related, one may construct a single derivation which internal-
izes the two original derivations and performs them “concurrently”. Moreover,
one may reverse this process and deconstruct a concurrent derivation into two
related sequential derivations. Here we state and prove the concurrency theorem
for quasiadhesive or adhesive grammars without the need for extra axioms.
We shall first need to recall the notions of dependency relation, dependent
derivation and concurrent production.

Definition 7.8 (dependency relation). Suppose that p1 and p2 are linear pro-
ductions. A dependency relation for p1 , p2 is an object X together with arrows
s : X → R1 and t : X → L2 for which r1 , s, t, and l2 can be incorporated into a
diagram

XC
CCCt
zzz
s
z
} !
K1 / R1 B h f  L2 o K2
r1 l2
(4)
BBB 1 2 |
|
~||
 
g1   g2
E1 / D o E2
 
w1 v2

in which all three regions are pushouts.


538 S. LACK AND P. SOBOCIŃSKI

Definition 7.9 (dependent derivation). Consider a derivation C p1 ,f1 D1


p2 ,f2 D as illustrated in (i) below

XD
DDDt
zzz
s
| z "
K1 / R1 C h f  L2 o K2
r1 l2
C CC |
L1 o K1 / R1 o l2 K2 r2 / R2 |
l1 r1 1 2
g1 
}||

DDDh1 f2 { L2 !  g2
g1
 D! }{{{  g2 E1  /  o E2 
f1
  h2 w1
D
v2
o
C v1 E1 / D1 o E3 w3 D /
w1 v3
e1
 d  e2
E1 / D1 o E2
w1 v2

(i) (ii)

and a dependency relation X for p1 , p2 . The derivation is said to be X-dependent


if h1 s = f2 t and there exist morphisms e1 : E1 → E1 and e2 : E2 → E2 satisfying
e1 g1 = g1 and e2 g2 = g2 , and if moreover the unique map d : D → D1 satisfying
dh1 = h1 and df2 = f2 also satisfies dw1 = w1 e1 and dv2 = v2 e2 (see (ii)).

Definition 7.10 (concurrent production). Given a dependency relation X for


p1 , p2 , the X-concurrent production p1 ;X p2 is the span

v1 u w2 v 
C o P / D

obtained by taking the bottom row of the following extension of diagram (4)

XC
CCCt
zzz
s
z
} !
L1 o K1 / R1 B h f  L2 o K2 / R2
l1 r1 l2 r2
BBB 1 2
| |
f1
~||

†  g1 g2  ‡
  h2
C o E1 
c
/ D  o E
; 2
/ D
v1 
w1 
v2 w2 

u P v

in which † and ‡ are pushouts and  is a pullback.


An X-concurrent derivation C p1 ;X p2 ,f D is a derivation where p1 ;X p2 is
an X-concurrent production.

Theorem 7.11 (concurrency theorem).


(1) Given an X-dependent derivation C p1 ,f1 D1 p2 ,f2 D there exists
an X-concurrent derivation C p1 ;X p2 D.
(2) Given an X-concurrent derivation C p1 ;X p2 D, there exists an X-
dependent derivation C p1 ,f1 D1 p2 ,f2 D.
ADHESIVE AND QUASIADHESIVE CATEGORIES 539

Proof. (1). Suppose that we have an X dependent-derivation, as illustrated in the


solid part of the left diagram below


XB
BBt v  kkk P FF p
|| k kk #
| BB  uk
s
~ || 
E2 G
G#
u
l l ll P
L1 o / R1 o l2 K 2 / R2 ulll
l1 r1 r2
K1 @@ (iii) ~ L2 e2 E2 v
@@ ~~ 
f1

(i) g1 (ii)
 @ ~~ f2
(iv) g2

(v)
 2
h 
v2 u
h1 
C o / D o  /
E1 E2 l E
w2 D 
 ulll llw DD" 
f1 v1 w1 v2 h2 1 e 1
1
D1 G v2
1
c (vi) e1 (vii) (viii) e2 (ix)
l E1
#  ullllwll
d1 d
#  o     {
C E1 / D1 o E2 /D d1
D1 1
v1 w1 v2 w2

in which (iii), (i)+(vi), (ii)+(vii), (iv)+(viii), (v)+(ix), (ii), and (iv) are pushouts,
so that also (vii) and (viii) are pushouts. Fill in the dotted parts of the diagram
to obtain further pushouts (i), (v), (vi), and (ix).
By Lemma 4.2 both w1 and v2 are monomorphisms, and now by Lemma 4.3 both
(vii) and (viii) are pullbacks. Consider the cube, above right, in which bottom
and front left faces are the pullbacks (vii) and (viii), and the remaining faces are
constructed so as to be pullbacks. Since the bottom face is also a pushout, so is
the top face. Similarly, since the front left face is a pushout, so is the back right
face. Combining the top and back right faces of the cube with regions (vi) and
(ix) yields an X-concurrent derivation C p1 ;X p2 ,c D.
(2). Suppose that we have an X-concurrent derivation C p1 ;X p2 ,f D, as
illustrated by the solid part of the diagram below left.

X EEt X EEt
| yyys E" |yyy
s E"
L1 o K1 / R1 C h f  L2 o K2 / R2 L1 o K1 / R1 o l2 / R2
l1 r1 l2 r2 l1 r1 r2
CC 1 2 {{ 66   L2 K2
! }{ 66h1 f2 
f1 g1 g2 h2
f1 g1 6 D 
hPPP v2 g2 h2  6  
w1 mmm
 1
P  
m P
 v1  mmmm P PP  w2  C  ov1 E1 w1 / D1 o v2 E2 w2 / D
C  o E1 o u P v / E2 / D c  (i) e1 (v) d 1 (vi) e2 (iv) d

c  (i) e1 (ii) 
p (iii) e2 (iv) d
 C o v1 E1 / D1 o E2 w2 / D
C og v1 E1 o u / E2 w2 /7 D w1 v2
P v

q r

We construct pushouts (ii) and (iii) and obtain v1 and w2 using the univer-
sal properties. It now follows that (i) and (iv) are also pushouts. Now con-
struct the pushout (v); since (ii)+(v) and (iii) are pushouts, there is a unique
map v2 : E2 → D1 so that (vi) is a pushout and (iii)+(vi) equals (ii)+(v).
The diagram on the right now provides the required X-dependent derivation
C p1 ,cf1 D1 p2 ,d1 f2 D. 
540 S. LACK AND P. SOBOCIŃSKI

8. Relationship with high-level replacement categories


High-level replacement categories [9–11] or HLR-categories encompass several
attempts to isolate general categorical axioms which lead to categories in which
one can define double-pushout graph rewriting and prove useful theorems such as
the local Church-Rosser theorem and the concurrency theorem.
Definition 8.1 (HLR-categories). A category S with a class of morphisms M is
an HLR-category if it satisfies the following axioms:
(1) pairs C ← A → B with at least one of the arrows in M have a pushout;
(2) pairs B → D ← C with both morphisms in M have pullbacks;
(3) M is stable under pushout;
(4) M is stable under pullback;
(5) finite coproducts exist;
(6) if m and n are in M then m + n is in M;
(7) pushouts of morphisms in M are pullbacks;
(8) pushout-pullback decomposition holds: that is, given a diagram

A
k /B/ r /E
 
l s v
  
C /D/ /F
u w

if the marked morphisms are in M, the whole rectangle is a pushout and


the right square is a pullback, then the left square is a pushout.
Lemma 8.2. An adhesive category with a strict initial object is an HLR-category,
with M the class of monomorphisms.
Proof. This follows immediately from Lemmas 4.1, 4.2, 4.3, and 4.6. 
Similarly, quasiadhesive categories can be seen as HLR-categories:
Lemma 8.3. A quasiadhesive category with a strict initial object is an HLR-
category, with M the class of regular monomorphisms.
Proof. Immediate by Lemmas 6.3 and 6.5, in addition to the “quasi” versions of
Lemmas 4.3 and 4.6. 
In both Lemmas 8.2 and 8.3, the strict initial object is needed only to guarantee
extensivity, which in turn is needed only in order for axioms (5) and (6) to hold.
The axioms listed above are enough to prove the local Church-Rosser theorem
(cf. Th. 7.7), but not the concurrency theorem (cf. Th. 7.11). To prove the
latter, extra axioms had to be introduced in [11], such as the conclusion of the
following lemma. Interestingly, it is almost the dual of the main axiom of adhesive
categories.
Lemma 8.4 (cube-pushout-pullback-lemma [11]). Given a cube in which all ar-
rows in the top and bottom faces are monomorphisms, if the top face is a pullback
ADHESIVE AND QUASIADHESIVE CATEGORIES 541

and the front faces are pushouts, then the bottom face is a pullback if and only if
the back faces are pushouts.

Proof. Since the front faces are pushouts along monomorphisms, they are also
pullbacks.
If the bottom face is a pullback, then the back faces are pushouts by stability
of the pushouts on the front faces. Suppose conversely that the back faces are
pushouts; since they are pushouts along monomorphisms, they are also pullbacks.
One now simply “rotates the cube”: since the front right and back left faces are
pushouts, and the top and back right faces are pullbacks, it follows by adhesiveness
that the bottom square is a pullback. 

Clearly, one can prove a version of Lemma 8.4 for quasiadhesive categories by
replacing monomorphisms with regular monomorphisms. An HLR-category which
has the conclusion of Lemma 8.4 as an additional axiom is sometimes referred to as
an HLR2-category [11]. It is immediate, therefore, that any adhesive category with
a strict initial object is an HLR2-category (M = monomorphisms) and similarly,
that any quasiadhesive category with a strict initial object is an HLR2-category
(M = regularmonomorphisms).
The strongest axiom system for general rewriting is enjoyed by the so-called
HLR2*-categories [11]. These are HLR2-categories which, additionally, have the
conclusion of Lemma 4.5 as an axiom, that is, pushout complements of monomor-
phisms are, if they exist, unique up to isomorphism. Finally, they satisfy an axiom
known as the twisted-triple-pushout condition. We believe that this axiom does
not hold in arbitrary adhesive or quasiadhesive categories, although it does hold,
for instance, in any topos. Indeed, it is possible to extend the definition of adhesive
and quasiadhesive categories in a natural way so that the twisted-triple-pushout-
condition holds. We treat the adhesive version of the lemma below, the reader will
obtain the quasiadhesive version by replacing every occurrence of “adhesive” with
“quasiadhesive” and “monomorphism” with “regular monomorphism”.

Lemma 8.5. If C is adhesive and, additionally, all pushouts are stable under
pullback then C satisfies the twisted-triple-pushout condition: that is, given a dia-
gram

A
k /Bo u
G
f (i) g (iii) h
  
C l /Do H
v
p (ii) q
 
E /F
m

with k, l and m monomorphisms, (i) is a pushout when (i)+(ii) a pushout, (ii) a


pullback, (iii) a pushout and u, h forming a pullback of qg and qv.
542 S. LACK AND P. SOBOCIŃSKI

Proof. First note that, using Lemma 4.3, (i)+(ii) is a pullback. Using the pullback
version of Lemma 1.1 it follows that (i) is a pullback. It is easy to verify that (iii)
is a pullback.
Consider diagram (iv) below. By assumption, the front right face is a pullback,
while the front left face is (i)+(ii), a pushout.

k A HHs akkkk A HHs



kkk H$ H$
k
akkkkk ukkkk
kk r
k
k G A GG r
j
j G
kkk kkkk G# jjjj
ukkk k kk j
u j
kk
kkkk u
A GGk k B u
G#
ukkkk  h f  h
x1 kkk X II
x1 k X x2
B k I
 ukkkk kk II 
x2
k I$ 
pf
qg p ukkkk $
kk GGG j C GG g j
jvjjj j
C H H
 ukkk kk # j
u jj G#  jjjj
j
u v
j
l l
E GG kD D
G#  kkkkkk
m uk q
F

(iv)
(v)

Furthermore, the leftmost half of the bottom face is (ii) which is, by assumption,
a pullback. We obtain X and morphisms x1 : X → C and x2 : X → H by taking
the pullback of l : C → D and v : H → D. We can now complete the diagram
with an object A , and morphisms a : A → A, r : A → X and s : A → G so that
the back left face and the top face are pullbacks. Using adhesivity, the back right
face is a pushout.
We obtain diagram (v) by “cutting off” the bottom left corner of diagram (iv).
The front left face is (i), the front right face (iii), which is, by assumption, both
a pushout and a pullback. The bottom and back right faces are pullbacks, since
they were constructed as such in diagram (iv). To see that the back left face is
commutative, note that lf a = gka = gus = vhs = vx2 r = lx1 r and use the fact
that l is a monomorphism. It is also a pullback, using the pullback version of
Lemma 1.1. Using the fact that arbitrary pushouts are stable under pullback, we
can conclude that the back left face is a pushout. Summarizing, we have assumed
that the front right face is a pushout and deduced that both the back left and
right faces are pushouts. It follows from the pushouts version of Lemma 1.1 that
the front left face, (i), is a pushout. 

Finally, the following lemma has been used by Ehrig and König in their work on
rewriting via borrowed contexts [12]. Here we prove that it holds in any adhesive
category. A quasiadhesive version of the lemma can be obtained in the obvious
way.
ADHESIVE AND QUASIADHESIVE CATEGORIES 543

Lemma 8.6. Given diagram (i) below with the marked morphisms monomor-
phisms,
A
f
/C p
/E
 
m n l
  
B /D /F
g q

suppose that the left square is a pushout and the exterior is a pullback. Then the
right square is a pullback.
Proof. Suppose we have an object X and morphisms α : X → D and β : X → E
such that qα = lβ. We will show that there exists k : X → C such that nk = α;
then pk = β follows since l is a monomorphism, while uniqueness follows since
n is a monomorphism. We begin by constructing the following cube by taking
pullbacks.
mmmm
X3 Ef 
E"
vmmm α3
X1 D X
D! ln 2
g vllll
X
α1  α2
m l A Gf
l GG 
 vlll l #
BE α
E ll l C
l
g "  ulll n
D
Now qgα1 = qαg  = lβg  ; but the diagram in the statement of the lemma is
a pullback, so there is a unique morphism h : X1 → A such that mh = α1 and
pf h = βg  .
Note that mα3 = α1 m = mhm , and using the fact that m is a monomorphism,
α3 = hm (*). We shall use the fact that the top face of the cube is a pushout
to derive the existence of the required morphism. Indeed, we have α2 f  = f α3 =
f hm where we used (*) to derive the last equality. Thus we get a unique k : X →
C such that kg  = f h and kn = α2 .
It remains to show that nk = α. Indeed, we have nkg  = nf h = gmh = gα1 =
αg and nkn = nα2 = αn . Using the fact that g  and n are jointly epimorphic


yields the required equality. 

9. Conclusions and future work

We introduced the notions of van Kampen (VK) square and adhesive category,
as well as the more general quasiadhesive categories. VK squares are “well-behaved
pushouts”, and a category is adhesive when pushouts along monomorphisms are
VK. Adhesive and quasiadhesive categories are closely related to extensive cate-
gories.
Double-pushout (DPO) rewriting can be defined in an arbitrary adhesive cate-
gory. We introduced adhesive grammars, which are adhesive categories with a set
544 S. LACK AND P. SOBOCIŃSKI

of linear productions. Adhesive grammars have sufficient structure for the develop-
ment of a rich rewriting theory. In particular, we proved the local Church-Rosser
and the so-called concurrency theorem within the setting of adhesive grammars.
We have also shown that adhesive categories satisfy many of the axioms [9, 11]
which were proposed in order to prove these theorems. Thus, we have arrived at
a class of categories which supports such a theory of DPO rewriting, however, we
believe that adhesive categories are mathematically elegant and less ad hoc than
previous proposals.
In order to back this claim and to further develop the theory of adhesive cate-
gories, we have demonstrated a number of useful properties. For instance, subob-
ject union is formed as a pushout over the intersection, and subobject intersection
distributes over subobject union. We have provided some closure properties which
allow the construction of new adhesive categories from old. Any elementary topos
is adhesive, but there are examples of adhesive categories which are not toposes.
Adhesive categories include many well-known notions of graph structures used in
computer science and are instances of HLR2-categories [11].
We believe that adhesive categories will be useful in the development of specific
graphical models of computation and the development of semantic techniques for
reasoning about such models. The rewriting theory needs to be developed fur-
ther, with, for example, the construction of canonical dependency relations from
derivations [11].
Another direction for future work is to examine whether adhesive categories
have enough structure so that groupoidal relative pushouts [23] can be constructed
in cospan bicategories over adhesive categories. Such cospan bicategories provide
a way of understanding graphs in a modular fashion and will provide a general
class of models which should include bigraphs [20] as examples. Some progress in
this direction has already been achieved [24].

Acknowledgements. The second author would like to thank Vladimiro Sassone for many
discussions in the early stages of this project. Thanks also go to the anonymous referees
for reading early drafts and providing many valuable comments and suggestions.

References
[1] P. Baldan, A. Corradini, H. Ehrig, M. Löwe, U. Montanari and F. Rossi, Concurrent seman-
tics of algebraic graph transformations, in Handbook of Graph Grammars and Computing by
Graph Transformation, edited by H. Ehrig, H.-J. Kreowski, U. Montanari and G. Rozenberg,
World Scientific 3 (1999) 107–187.
[2] R. Brown and G. Janelidze, Van Kampen theorems for categories of covering morphisms in
lextensive categories. J. Pure Appl. Algebra 119 (1997) 255–263.
[3] A. Carboni, S. Lack and R.F.C. Walters, Introduction to extensive and distributive cate-
gories. J. Pure Appl. Algebra 84 (1993) 145–158.
[4] L. Cardelli, Bitonal membrane systems. Draft (2003).
ADHESIVE AND QUASIADHESIVE CATEGORIES 545

[5] A. Corradini, H. Ehrig, R. Heckel, M. Lowe, U. Montanari and F. Rossi, Algebraic ap-
proaches to graph transformation part i: Basic concepts and double pushout approach,
in Handbook of Graph Grammars and Computing by Graph Transformation, edited by
G. Rozenberg, World Scientific 1 (1997) 162–245.
[6] V. Danos and C. Laneve, Graphs for core molecular biology, in International Workshop on
Computational Methods in Systems Biology, CMSB ’03 (2003).
[7] H. Ehrig, Introduction to the algebraic theory of graph grammars, in 1st Int. Workshop on
Graph Grammars, Springer Verlag. Lect. Notes Comput. Sci. 73 (1979) 1–69.
[8] H. Ehrig, G. Engels, H.-J. Kreowski and G. Rozenberg, editors, Handbook of Graph Gram-
mars and Computing by Graph Transformation, Volume 2: Applications, Languages and
Tools. World Scientific (1999).
[9] H. Ehrig, M. Gajewsky and F. Parisi-Presicce, High-level replacement systems with appli-
cations to algebraic specificaitons and Petri Nets, in Handbook of Graph Grammars and
Computing by Graph Transformation, edited by H. Ehrig, H.-J. Kreowsky, U. Montanari
and G. Rozenberg, World Scientific 3 (1999) 341–400.
[10] H. Ehrig, A. Habel, H.-J. Kreowski and F. Parisi-Presicce, From graph grammars to high
level replacement systems, in 4th Int. Workshop on Graph Grammars and their Application
to Computer Science, Springer-Verlag. Lect. Notes Comp. Sci. 532 (1991) 269–291.
[11] H. Ehrig, A. Habel, H.-J. Kreowski and F. Parisi-Presicce, Parallelism and concurrency in
high-level replacement systems. Math. Struct. Comp. Sci. 1 (1991).
[12] H. Ehrig and B. König, Deriving bisimulation congruences in the dpo approach to graph
rewriting, in Foundations of Software Science and Computation Structures FoSSaCS ’04,
Springer. Lect. Notes Comput. Sci. 2987 (2004) 151–166.
[13] H. Ehrig, H.-J. Kreowski, U. Montanari and G. Rozenberg, editors, Handbook of Graph
Grammars and Computing by Graph Transformation, Volume 3: Concurrency, Parallelism
and Distribution. World Scientific (1999).
[14] H. Ehrig, M. Pfender and H.J. Schneider, Graph-grammars: an algebraic approach, in IEEE
Conf. on Automata and Switching Theory (1973) 167–180.
[15] F. Gadducci and U. Montanari, A concurrent graph semantics for mobile ambients, in
Mathematical Foundations of Programming Semantics MFPS ’01, ENTCS. Elsevier 45
(2001).
[16] H.-J. Kreowski, Transformations of derivation sequences in graph grammars. Lect. Notes
Comput. Sci. 56 (1977) 275–286.
[17] S. Lack and P. Sobociński, Adhesive categories, in Proceedings of FOSSACS ’04, Springer.
Lect. Notes Comput. Sci. 2987 (2004) 273–288.
[18] S. Lack and P. Sobociński, Quasitoposes, quasiadhesive categories and Artin glueing, in
preparation (2005).
[19] J. Lambek and P.J. Scott, Introduction to higher order categorical logic, Cambridge studies
in advanced mathematics. Cambridge University Press 7 (1986).
[20] R. Milner, Bigraphical reactive systems: Basic theory, Technical Report 523, Computer
Laboratory, University of Cambridge (2001).
[21] U. Montanari, M. Pistore and F. Rossi, Modelling concurrent, mobile and coordinated sys-
tems via graph transformations, in Handbook of Graph Grammars and Computing by Graph
Transformation, edited by H. Ehrig, H.-J. Kreowski, U. Montanari and G. Rozenberg, World
Scientific 3 (1999) 189–268.
[22] G. Rozenberg, editor, Handbook of Graph Grammars and Computing by Graph Tranforma-
tion, Volume 1: Foundations. World Scientific (1997).
[23] V. Sassone and P. Sobociński, Deriving bisimulation congruences using 2-categories. Nordic
J. Comput. 10 (2003) 163–183.
[24] V. Sassone and P. Sobociński, Congruences for contextual graph-rewriting, Technical Report
RS-04-11, BRICS, University of Aarhus (June 2004).

You might also like