# Pushout over a whole diagram

Suppose I have a diagram $D$ over a category $C$, where $D$ (as a graph) is a single-rooted directed acyclic graph, and all 'joins' in this DAG are actually colimits. Let the root of this diagram be the object $c$ of $C$. Suppose I also have a (new) arrow $a : c\rightarrow e$ where $e$ is not in diagram $D$. From this arrow, one can successively compute a number of pushouts, to obtain a new diagram $D'$ "over" $D$. [Assume that by base category $C$ has all filtered colimits, so that this all makes sense].

Question: what is the proper name for this construction? Where can I find a solid mathematical presentation of this? [I have seen this used in a number of places, but never given a proper reference]

Motivation: My category $C$ is a category of (presentations of) theories (with sorts, signatures and axioms), and my diagram $D$ is built by successively extending a base theory $c$ by adding new sorts/signatures/axioms and explicit pushouts. If I now extend the base theory $c$ in a 'new' direction, I should be able to 'replay' the extension given by arrow $a:c\rightarrow e$ 'over' all of $D$ to get a (parallel) diagram of theories $D'$ based on $e$. The aim is to maximize re-use of concepts (given by each extension).

[I realize that such a construction might well give me inconsistent theories, i.e. that some of the nodes in $D$ and $D'$ will have no models. They will, however, be perfectly fine as (presentations of) inconsistent theories.]

-

I've written up some details pushouts of diagrams at http://r6research.livejournal.com/23849.html. The short answer is that you can form a category of diagrams by considering the lax slice category over $C$ where $C$ is your category that you want to take diagrams of. In the lax slice category over $C$ the objects are pairs of a category (typically finite) $G$ with a functor $d : G \to C$. The category $G$ gives the shape of the diagram, and the functor $d$ gives the labels of the diagram. A morphism between two diagrams $(G_1, d_1 : G_1 \to C)$ and $(G_2, d_2 : G_2 \to C)$ is a pair consisting of a functor $f : G_1 \to G_2$ with natural transformation $\eta : d_1 \Rightarrow (d_2 \circ f)$.

By using pushouts in the category of diagrams you can get your desired result. In your case the base of the diagram pushout will be the diagram generated by the single node labeled with $c$. One arm of the pushout will be the digram generated by the single node labeled with $e$ and the diagram morphism will between them will consist of the arrow $a$. The second arm of the pushout will be your large diagram and the diagram morphism will consist of the identity arrow from $c$ to the root node $c$ in your large diagram. The pushout of this will be the diagram you desire.

-

I'd think of it as being the pushout functor along $a$, between co-slice categories: $$a_* \colon\ c\backslash C\ \longrightarrow\ e\backslash C$$

Mac Lane CWM gives a nice treatment of pullback functors, which iirc contains statements dual to everything you mention here.

(So this construction is a lot more general than the example: all that matters is that the diagram involved has an initial object $c$, hence can be seen as living not just in $C$ but in $c \backslash C$. The “joins are colimits” condidition isn't needed; and the pushouts don't have to be computed “successively” — the “two pushouts lemma”, or equivalently the functoriality of $a_*$, shows that computing them successively or all-at-once gives the same result.)

(answer jointly written with Michael Warren)

-
Thanks. My CWM is at home, I'll have to go work through the details later. In other words: I'll accept your answer once I've properly understood it and made sure it actually answers the question I (thought I) was asking. – Jacques Carette Sep 3 '10 at 20:39