2.2.4 Pushouts

Let $A$, $B$, and $C$ be sets and let $f\colon C\to A$ and $g\colon C\to B$ be functions.

The pushout of $A$ and $B$ over $C$ along $f$ and $g$[1] is the pair[2] $\webleft (A\mathbin {\textstyle \coprod _{C}}B,\webleft\{ \mathrm{inj}_{1},\mathrm{inj}_{2}\webright\} \webright )$ consisting of:

  • The Colimit. The set $A\mathbin {\textstyle \coprod _{C}}B$ defined by

    \[ A\mathbin {\textstyle \coprod _{C}}B\mathrel {\smash {\overset {\mathclap {\scriptscriptstyle \text{def}}}=}}A\mathchoice {\mathbin {\textstyle \coprod }}{\mathbin {\textstyle \coprod }}{\mathbin {\scriptstyle \textstyle \coprod }}{\mathbin {\scriptscriptstyle \textstyle \coprod }}B/\mathord {\sim }_{C}, \]

    where $\mathord {\sim }_{C}$ is the equivalence relation on $A\mathchoice {\mathbin {\textstyle \coprod }}{\mathbin {\textstyle \coprod }}{\mathbin {\scriptstyle \textstyle \coprod }}{\mathbin {\scriptscriptstyle \textstyle \coprod }}B$ generated by $\webleft (0,f\webleft (c\webright )\webright )\sim _{C}\webleft (1,g\webleft (c\webright )\webright )$.

  • The Cocone. The maps

    \begin{align*} \mathrm{inj}_{1} & \colon A\to A\mathbin {\textstyle \coprod _{C}}B,\\ \mathrm{inj}_{2} & \colon B\to A\mathbin {\textstyle \coprod _{C}}B \end{align*}

    given by

    \begin{align*} \mathrm{inj}_{1}\webleft (a\webright ) & \mathrel {\smash {\overset {\mathclap {\scriptscriptstyle \text{def}}}=}}\webleft [\webleft (0,a\webright )\webright ]\\ \mathrm{inj}_{2}\webleft (b\webright ) & \mathrel {\smash {\overset {\mathclap {\scriptscriptstyle \text{def}}}=}}\webleft [\webleft (1,b\webright )\webright ]\end{align*}

    for each $a\in A$ and each $b\in B$.

We claim that $A\mathbin {\textstyle \coprod _{C}}B$ is the categorical pushout of $A$ and $B$ over $C$ with respect to $\webleft (f,g\webright )$ in $\mathsf{Sets}$. First we need to check that the relevant pushout diagram commutes, i.e. that we have

Indeed, given $c\in C$, we have

\begin{align*} \webleft [\mathrm{inj}_{1}\circ f\webright ]\webleft (c\webright ) & = \mathrm{inj}_{1}\webleft (f\webleft (c\webright )\webright )\\ & = \webleft [\webleft (0,f\webleft (c\webright )\webright )\webright ]\\ & = \webleft [\webleft (1,g\webleft (c\webright )\webright )\webright ]\\ & = \mathrm{inj}_{2}\webleft (g\webleft (c\webright )\webright )\\ & = \webleft [\mathrm{inj}_{2}\circ g\webright ]\webleft (c\webright ),\end{align*}

where $\webleft [\webleft (0,f\webleft (c\webright )\webright )\webright ]=\webleft [\webleft (1,g\webleft (c\webright )\webright )\webright ]$ by the definition of the relation $\mathord {\sim }$ on $A\mathchoice {\mathbin {\textstyle \coprod }}{\mathbin {\textstyle \coprod }}{\mathbin {\scriptstyle \textstyle \coprod }}{\mathbin {\scriptscriptstyle \textstyle \coprod }}B$. Next, we prove that $A\mathchoice {\mathbin {\textstyle \coprod }}{\mathbin {\textstyle \coprod }}{\mathbin {\scriptstyle \textstyle \coprod }}{\mathbin {\scriptscriptstyle \textstyle \coprod }}_{C}B$ satisfies the universal property of the pushout. Suppose we have a diagram of the form

in $\mathsf{Sets}$. Then there exists a unique map $\phi \colon A\mathbin {\textstyle \coprod _{C}}B\to P$ making the diagram

commute, being uniquely determined by the conditions

\begin{align*} \phi \circ \mathrm{inj}_{1} & = \iota _{1},\\ \phi \circ \mathrm{inj}_{2} & = \iota _{2} \end{align*}

via

\[ \phi \webleft (x\webright )=\begin{cases} \iota _{1}\webleft (a\webright ) & \text{if $x=\webleft [\webleft (0,a\webright )\webright ]$,}\\ \iota _{2}\webleft (b\webright ) & \text{if $x=\webleft [\webleft (1,b\webright )\webright ]$} \end{cases} \]

for each $x\in A\mathbin {\textstyle \coprod _{C}}B$, where the well-definedness of $\phi $ is guaranteed by the equality $\iota _{1}\circ f=\iota _{2}\circ g$ and the definition of the relation $\mathord {\sim }$ on $A\mathchoice {\mathbin {\textstyle \coprod }}{\mathbin {\textstyle \coprod }}{\mathbin {\scriptstyle \textstyle \coprod }}{\mathbin {\scriptscriptstyle \textstyle \coprod }}B$ as follows:

  1. Case 1: Suppose we have $x=\webleft [\webleft (0,a\webright )\webright ]=\webleft [\webleft (0,a'\webright )\webright ]$ for some $a,a'\in A$. Then, by Remark 2.2.4.1.2, we have a sequence
    \[ \webleft (0,a\webright )\sim 'x_{1}\sim '\cdots \sim 'x_{n}\sim '\webleft (0,a'\webright ). \]
  2. Case 2: Suppose we have $x=\webleft [\webleft (1,b\webright )\webright ]=\webleft [\webleft (1,b'\webright )\webright ]$ for some $b,b'\in B$. Then, by Remark 2.2.4.1.2, we have a sequence
    \[ \webleft (1,b\webright )\sim 'x_{1}\sim '\cdots \sim 'x_{n}\sim '\webleft (1,b'\webright ). \]
  3. Case 3: Suppose we have $x=\webleft [\webleft (0,a\webright )\webright ]=\webleft [\webleft (1,b\webright )\webright ]$ for some $a\in A$ and $b\in B$. Then, by Remark 2.2.4.1.2, we have a sequence
    \[ \webleft (0,a\webright )\sim 'x_{1}\sim '\cdots \sim 'x_{n}\sim '\webleft (1,b\webright ). \]

In all these cases, we declare $x\sim 'y$ iff there exists some $c\in C$ such that $x=\webleft (0,f\webleft (c\webright )\webright )$ and $y=\webleft (1,g\webleft (c\webright )\webright )$ or $x=\webleft (1,g\webleft (c\webright )\webright )$ and $y=\webleft (0,f\webleft (c\webright )\webright )$. Then, the equality $\iota _{1}\circ f=\iota _{2}\circ g$ gives

\begin{align*} \phi \webleft (\webleft [x\webright ]\webright ) & = \phi \webleft (\webleft [\webleft (0,f\webleft (c\webright )\webright )\webright ]\webright )\\ & \mathrel {\smash {\overset {\mathclap {\scriptscriptstyle \text{def}}}=}}\iota _{1}\webleft (f\webleft (c\webright )\webright )\\ & = \iota _{2}\webleft (g\webleft (c\webright )\webright )\\ & \mathrel {\smash {\overset {\mathclap {\scriptscriptstyle \text{def}}}=}}\phi \webleft (\webleft [\webleft (1,g\webleft (c\webright )\webright )\webright ]\webright )\\ & = \phi \webleft (\webleft [y\webright ]\webright ), \end{align*}

with the case where $x=\webleft (1,g\webleft (c\webright )\webright )$ and $y=\webleft (0,f\webleft (c\webright )\webright )$ similarly giving $\phi \webleft (\webleft [x\webright ]\webright )=\phi \webleft (\webleft [y\webright ]\webright )$. Thus, if $x\sim 'y$, then $\phi \webleft (\webleft [x\webright ]\webright )=\phi \webleft (\webleft [y\webright ]\webright )$. Applying this equality pairwise to the sequences

\begin{align*} \webleft (0,a\webright )& \sim 'x_{1}\sim '\cdots \sim 'x_{n}\sim '\webleft (0,a'\webright ),\\ \webleft (1,b\webright )& \sim 'x_{1}\sim '\cdots \sim 'x_{n}\sim '\webleft (1,b'\webright ),\\ \webleft (0,a\webright )& \sim ’x_{1}\sim ’\cdots \sim ’x_{n}\sim ’\webleft (1,b\webright )\end{align*}

gives

\begin{align*} \phi \webleft (\webleft [\webleft (0,a\webright )\webright ]\webright ) & = \phi \webleft (\webleft [\webleft (0,a'\webright )\webright ]\webright ),\\ \phi \webleft (\webleft [\webleft (1,b\webright )\webright ]\webright ) & = \phi \webleft (\webleft [\webleft (1,b'\webright )\webright ]\webright ),\\ \phi \webleft (\webleft [\webleft (0,a\webright )\webright ]\webright ) & = \phi \webleft (\webleft [\webleft (1,b\webright )\webright ]\webright ), \end{align*}

showing $\phi $ to be well-defined.

In detail, by Chapter 7: Equivalence Relations and Apartness Relations, Construction 7.4.2.1.2, the relation $\mathord {\sim }$ of Definition 2.2.4.1.1 is given by declaring $a\sim b$ iff one of the following conditions is satisfied:

  • We have $a,b\in A$ and $a=b$;
  • We have $a,b\in B$ and $a=b$;
  • There exist $x_{1},\ldots ,x_{n}\in A\mathchoice {\mathbin {\textstyle \coprod }}{\mathbin {\textstyle \coprod }}{\mathbin {\scriptstyle \textstyle \coprod }}{\mathbin {\scriptscriptstyle \textstyle \coprod }}B$ such that $a\sim 'x_{1}\sim '\cdots \sim 'x_{n}\sim 'b$, where we declare $x\sim 'y$ if one of the following conditions is satisfied:

    1. There exists $c\in C$ such that $x=\webleft (0,f\webleft (c\webright )\webright )$ and $y=\webleft (1,g\webleft (c\webright )\webright )$.
    2. There exists $c\in C$ such that $x=\webleft (1,g\webleft (c\webright )\webright )$ and $y=\webleft (0,f\webleft (c\webright )\webright )$.

    That is: we require the following condition to be satisfied:

    • There exist $x_{1},\ldots ,x_{n}\in A\mathchoice {\mathbin {\textstyle \coprod }}{\mathbin {\textstyle \coprod }}{\mathbin {\scriptstyle \textstyle \coprod }}{\mathbin {\scriptscriptstyle \textstyle \coprod }}B$ satisfying the following conditions:

      1. There exists $c_{0}\in C$ satisfying one of the following conditions:
        1. We have $a=f\webleft (c_{0}\webright )$ and $x_{1}=g\webleft (c_{0}\webright )$.
        2. We have $a=g\webleft (c_{0}\webright )$ and $x_{1}=f\webleft (c_{0}\webright )$.
      2. For each $1\leq i\leq n-1$, there exists $c_{i}\in C$ satisfying one of the following conditions:
        1. We have $x_{i}=f\webleft (c_{i}\webright )$ and $x_{i+1}=g\webleft (c_{i}\webright )$.
        2. We have $x_{i}=g\webleft (c_{i}\webright )$ and $x_{i+1}=f\webleft (c_{i}\webright )$.
      3. There exists $c_{n}\in C$ satisfying one of the following conditions:
        1. We have $x_{n}=f\webleft (c_{n}\webright )$ and $b=g\webleft (c_{n}\webright )$.
        2. We have $x_{n}=g\webleft (c_{n}\webright )$ and $b=f\webleft (c_{n}\webright )$.

Here are some examples of pushouts of sets.

  1. Wedge Sums of Pointed Sets. The wedge sum of two pointed sets of Chapter 3: Pointed Sets, Definition 3.3.3.1.1 is an example of a pushout of sets.
  2. Intersections via Unions. Let $A,B\subset X$. We have a bijection of sets

Item 1: Wedge Sums of Pointed Sets
Follows by definition.
Item 2: Intersections via Unions
Indeed, $A\mathbin {\textstyle \coprod _{A\cap B}}B$ is the quotient of $A\mathchoice {\mathbin {\textstyle \coprod }}{\mathbin {\textstyle \coprod }}{\mathbin {\scriptstyle \textstyle \coprod }}{\mathbin {\scriptscriptstyle \textstyle \coprod }}B$ by the equivalence relation obtained by declaring $\webleft (0,a\webright )\sim \webleft (1,b\webright )$ iff $a=b\in A\cap B$, which is in bijection with $A\cup B$ via the map with $\webleft [\webleft (0,a\webright )\webright ]\mapsto a$ and $\webleft [\webleft (1,b\webright )\webright ]\mapsto b$.

Let $A$, $B$, $C$, and $X$ be sets.

  1. Functoriality. The assignment $\webleft (A,B,C,f,g\webright )\mapsto A\mathbin {\textstyle \coprod _{f,C,g}}B$ defines a functor
    \[ -_{1}\mathbin {\textstyle \coprod _{-_{3}}}-_{1}\colon \mathsf{Fun}\webleft (\mathcal{P},\mathsf{Sets}\webright )\to \mathsf{Sets}, \]

    where $\mathcal{P}$ is the category that looks like this:

    In particular, the action on morphisms of $-_{1}\mathbin {\textstyle \coprod _{-_{3}}}-_{1}$ is given by sending a morphism

    in $\mathsf{Fun}\webleft (\mathcal{P},\mathsf{Sets}\webright )$ to the map $\xi \colon A\mathbin {\textstyle \coprod _{C}}B\overset {\exists !}{\to }A'\mathbin {\textstyle \coprod _{C'}}B'$ given by

    \[ \xi \webleft (x\webright )\mathrel {\smash {\overset {\mathclap {\scriptscriptstyle \text{def}}}=}}\begin{cases} \phi \webleft (a\webright ) & \text{if $x=\webleft [\webleft (0,a\webright )\webright ]$},\\ \psi \webleft (b\webright ) & \text{if $x=\webleft [\webleft (1,b\webright )\webright ]$} \end{cases} \]

    for each $x\in A\mathbin {\textstyle \coprod _{C}}B$, which is the unique map making the diagram

    commute.

  2. Associativity. Given a diagram

    in $\mathsf{Sets}$, we have isomorphisms of sets

    \[ \webleft (A\mathbin {\textstyle \coprod _{X}}B\webright )\mathbin {\textstyle \coprod _{Y}}C\cong \webleft (A\mathbin {\textstyle \coprod _{X}}B\webright )\mathbin {\textstyle \coprod _{B}}\webleft (B\mathbin {\textstyle \coprod _{Y}}C\webright ) \cong A\mathbin {\textstyle \coprod _{X}}\webleft (B\mathbin {\textstyle \coprod _{Y}}C\webright ), \]

    where these pullbacks are built as in the diagrams

  3. Unitality. We have isomorphisms of sets
  4. Commutativity. We have an isomorphism of sets
  5. Interaction With Coproducts. We have
  6. Symmetric Monoidality. The triple $\webleft (\mathsf{Sets},\mathbin {\textstyle \coprod _{X}},X\webright )$ is a symmetric monoidal category.

Item 1: Functoriality
This is a special case of functoriality of co/limits, of , with the explicit expression for $\xi $ following from the commutativity of the cube pushout diagram.
Item 2: Associativity
Omitted.
Item 3: Unitality
Omitted.
Item 4: Commutativity
Clear.
Item 5: Interaction With Coproducts
Clear.
Item 6: Symmetric Monoidality
Omitted.


Footnotes

[1] Further Terminology: Also called the fibre coproduct of $A$ and $B$ over $C$ along $f$ and $g$.
[2] Further Notation: Also written $A\mathchoice {\mathbin {\textstyle \coprod }}{\mathbin {\textstyle \coprod }}{\mathbin {\scriptstyle \textstyle \coprod }}{\mathbin {\scriptscriptstyle \textstyle \coprod }}_{f,C,g}B$.

Noticed something off, or have any comments? Feel free to reach out!


You can also use the contact form below: