# The Unapologetic Mathematician

## Pushouts and pullbacks

If we have two sets $X$ and $Y$ we can take their union $X\cup Y$: the set of all elements in at least one of the two. We can also characterize this in categorical terms without reference to elements.

One thing we can see right off is that $X$ and $Y$ are both subsets of $X\cup Y$. That is, there are arrows $X\rightarrow X\cup Y$ and $Y\rightarrow X\cup Y$. So maybe the union is the coproduct of the two sets. Well, it’s a good guess, but there’s a problem. There may be some elements in both $X$ and $Y$. Let’s say we have one, called $p$. I could take functions $f_X:X\rightarrow Z$ and $f_Y:Y\rightarrow Z$ with $f_X(p)\neq f_Y(p)$. But any function from $X\cup Y$ has to send $p$ to only one point, so we can’t satisfy the coproduct property with the union. In fact the coproduct is the disjoint union, where the two copies of $p$ have different images. We need some way to equalize the two images.

And indeed, we have such a way: the coequalizer (you thought I was going to say “equalizer”, right?). The set of points we have the be careful about is the intersection $X\cap Y$. This is a subset of each of $X$ and $Y$, so we have arrows $X\cap Y\rightarrow X$ and $X\cap Y\rightarrow Y$. Now we can take the disjoint union (coproduct) $X\uplus Y$, which comes with arrows $X\rightarrow X\uplus Y$ and $Y\rightarrow X\uplus Y$. We compose these with the two from before to get a pair of arrows $X\cap Y\rightrightarrows X\uplus Y$. Now we take the coequalizer of those arrows. This takes the disjoint union of $X$ and $Y$ and identifies the two copies of each point that came from the intersection, giving the union.

Now let’s back up a bit and draw a diagram as usual.

We have objects $A$ and $B$, each with an arrow into it from the object $C$. We want to put in an object to complete the commuting square, so that for any other object $D$ and arrows that complete the square there exists a unique arrow from our object to $D$. The object $A\amalg_CB$ (along with its arrows!) is called the “pushout” of the square. We also sometimes label the square “p.o.” to remember that it’s not just any commuting square, but a pushout square. If you’ve followed the discussion of products, coproducts, equalizers, and coequalizers, you should be able to write down a category in which this is a universal object.

If whenever we have the left side of this square (the three objects and two arrows) in a category we can find a pushout, then we say the category “has pushouts”. The discussion in the case of sets above generalizes, and we see that if a category has coproducts and has coequalizers then it has pushouts. In this case, the pushout is constructed exactly as we did before. However, it’s possible to have pushouts on their own.

Pushouts are closely related to coproducts, as you might guess. In fact, notice that the setup here — the three objects and two arrows — is actually the same thing as two objects in the comma category $(C\downarrow\mathcal{C})$. That is, we start with two arrows from $C$. Then the pushout $A\amalg_CB$ also has an arrow from $C$ — both paths around the square are the same — so it’s another object in the comma category. The arrows from $A$ and $B$ to $A\amalg_CB$ are compatible with the arrows from $C$, so they’re morphisms in the comma category. The upshot is that the pushout of the above diagram is the coproduct in the comma category.

On the other hand, what if our category $\mathcal{C}$ has an initial object $I$? Then every other object $A$ has a unique arrow $I\rightarrow A$, and all morphisms in $\mathcal{C}$ are compatible with these arrows from $I$. That is, $\mathcal{C}$ is isomorphic to the comma category $(I\downarrow\mathcal{C})$. Then if $\mathcal{C}$ has pushouts we know that $(I\downarrow\mathcal{C})$ in particular has coproducts, and so $\mathcal{C}$ does too: coproducts are pushouts over an initial object when one exists.

We’ve already seen a few more places that coproducts come up. The amalgamated free product of two groups over a third is a coproduct in $\mathbf{Grp}$. In particular, this means that free products of groups are coproducts, since they’re amalgamated over the trivial group. Also the amalgamated direct sum of modules is a pushout in $R-\mathbf{mod}$.

Here’s one that we haven’t considered directly: let $R$ be a commutative ring with unit and let $A$ be an algebra over $R$ with unit. Then we have a homomorphism $R\rightarrow A$ of rings sending $r\in R$ to $r\cdot 1\in A$ — the action of $r$ on the unit of $A$. That is, an $R$-algebra is an object in the comma category $(R\downarrow\mathbf{Ring})$. Now if we have two such algebras, show that their tensor product $A_1\otimes_RA_2$ is a coproduct in this comma category, or equivalently a pushout in $\mathbf{Ring}$.

The dual notion to a pushout is a pullback. Here we use the diagram:

As for the other dual notions, you should go through the discussion of pushouts and write down the dualized versions explicitly.

As a (somewhat complicated) exercise in pullbacks, note first that a pullback over $C$ is the same as a product in the comma category $(\mathcal{C}\downarrow C)$. Now consider the category $\mathbf{Gpd}$ of groupoids. Verify that if the functors from $A$ and $B$ to $C$ are both faithful, then the arrow from $A\times_CB$ to $C$ is faithful. In particular, if $C$ is a a group, then $A$ and $B$ are both (equivalent to) group actions, and their pullback will be another one. Check that if $A$ is equivalent to the action groupoid of $C$ acting on $S$ and $B$ is equivalent to the action groupoid of $C$ acting on $T$ then $A\times_CB$ is equivalent to the action groupoid of $C$ acting on $S\times T$ by the product action. This may be a bit difficult, but just working at it for a while should give some insights into how these things work.

### Like this:

Posted by John Armstrong | Category theory

## 1 Comment	»

1. [...] start by considering a category with pullbacks. A span in is a diagram of the form . We think of it as going from to . It turns out that we can [...]

Pingback by | March 18, 2008 | Reply

« Previous | Next »

## About this weblog

This is mainly an expository blath, with occasional high-level excursions, humorous observations, rants, and musings. The main-line exposition should be accessible to the “Generally Interested Lay Audience”, as long as you trace the links back towards the basics. Check the sidebar for specific topics (under “Categories”).

I’m in the process of tweaking some aspects of the site to make it easier to refer back to older topics, so try to make the best of it for now.
{"extraction_info": {"found_math": true, "script_math_tex": 0, "script_math_asciimath": 0, "math_annotations": 0, "math_alttext": 0, "mathml": 0, "mathjax_tag": 0, "mathjax_inline_tex": 0, "mathjax_display_tex": 0, "mathjax_asciimath": 0, "img_math": 0, "codecogs_latex": 0, "wp_latex": 87, "mimetex.cgi": 0, "/images/math/codecogs": 0, "mathtex.cgi": 0}, "config": {"markdown_headings": true, "markdown_code": true, "boilerplate_config": {"ratio_threshold": 0.18, "absolute_threshold": 20, "end_threshold": 15, "enable": true}, "remove_buttons": true, "remove_image_figures": true, "remove_link_clusters": true, "table_config": {"min_rows": 2, "min_cols": 3, "format": "github"}, "remove_chinese": true, "remove_edit_buttons": true, "extract_latex": true}, "english_confidence": 0.9507638812065125, "perplexity_flag": "head"}