Adhesive Quasi Adhesive
Adhesive Quasi Adhesive
Adhesive Quasi Adhesive
39 (2005) 511-545
DOI: 10.1051/ita:2005028
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
Australia.
2 BRICS, University of Aarhus, Denmark; pawel@brics.dk
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.
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
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
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.
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.)
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
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)
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
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
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
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
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
C
~
~~
m f
~~ ~
A@ B
@@
g @
@
~ n
D
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
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
A
m /B
m
n1
B /C
n2
A
f
/B
f
1
B /B
1
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
A∩B
q
/B
p v
A /C
u
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
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)
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
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
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
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)
Lo /R
l r
K
f g h
Co v E w
/D
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.
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
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
p1 = L 1 o / R1 and p2 = L2 o / R2 ,
l1 r1 l2 r2
K1 K2
l1 +l2 r1 +r2
p1 + p2 = L 1 + L 2 o K1 + K2 / R1 + R2 .
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
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
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
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)
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
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)
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
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
A
k /B/ r /E
l s v
C /D/ /F
u w
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
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.
(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
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).