The 2-categories of indexed and opindexed categories $\ICat$ and $\OpICat$, explained in <ref>, are both monoidal. Explicitly, given two indexed categories $\M \maps \X\op \to \Cat$ and $\psN \maps \Y\op \to \Cat$, their tensor product $\M \otimes \psN \maps (\X \times \Y)\op \to \Cat$ is the composite

\begin{equation}\label{ICat_cart}
(\X \times \Y)\op \cong \X\op \times \Y\op \xrightarrow{\M \times \psN} \Cat \times \Cat \xrightarrow{\times} \Cat
\end{equation}

i.e. $(\M \otimes \psN)(x, y) = \M(x) \times \psN(y)$ using the cartesian monoidal structure of $\Cat$. The monoidal unit is the indexed category $\Delta \1 \maps \1\op \to \Cat$ that picks out the terminal category $\1$ in $\Cat$, and similarly for opindexed categories. Notice that this monoidal 2-structure, formed pointwise in $\Cat$, is also cartesian.

We call a pseudomonoid in $(\ICat, \otimes, \Delta \1)$ a monoidal indexed category.

A monoidal indexed category is a lax monoidal pseudofunctor
\[(\M, \mu, \mu_0) \maps (\X\op, \otimes\op, I) \to (\Cat, \times, \1),\]
where $(\X, \otimes, I)$ is an (ordinary) monoidal category.

Unpacking the definition, we see that a monoidal indexed category is an indexed category $\M \maps \X\op \to \Cat$ equipped with multiplication and unit indexed 1-cells $(\otimes_\X, \mu) \maps \M \otimes \M \to \M$, $(\eta, \mu_0) \maps \Delta \mathbf 1 \to \M$ which by <ref> are as follows.

\[
\begin{tikzcd}[column sep=.7in, row sep=.2in]
\X\op \times \X\op
\arrow[dr, "\M \otimes \M"]
\arrow[dd, "\otimes\op"']
\\
\arrow[r, phantom, "\Downarrow{\scriptstyle\mu}"description]
\Cat
\\
\X\op
\arrow[ur, "\M"']
\end{tikzcd}\qquad
\begin{tikzcd}[column sep=.7in, row sep=.2in]
\1\op
\arrow[dr, "\Delta\1"]
\arrow[dd, "I\op"']
\\
\arrow[r, phantom, "\Downarrow{\scriptstyle\mu_0}"description]
\Cat
\\
\X\op
\arrow[ur, "\M"']
\end{tikzcd}
\]

These come equipped with invertible indexed 2-cells
as in <ref>; the axioms this data is required to satisfy, on the one hand, render $\X$ a monoidal category with $\otimes \maps \X \times \X \to \X$ its tensor product functor and $I \maps \1 \to \X$ its unit. On the other hand,
the resulting axioms for the components

\begin{equation}\label{eq:laxatorunitor}
\mu_{x, y} \maps \M x \times \M y \to \M (x \otimes y), \qquad
\mu_0 \maps \1 \to \M (I)
\end{equation}

of the above pseudonatural transformations precisely give $\M$ the structure of a lax monoidal pseudofunctor, recalled in <ref>.

We then define a monoidal indexed 1-cell to be a (strong) morphism between pseudomonoids in $(\ICat, \otimes, \Delta\1)$.

A monoidal indexed 1-cell between two monoidal indexed categories $\M$ and $\psN$ is an indexed 1-cell $(F, \tau)$, where the functor $F$ is (strong) monoidal and the pseudonatural transformation $\tau$ is monoidal.

Unpacking the definition, we see that a monoidal indexed 1-cell is an indexed 1-cell $(F, \tau) \maps \M \to \psN$

[column sep=.7in, row sep=.2in]
[dr, ""]
[dd, "F"']

[r, phantom, "⇓τ"description]

[ur, ""']

between two monoidal indexed categories
$(\M, \mu, \mu_0)$ and $(\psN, \nu, \nu_0)$ equipped with two invertible indexed 2-cells $(\psi, m)$ and $(\psi_0, m_0)$ as in <ref>, which explicitly consist of natural isomorphisms $\psi$, $\psi_0$ and invertible modifications

\[
\begin{tikzcd}[row sep=.3in, column sep=.25in]
\X\op \times \X\op
\arrow[d, "\otimes\op"']
\arrow[dr, "F\op \times F\op" description]
\arrow[drrr, "\M \otimes \M", bend left=20]
\arrow[drrr, phantom, bend left=5, "\Downarrow{\scriptstyle \tau \times \tau}"]
\X\op \times \X\op
\arrow[drrr, "\M \otimes \M", bend left]
\arrow[d, "\otimes\op"']\arrow[drrr, phantom, "\Downarrow{\scriptstyle\mu}"description]
\\
\X\op
\arrow[d, "F\op"']
\arrow[r, phantom, "\Downarrow{\scriptstyle\psi}"description, bend right]
\Y\op \times \Y\op
\arrow[rr, "\psN \otimes \psN"description]
\arrow[dr, "\otimes\op" description]
\arrow[drr, phantom, "\Downarrow{\scriptstyle\nu}"description]
\Cat
\arrow[r, phantom, "\stackrel{m}{\Rrightarrow}"]
\X\op
\arrow[rrr, "\M"description]\arrow[d, "F\op"']\arrow[drrr, phantom, "\Downarrow{\scriptstyle\tau}"description]
\Cat
\\
\Y\op\arrow[rr, "\mathrm{id}"']
\Y\op\arrow[ur, "\psN"', bend right]
& \phantom{A} &
\Y\op\arrow[urrr, "\psN"', bend right]
&&& \phantom{A}
\end{tikzcd}
\]

\[
\begin{tikzcd}[row sep=.25in, column sep=.3in]
\1\op\arrow[d, "I\op"']\arrow[drrr, "\Delta\1", bend left=20]
\arrow[drrr, phantom, "\Downarrow{\scriptstyle\nu_0}"]\arrow[ddrr, "I\op"description]
\1\op\arrow[drrr, "\Delta\1", bend left]\arrow[d, "I\op"']\arrow[drrr, phantom, "\Downarrow{\scriptstyle\mu_0}"description]
\\
\X\op\arrow[d, "F\op"']\arrow[r, phantom, "\Downarrow{\scriptstyle\psi_0}"description, bend right]
& \phantom{A} &&
\Cat\arrow[rr, phantom, "\stackrel{m_0}{\Rrightarrow}"]
\X\op\arrow[rrr, "\M"description]\arrow[d, "F\op"']\arrow[drrr, phantom, "\Downarrow{\scriptstyle\tau}"description]
\Cat
\\
\Y\op\arrow[rr, "\mathrm{id}"']
\Y\op\arrow[ur, "\psN"', bend right]
& \phantom{A} &&
\Y\op\arrow[urrr, "\psN"', bend right]
&&& \phantom{A}
\end{tikzcd}
\]

as dictated by the general form <ref> of indexed 2-cells.
The natural isomorphisms $\psi$ and $\psi_0$ have components

ψ_x, z Fx⊗Fy F(x⊗y),   ψ_0 I F(I)   in $\Y\op$

whereas the modifications $m$ and $m_0$ are given by families of invertible natural transformations

[column sep=.3in, row sep=.2in]
Fx ×Fy
[r, "ν_Fx, Fy"]
[dr, dashed]

(Fx ⊗Fy)
[d, "ψ_x, y"]

[ur, "τ_x×τ_y"]
[dr, "μ_x, y"']
[rr, phantom, "⇓m_x, y"description]

F (x⊗y)

[ur, "τ_x⊗y"']

[column sep=.2in, row sep=.2in]

[dr, "ψ_0"]

[ur, "ν_0"]
[dr, "μ_0"']
[rr, phantom, "⇓m_0"description]

(I)[ur, "τ_I"']

The appropriate coherence axioms ensure that the functor $F \maps \X \to \Y$ has a strong monoidal structure $(F, \psi, \psi_0)$, and that the pseudonatural transformation $\tau \maps \M \Rightarrow \psN \circ F\op$ is monoidal with $m_{x, y}$, $m_0$ as in <ref>. Notice that $F\op$ being monoidal makes $F$ monoidal with inverse structure isomorphisms.

Finally, a monoidal indexed 2-cell is a 2-cell between morphisms of pseudomonoids in $(\ICat, \otimes, \Delta\1)$.

A monoidal indexed 2-cell between two monoidal indexed 1-cells $(F, \tau)$ and $(G, \sigma)$ is an indexed 2-cell  $(\alpha, m)$ such that $\alpha$ is an ordinary monoidal natural transformation and $m$ is a monoidal modification.

Following the definition of <ref>, an indexed 2-cell $(a, m) \maps (F, \tau)\Rightarrow(G, \sigma) \maps \M\to\psN$ as in <ref>, which consists of a natural transformation $\alpha \maps F\Rightarrow G$ and a modification $m$ with components

[column sep=.5in, row sep=.15in]
x[dr, bend right=10, "σ_x"'][rr, bend left, "τ_x"] [rr, phantom, "⇓m_x"description]        Fx

Gx[ur, bend right=10, "α_x"']

is monoidal, exactly when $\alpha \maps F\Rightarrow G$ is compatible with the strong monoidal structures of $F$ and $G$, and the modification $m \maps \tau \Rrightarrow \psN \alpha\op \circ \sigma$ satisfies <ref> for the induced monoidal structures on its domain and target pseudonatural transformations.

We write $\PsMon(\ICat) = \Mon\ICat$, the 2-category of monoidal indexed categories, monoidal indexed 1-cells and monoidal indexed 2-cells. Moreover, their braided and symmetric counterparts form $\Br\Mon\ICat$ and $\Sym\Mon\ICat$ respectively, as the 2-categories of braided and symmetric pseudomonoids in $(\ICat, \otimes, \Delta\1)$ formally discussed in <ref>.
Similarly, we have 2-categories of (braided or  symmetric) monoidal opindexed categories, 1-cells and 2-cells $\Mon\OpICat$, $\Br\Mon\OpICat$ and $\Sym\Mon\OpICat$.

All these 2-categories have sub-2-categories of monoidal (op)indexed categories with a fixed monoidal domain $(\X, \otimes, I)$, and specifically

\begin{gather}\label{eq:monicatX}
\MonICat(\X)=\MonTCat_\pse(\X\op, \Cat) \\ \Mon\OpICat(\X)=\MonTCat_\pse(\X, \Cat)\nonumber
\end{gather}

the functor 2-categories of lax monoidal pseudofunctors, monoidal pseudonatural transformations and monoidal modifications.

Moreover, we can consider pseudomonoids in the strict context. Explicitly, the 2-category $\PsMon(\ICat_\spl)=\MonICat_\spl$ has as objects monoidal strict indexed categories namely (2-)functors $\M \maps \X\op\to\Cat$ from an ordinary monoidal category $\X$ which are lax monoidal as before, but the laxator and unitor <ref> are strictly natural rather than pseudonatural transformations. The hom-categories $\PsMon(\ICat_\spl)(\M, \psN)$ between monoidal strict indexed categories are full subcategories of $\MonICat(\M, \psN)$ spanned by strict natural transformations—which are however still lax monoidal, i.e. equipped with isomorphisms <ref>.

Similarly to the previous <ref> on fibrations, we end this section with the study of pseudomonoids in a different but related monoidal 2-category, namely $\ICat(\X)=\TCat_\pse(\X\op, \Cat)$ of indexed categories with a fixed domain $\X$. Working in this 2-category, or in $\OpICat(\X)$, there is no assumed monoidal structure on $\X$. Their monoidal structure is again cartesian: for two $\X$-indexed categories $\M, \psN \maps \X\op \to \Cat$, their product is

\begin{equation}\label{eq:icatxprod}
\M\boxtimes\psN \maps \X\op \xrightarrow{\Delta} \X\op \times \X\op \xrightarrow{\M \times \psN} \Cat \times \Cat \xrightarrow{\times} \Cat
\end{equation}

with pointwise components $(\M \boxtimes \psN) (x) = \M (x) \times \psN (x)$ in $\Cat$. The monoidal unit is just $\X\op \xrightarrow{!} \1 \xrightarrow{\Delta \1} \Cat$, which we will also call $\Delta \1$.

A pseudomonoid in $(\ICat(\X), \boxtimes, \Delta\1)$ is a pseudofunctor $\M \maps \X\op \to \Cat$ equipped with indexed functors <ref> $\mlt \maps \M\boxtimes\M\to\M$ and $\uni \maps \Delta\1\to\M$ namely

[row sep=.1in]

×[r, "×"]

×[dr, "×"]

[dr, "Δ"]

[ur, "Δ"]
[rrr, phantom, "⇓"description]
[rrr, bend right=20, ""']

[ur, "!"]
[rr, bend right, ""']
[rr, phantom, "⇓"description]

with components $\mlt_x \maps \M x \times \M x \to \M x$ and $\uni_x \maps \1 \to \M x$ which are pseudonatural via

\begin{equation}\label{eq:pseudonaturalmult}
\begin{tikzcd}[column sep=.6in]
\M x
\times \M x
\arrow[d, "\mlt_x"']
\arrow[r, "\M f\times\M f"]
\arrow[dr, phantom, "\cong"description]
\M y \times \M y
\arrow[d, "\mlt_y"]
\\
\M x
\arrow[r, "\M f"']
\M y
\end{tikzcd}\quad
\begin{tikzcd}
\1
\arrow[r, "="]
\arrow[d, "\uni_x"']
\arrow[dr, phantom, "\cong"description]
\1
\arrow[d, "\uni_y"]
\\
\M x
\arrow[r, "\M f"']
\M y
\end{tikzcd}
\end{equation}

If we denote $\mlt_x=\otimes_x$ and $\uni_x=I_x$, the pseudomonoid invertible 2-cells <ref> and the axioms these data satisfy make each $\M x$ into a monoidal category $(\M x, \otimes_x, I_x)$, and each $\M f$ into a strong monoidal functor: the above isomorphisms have components $\M f(a)\otimes_y\M f(b)\cong\M f(a\otimes_x b)$ and $I_y\cong\M f(I_x)$ for any $a, b\in\M x$.

Such a structure, namely a pseudofunctor $\M \maps \X\op \to \Mon\Cat$ into the 2-category of monoidal categories, strong monoidal functors and monoidal natural transformations, was directly defined as an indexed strong monoidal category in <cit.>, and as indexed monoidal category in <cit.>. We will avoid this notation in order to not create confusion with the term monoidal indexed categories.

A strong morphism of pseudomonoids <ref> in $(\ICat(\X), \boxtimes, \Delta\1)$ ends up being a pseudonatural trasformation $\tau \maps \M\Rightarrow\psN \maps \X\op\to\Cat$ (indexed functor) whose components $\tau_x \maps \M x\to\psN x$ are strong monoidal functors, whereas a 2-cell between strong morphisms of pseudomonoids is an ordinary modification

[rr, bend left=40, "", ""'name = F]
[rr, bend right=40, ""', ""name = G]
[rr, phantom, "m ⇛"description]

[from = F, to = G, Rightarrow, "τ"', bend right=50]
[from = F, to = G, Rightarrow, "σ", bend left=50]

whose components $m_x \maps \tau_x\Rightarrow\sigma_x$ are monoidal natural transformations.

We thus obtain the 2-categories $\PsMon (\ICat(\X))$ as well as $\PsMon(\OpICat(\X))$; from the above descriptions, it is clear that

\begin{gather}\label{eq:imoncats}
\PsMon(\ICat(\X))=\TCat_\pse(\X\op, \Mon\Cat) \\
\PsMon(\OpICat(\X))=\TCat_\pse(\X, \Mon\Cat)\nonumber
\end{gather}

which will also be rediscovered by <ref>.

Finally, taking pseudomonoids in strict $\X$-indexed categories $\ICat_\spl(\X)=[\X\op, \Cat]$ produces the 2-category $\PsMon(\ICat_\spl(\X))$ with objects functors $\M \maps \X\op\to\Mon\Cat_\mathrm{st}$ into monoidal categories with strict monoidal functors: the isomorphisms <ref> are now equalities due to strict naturality of the multiplication and unit. Then the hom-categories $\PsMon(\ICat_\spl(\X))(\M, \psN)$ are full subcategories of $\PsMon(\ICat(\X))(\M, \psN)$ spanned by strictly natural transformations $\tau \maps \M\Rightarrow\psN$, still with strong monoidal components $\tau_x$. For example, it would not be correct to write $\PsMon(\ICat_\spl(\X))=[\X\op, \Mon\Cat_{(\mathrm{st})}]$.

It is evident that $\MonICat(\X)$ and $\PsMon(\ICat(\X))$ are in principle different. A monoidal indexed category with base $\X$ is a lax monoidal pseudofunctor into $\Cat$ (and $\X$ is required to be monoidal already), whereas a pseudomonoid in $\X$-indexed categories is a pseudofunctor from an ordinary category $\X$ into $\Mon\Cat$.

§ TWO MONOIDAL GROTHENDIECK CONSTRUCTIONS

In <ref>, we recalled
the standard equivalence between fibrations and indexed categories via the Grothendieck construction. We will now lift this correspondence to their monoidal versions studied in Sections <ref> and <ref>, using general results about pseudomonoids in arbitrary monoidal 2-categories described in <ref>.

Since both $\Fib$ and $\ICat$ are cartesian monoidal 2-categories, via <ref> and <ref> respectively, our first task is to ensure that they are monoidally equivalent.

The 2-equivalence $\Fib\simeq\ICat$ between the cartesian monoidal 2-categories of fibrations and indexed categories is (symmetric) monoidal.

Since they form an equivalence, both 2-functors from <ref> preserve limits, therefore are monoidal 2-functors. Moreover, it can be verified that the natural isomorphisms with components $\F\cong\F_{P_\F}$ and $P\cong P_{\F_P}$ are monoidal with respect to the cartesian structure, due to universal properties of products.

There are 2-equivalences

\begin{gather*}
\MonFib\simeq \MonICat \\
\BrMonFib\simeq\Br\Mon\ICat \\
\SymMonFib\simeq\Sym\Mon\ICat
\end{gather*}

between the 2-categories of monoidal fibrations and monoidal indexed categories, as well as their braided and symmetric versions. Dually, there is a 2-equivalence $\MonOpFib\simeq\MonOpICat$ between the 2-categories of monoidal opfibrations and monoidal opindexed categories, as well as their braided and symmetric versions.

Since $\MonFib=\PsMon(\Fib)$ and $\MonICat=\PsMon(\ICat)$, we obtain the equivalence as a special case of <ref>; similar for $\OpFib\simeq\OpICat$.

The above 2-equivalences restrict to the sub-2-categories of fixed bases or domains, which by <ref> are

\begin{gather*}
\MonFib(\X) \simeq\MonTCat_\pse(\X\op,\Cat) \\
\MonOpFib(\X) \simeq\MonTCat_\pse(\X\op,\Cat)
\end{gather*}

These results correspond to the global monoidal structure of fibrations and indexed categories. Even though they were directly derived via abstract reasoning, for exposition purposes we briefly describe this equivalence on the level of objects; some relevant details can also be found in <cit.>. Independently and much earlier, in his thesis <cit.> Shulman explores such a fixed-base equivalence on the level of double categories (of monoidal fibrations and monoidal pseudofunctors over the same base).

Suppose that $(\M, \mu, \mu_0) \maps (\X\op, \otimes, I) \to (\Cat, \times, \1)$ is a monoidal indexed category, i.e. a lax monoidal pseudofunctor with structure maps <ref>. The induced monoidal product $\otimes_\mu \maps \inta \M \times \inta \M \to \inta \M$ on the Grothendieck category is defined on objects by

\begin{equation}
\label{eq:globalmonstr}
(x,a) \otimes_\mu (y,b) = (x \otimes y, \mu_{x,y}(a,b))
\end{equation}

and $I_\mu=(I, \mu_0(*))$ is the unit object. Clearly, the induced fibration $\inta \M \to \X$ which maps each pair to the underlying $\X$-object strictly preserves the monoidal structure. Moreover, pseudonaturality of $\mu$ implies that $\otimes_\mu$ preserves cartesian liftings, so all clauses of <ref> are satisfied. For a more detailed exposition of the structure, as well as the braided and symmetric version, we refer the reader to the <ref>.

We can also restrict to the context of split fibrations and strict indexed categories.

There are 2-equivalences

\begin{gather*}
\MonFib_\spl \simeq \MonICat_\spl \\
\MonOpFib_\spl \simeq \MonOpICat_\spl
\end{gather*}

between monoidal split (op)fibrations and monoidal strict (op)indexed categories, as well as for the fixed-base case.

Again by applying $\PsMon(\textrm{-})$ to the 2-equivalence $\ICat_\spl\simeq\Fib_\spl$, we obtain equivalences between the respective structures discussed in <ref>, as the strict counterparts of <ref> and <ref>. Recall that a monoidal strict indexed category is a lax monoidal 2-functor $\X\op\to\Cat$ whose structure maps $(\phi,\phi_0)$ are strictly natural transformations, and corresponds to a split fibration which is monoidal like before, only the tensor product of the total category strictly preserves cartesian liftings.

We close this section in a similar manner to Sections <ref> and <ref>, namely by working in the cartesian monoidal 2-categories $(\Fib(\X), \boxtimes, 1_\X)$ and $(\ICat(\X), \boxtimes, \Delta\1)$ of fibrations and indexed categories with a fixed base category.

There are 2-equivalences between (op)fibrations with monoidal fibres and strong monoidal reindexing functors, and pseudofunctors into $\Mon\Cat$

\begin{align*}
\PsMon(\Fib(\X)) &\simeq \TCat_\pse(\X\op,\Mon\Cat)\quad
\\
\PsMon(\OpFib(\X)) &\simeq \TCat_\pse(\X\op,\Mon\Cat)
\end{align*}

Moreover, these restrict to 2-equivalences between split (op)fibrations with monoidal fibres and strict monoidal reindexing functors, and ordinary functors into $\Mon\Cat_\mathrm{st}$.

Since $\Fib(\X) \simeq \ICat(\X)$ is also a monoidal 2-equivalence, <ref> applies once more – recall <ref>.

These equivalences correspond to the fibrewise monoidal structure on fibrations and indexed categories. In more detail, a pseudofunctor $\M \maps \X\op \to \Mon\Cat$ maps every object $x$ to a monoidal category $\M x$ and every morphism $f \maps x \to y$ to a strong monoidal functor $\M f \maps \M y \to \M x$; under the usual Grothendieck construction, these are precisely the fibre categories and the reindexing functors between them for the induced fibration, as described at the end of <ref>. Notice how, in particular, $\X$ is not a monoidal category, as was the case in <ref>.

A very similar, relaxed version of the fibrewise monoidal correspondence seems to connect the concepts of an indexed monoidal category, defined in <cit.> as a pseudofunctor $\M\maps\X\op\to\Mon\Cat_\lax$, and that of of a lax monoidal fibration, defined in <cit.>. Notice that these terms are misleading with respect to ours: an indexed monoidal category is not a monoidal indexed category, and also a lax monoidal fibration is not a functor with a lax monoidal stucture.

Briefly, there is a full sub-2-category $\Fib_\opl(\X)\subseteq\Cat/\X$ of fibrations, namely fibred 1-cells <ref> which are not required to have a cartesian functor on top. As discussed in <cit.>, this is 2-equivalent to $\TCat_{ps,opl}(\X\op,\Cat)$, the 2-category of pseudofunctors, oplax natural transformations and modifications. Describing pseudomonoids therein appears to give rise to a fibration with monoidal fibres and lax monoidal reindexing functors between them, or equivalently a pseudofunctor into $\Mon\Cat_\lax$. We omit the details so as to not digress from our main development.

§ SUMMARY OF STRUCTURES

The bulk of this chapter is dedicated to proving various monoidal variations of the equivalence between fibrations and indexed categories, using general results in monoidal 2-category theory. In this section, we detail the descriptions of the (braided/symmetric) monoidal structures on the total category of the Grothendieck construction, assuming the appropriate data is present. We also provide a hands-on correspondence that underlies the proof of <ref> regarding the transfer of monoidal structure from a functor to its target and vice versa. We hope this section can serve as a quick and clear reference on some fundamental constructions of this chapter.

§.§ Monoidal Structures

As sketched under <ref>, let $(\X, \otimes, I)$ be a monoidal category, and
\[(\M, \mu, \mu_0) \maps (\X\op, \otimes\op, I) \to (\Cat, \times, \1)\]
a monoidal indexed category, a.k.a. lax monoidal pseudofunctor.  Recall that $\mu$ is pseudonatural transformation consisting of functors $\mu_{x,y} \maps \M x \times \M y \to \M(x \otimes y)$ for any objects $x$ and $y$ of $\X$, and natural isomorphisms

\[
\begin{tikzcd}[column sep = 70]
\M z \times \M w
\arrow[r, "\M f \times \M g"]
\arrow[d, "\mu_{z,w}", swap]
\M x \times \M y
\arrow[d, "\mu_{x,y}"]
\arrow[dl, phantom, "{\scriptstyle\stackrel{\mu_{f,g}}{\cong}}"]
\\
\M(z \otimes w)
\arrow[r, "\M(f \otimes g)", swap]
\M(x \otimes y)
\end{tikzcd}\]

for any arrows $f \maps x \to z$ and $g \maps y \to w$ in $\X$. Also the unique component of $\mu_0$ is the functor $\mu_0\maps\1\to\M(I)$.

The induced tensor product functor on the total category, denoted as $\otimes_\mu \maps \inta \M \times \inta \M \to \inta \M$, is given on objects by

(x,a) ⊗_μ(y,b) = (x ⊗y, μ_x,y(a,b))

On morphisms $\left(f\maps x\to z, k\maps a\to(\M f)c\right)$ and $\left(g\maps y\to w,\ell\maps b\to(\M g)d\right)$, we get

\[
(f, k) \otimes_\mu (g, \ell) = (x\otimes y\xrightarrow{f \otimes g} z\otimes w, \mu_{f,g}(\mu_{x, y}(k, \ell)))
\]

where the latter is the composite morphism

μ_x,y(a,b)μ_x,y((f)(c),(g)(d))(f⊗g)(μ_z.w(c,d)) in (x⊗y).

The monoidal unit is $I_\mu=(I, \mu_0)$.

If $a_{x,y,z} \maps (x \otimes y) \otimes z \to x \otimes (y \otimes z)$ denotes the associator in $\X$, the associator for $(\inta \M, \otimes_\mu, I_\mu)$ is given by

α_(x,b), (y,c), (z,d) = (α_x,y,z, ω_x,y,z (b,c,d))

where $\omega$ is the invertible modification <ref>.

If $l_x \maps I \otimes x \to x$ and $r_x \maps x \otimes I \to x$ are the left and right unitors in $\X$, the unitors in $\inta \M$ are defined as

\begin{gather*}
\lambda_x = (l_x, \xi_x^{\text{-}1}(a))\maps (I,\mu_0)\otimes_\mu(x,a)\to(x,a) \\
\rho_x = (r_x, \zeta_x(a))\maps(x,a)\otimes_\mu(I,\mu_0)\to(x,a)
\end{gather*}

where $\zeta$ and $\xi$ are invertible modifications as in <ref>.

We now turn to the correspondence between 1-cells of <ref>:
given a monoidal indexed 1-cell

\[
\begin{tikzcd}
(\X, \otimes, I)\op
\arrow[dr, "{(\M, \mu, \mu_0)}"]
\arrow[dd, "{(F, \psi, \psi_0)\op}", swap]
\\
\arrow[r, phantom, "\Downarrow{\scriptstyle\tau}"]
(\Cat, \times, \1)
\\
(\Y, \otimes, I)\op
\arrow[ur, "{(\psN, \nu, \nu_0)}", swap]
\end{tikzcd}\]

where $\M$ and $\psN$ are lax monoidal pseudofunctors and $F$ is a monoidal functor, as in <ref>, we first of all obtain an ordinary fibred 1-cell $(P_\tau,F)\maps P_\M\to P_\psN$ as explained above <ref>

with $P_\tau (x, a) = (F x, \tau_x (a))$. The functor $F$ is already monoidal, and $P_\tau$ obtains a monoidal structure too: for example, there are isomorphisms

P_τ(x,a) ⊗_νP_τ(y, b)  P_τ((x, a) ⊗_μ(y, b))    in
between the objects

\begin{align*}
P_\tau (x, a) \otimes_\nu P_\tau (y, b)
&= (Fx, \tau_x (a)) \otimes_\nu (Fy, \tau_y (b)
= (Fx \otimes Fy, \nu_{Fx, Fy} (\tau_x (a), \tau_y (b))
\\
&= P_\tau(x\otimes y,\mu_{x,y}(a,b))
= (F(x\otimes y),\tau_{x\otimes y}(\mu_{x,y}(a,b)))
\end{align*}

given by $\psi_{x,y} \maps Fx \otimes Fy \xrightarrow{\sim} F (x \otimes y)$ and by

\[
\nu_{Fx, Fy} (\tau_x (a), \tau_y (b)) \cong \psN (\psi_{x, y}) (\tau_{x \otimes y} (\mu_{x, y} (a, b)))
\]

essentially given by the monoidal pseudonatural isomorphism <ref> for $\tau \maps \M \Rightarrow \psN F\op$. As a result, $(P_\tau,F)$ is indeed a monoidal fibred 1-cell as in <ref>.

Finally, it can be verified that starting with a monoidal indexed 2-cell as in <ref>, the induced fibred 2-cell <ref> is monoidal, i.e. $P_m$ satisfies the conditions of a monoidal natural transformation.

Regarding the induced braided and symmetric monoidal structures, suppose that $(\X,\otimes,I)$ is a braided monoidal category, with braiding $b$ with components

\[
\braid_{x,y} \maps x \otimes y \xrightarrow{\sim} y \otimes x;
\]

then $\X\op$ is braided monoidal with the inverse braiding, namely $(\X\op,\otimes\op,I,\braid^{-1})$.
Now if $(\M,\mu,\mu_0)\maps\X\op\to\Cat$ is a braided lax monoidal pseudofunctor, i.e. a braided monoidal indexed category,
by <ref> we have an induced braided monoidal structure on $(\inta\M, \otimes_\mu, I_\mu)$, namely

\[
B_{(x, a), (y, b)} \maps (x, a) \otimes_\mu (y,b)=(x\otimes y,\mu_{x,y}(a,b)) \to (y,b) \otimes_\mu (x, a)=(y\otimes x,\mu_{y,x}(b,a))
\]

are given by $\braid_{x,y} \maps x \otimes y \cong y \otimes x$ in $\X$ and $(v_{x,y})_{(a,b)} \maps \mu_{x,y} (a,b) \cong \M (\braid^{-1}_{x,y}) (\mu_{y,x} (b,a))$, where $v$ is as in <ref>.

If $\M$ is a symmetric lax monoidal pseudofunctor, it can be verified that

\[
B_{(y, b),(x, a)} \circ B_{(x, a),(y, b)} = 1_{(x,a) \otimes_\mu (y,b)}
\]

therefore $\inta \M$ is also symmetric monoidal, as is the monoidal fibration $P_\M \maps \inta \M \to \X$.

§.§ Monoidal Indexed Categories as Ordinary Pseudofunctors

Here we detail the correspondence between monoidal opindexed categories and a pseudofunctors into $\Mon\Cat$ when the domain is a cocartesian monoidal category, as established by <ref>; the one for indexed categories is of course similar. We denote by $\nabla_x \maps x+x \to x$ the induced natural components due to the universal property of coproduct, and $\iota_x \maps x \to x+y$ the inclusion into a coproduct.

Start with a lax monoidal pseudofunctor $\M \maps (\X, +, 0) \to (\Cat, \times, \1)$ equipped with $\mu_{x,y}\maps \M(x) \times \M(y) \to \M(x + y)$ and $\mu_0 \maps \1 \to \M(0)$, which gives the global monoidal structure <ref> of the corresponding opfibration. There exists an induced monoidal structure on each fibre $\M(x)$ as follows:

\begin{gather}
\label{eq:explicitstructure1}
\otimes_x \maps \M(x) \times \M(x) \xrightarrow{\mu_{x,x}} \M(x + x) \xrightarrow{\M(\nabla)} \M(x)
\\
I_x \maps \1 \xrightarrow{\mu_0} \M(0) \xrightarrow{\M(!)} \M(x) \nonumber
\end{gather}

Moreover, each $\M f \maps \M x \to \M y$ is a strong monoidal functor, with $\phi_{a,b} \maps (\M f)(a) \otimes_y (\M f)(b) \xrightarrow{\sim} \M f(a \otimes_xb)$ and $\phi_0 \maps I_y \xrightarrow{\sim} (\M f) I_x$ essentially given by the following isomorphisms

\begin{equation}\label{eq:strongmonreindex}
\begin{tikzcd}[row sep=.3in,column sep=.8in]
\M x \times \M x
\arrow[r,"\M f\times\M f"]
\arrow[d,"\mu_{x,x}"']
\arrow[dr,phantom,"{\scriptstyle\stackrel{\mu^{f,f}}{\cong}}"description]
\M y \times \M y
\arrow[d,"\mu_{y,y}"]
\\
\M(x+x)
\arrow[d,"\M(\nabla_x)"']
\arrow[r,"\M(f+f)"description]
\arrow[dr,phantom,"{\scriptstyle\cong}"description]
& \M(y+y)\arrow[d,"\M(\nabla_y)"]
\\
\M x \arrow[r,"\M f"']
\M y
\end{tikzcd}
\qquad
\begin{tikzcd}
\1
\arrow[r,"\mu_0"]
\arrow[d,"\mu_0"']
\arrow[ddr,phantom,"{\scriptstyle\cong}"description]
\M(0)
\arrow[dd,"\M(!)"]
\\
\M(0)
\arrow[d,"\M(!)"']
\M x
\arrow[r,"\M f"']
\M y
\end{tikzcd}
\end{equation}

since $\nabla$ and $!$ are natural and $\M$ is a pseudofunctor.

In the opposite direction, take an ordinary pseudofunctor $\M\maps\X\to\Mon\Cat$ into the 2-category of monoidal categories, strong monoidal functors and monoidal natural transformations, with $\otimes_x\maps\M(x)\times\M(x)\to\M(x)$ and $I_x$ the fibrewise monoidal structures in every $\M x$. We can use those to endow $\M$ with a lax monoidal structure via

\begin{gather*}
\mu_{x,y} \maps \M(x) \times \M(y) \xrightarrow{\M(\iota_x) \times \M(\iota_y)} \M(x+y) \times \M(x+y) \xrightarrow{\otimes_{x+y}} \M(x+y)
\\
\mu_0 \maps \1 \xrightarrow{I_0} \M(0)
\end{gather*}

The fact that all $\M f$ are strong monoidal imply that the above components form pseudonatural transformations, and all appropriate conditions are satisfied.

In the strict context, a lax monoidal 2-functor $\M\maps(\X,+,0)\to(\Cat,\times,\1)$ with natural laxator and unitor bijectively corresponds to a functor $\X\to\Mon\Cat_\textrm{st}$ since <ref> are in fact strictly commutative, by naturality of $\mu,\mu_0$ and functoriality of $\M$.

In the even more special case of an ordinary lax monoidal functor $\M\maps(\X,+,0)\to(\Cat,\times,\1)$, the fibres $\M(x)$ turn out to be strict monoidal. For example, strict associativity of the tensor is established by

[column sep=.15in]
x ×x ×x
[rr, "1 ×⊗_x"]
[dr, "1 ×μ_x, x"']

[ddrr, bend left, "⊗_x"]
[dr, "μ_x, x"description]

[dd, phantom, "(*)"]
[ur, "1×(∇)"description]
[dr, "μ_x, x+x"description]

[dr, "∇"description]

[ur, "(1+∇)"description]
[dr, "(∇+1)"description]

[ur, "μ_x+x, x"description]
[dr, "(∇)×1"description]

[ur, "∇"description]

[ur, "μ_x, x×1"]
[rr, "⊗_x×1"']
[ur, "μ_x"description]
[uurr, bend right, "⊗_x"']

where the three diamond-shaped diagrams on the right commute due to naturality of $\mu$ as well as associativity of $\nabla$ and functoriality of $\M$ already in the monoidal strict opindexed case, whereas $(*)$ is in general $\omega$ from <ref> which in this case is an identity, and the four triangular diagrams commute due to <ref>.

§.§ Comparison with Higher-Dimensional Grothendieck Constructions

Monoidal categories are precisely bicategories with one object. As recalled in <ref>, there is a theory of fibred bicategories and indexed bicategories, and a corresponding Grothendieck construction. It is natural to consider the possibility that the monoidal Grothendieck constructions presented here are special cases of this bicategorical version. However, it is easy to see that this cannot be the case. When one restricts their view to just the objects, the bicategorical Grothendieck construction is just taking the disjoint union of the object sets of the fibres. If you consider an indexed monoidal category as a special case of an indexed bicategory, where each fibre has one object, then generally you would not expect the total bicategory to have one object. It would have as many objects as the base category. Thus, the result would not be a monoidal category. The construction given here always produces a monoidal category.

§ THE (CO)CARTESIAN CASE

In the previous section, we obtain two different equivalences between fixed-base fibrations and fixed-domain indexed categories of monoidal flavor: <ref> where both total and base categories are monoidal, and <ref> where only the fibres are monoidal. Clearly, neither of these two cases implies the other in general. The global monoidal structure as defined in <ref> sends two objects in arbitrary fibres to a new object lying in the fibre of the tensor of their underlying objects in the base, whereas having a fibre-wise tensor products does not give a way of multiplying objects in different fibres of the total category.

In <cit.>, Shulman introduces monoidal fibrations (<ref>) as a building block for fibrant double categories. Due to the nature of the examples, the results restrict to the case where the base of the monoidal fibration $P \maps \A \to \X$ is equipped with specifically a cartesian or cocartesian monoidal structure; the main idea is that these fibrations form a “parameterized family of monoidal categories”. Formally, a central result therein lifts the Grothendieck construction to the monoidal setting, by showing an equivalence between monoidal fibrations over a fixed (co)cartesian base and ordinary pseudofunctors into $\Mon\Cat$.

If $\X$ is cartesian monoidal,

\begin{equation}\label{eq:Shulmanequiv}
\MonFib(\X) \simeq \TCat_\pse(\X\op, \Mon\Cat)
\end{equation}

Dually, if $\X$ is cocartesian monoidal, $\MonOpFib(\X) \simeq \TCat_\pse(\X, \Mon\Cat)$.

Bringing all these structures together, we obtain the following.

If $\X$ is a cartesian monoidal category,

[ampersand replacement=&, sep=.25in]
[r, "≃"]
[d, "≃"'anchor=south, rotate=90, inner sep=.5mm]
_(, )
[d, "≃"anchor=south, rotate=270, inner sep=.5mm]

[r, "≃"]
_(, )

Dually, if $\X$ is a cocartesian monoidal category,

[ampersand replacement=&, sep=.25in]
[r, "≃"]
[d, "≃"'anchor=south, rotate=90, inner sep=.5mm]
_(, )
[d, "≃"anchor=south, rotate=270, inner sep=.5mm]

[r, "≃"]
_(, )

In the strict context, the restricted equivalences give a correspondence between monoidal split fibrations over $\X$ and functors $\X^{\op} \to \Mon\Cat_\mathrm{st}$, and between monoidal split opfibrations over $\X$ and functors $\X \to \Mon\Cat_\mathrm{st}$.

The original proof of <ref> is an explicit, piece-by-piece construction of an equivalence, and employs the reindexing functors $\Delta^*$ and $\pi^*$ induced by the diagonal and projections in order to move between the appropriate fibres and build the required structures. The global monoidal structure is therein called external and the fibre-wise internal.

Here we present a different argument that does not focus on the fibrations side. The equivalence between lax monoidal pseudofunctors $\X\op \to \Cat$ and ordinary pseudofunctors $\X\op \to \Mon\Cat$, which essentially provides a way of transferring the monoidal structure from the target category to the functor itself and vice versa, brings a new perspective on the behavior of such objects.

For any two monoidal 2-categories $\K$ and $\L$, the following are true.

* For an arbitrary 2-category $\A$,

\begin{equation}\label{eq:equiv1}
\TCat_\pse(\A, \MonTCat_\pse(\K, \L))\simeq\MonTCat_\pse(\K, \TCat_\pse(\A, \L))
\end{equation}

* For a cocartesian 2-category $\A$,

\begin{equation}\label{eq:equiv2}
\TCat_\pse(\A, \MonTCat_\pse(\K, \L))\simeq\MonTCat_\pse(\A\times\K, \L)
\end{equation}

First of all, recall <cit.> that there are equivalences

_(, _(, Ł))≃_(×, Ł)≃_(, _(, Ł))

which underlie <ref> and <ref> for the respective pseudofunctors; so the only part needed is the correspondence between the respective monoidal structures. Notice that $\A \times \K$ is a monoidal 2-category since both $\A$ and $\K$ are, and also $\TCat_\pse (\A, \L)$ is monoidal since $\L$ is: define $\otimes_{[]}$ and $I_{[]}$ by $(\F \otimes_{[]} \G)(a) = \F a \otimes_\L \G a$ (similarly to <ref>) and $I_{[]} \maps \A \xrightarrow{!} \1 \xrightarrow{I_\L} \L$.

First, we prove 1. Take a pseudofunctor $\F \maps \A \to \MonTCat_\pse (\K, \L)$. For every $a \in \A$, its image pseudofunctor $\F a$ is lax monoidal, i.e. comes equipped with maps in $\L$:

\begin{equation}
\label{eq:Faweakmon}
\phi_{x, y}^a \maps (\F a) (x) \otimes_\L (\F a) (y) \to (\F a) (x \otimes_\K y), \quad \phi_0^a \maps I_\L \to (\F a) I_\K
\end{equation}

for every $x, y \in \K$, satisfying coherence axioms.

Now define the pseudofunctor $\overline{\F} \maps \K \to \TCat_\pse(\A, \L)$, with $(\overline{\F} x) (a) := (\F a) (x)$. It has a lax monoidal structure, given by pseudonatural transformations

x ⊗_[]  y ⇒ (x ⊗_y),   I_[] ⇒(I_)

whose components evaluated on some $a \in \A$ are defined to be <ref>. Pseudonaturality and lax monoidal axioms follow, and in a similar way we can establish the opposite direction and verify the equivalence.

Now, we prove 2. If $\A$ is a cocartesian monoidal 2-category, a lax monoidal pseudofunctor $\F \maps \A \to \MonTCat_\pse (\K, \L)$ induces a pseudofunctor $\tilde{\F} \maps \A \times \K \to \L$ by $\tilde{\F} (a, x) := (\F a) (x)$. Its lax monoidal structure is given by the composite

[row sep=.1in, column sep=.2in]
(a, x) ⊗_Ł(b, y)
[d, equal]
[rr, dashed, "ψ_(a, x), (b, y)"]

(a + b, x ⊗_y)
[d, equal]

(a)(x) ⊗_Ł(b)(y)
[rdd, "(ι_a)_x ⊗(ι_b)_y"']

((a+b))(x ⊗_y)

((a+b))(x) ⊗_Ł((a+b))(y)
[uur, "ϕ^a+b_x, y"']

where $a \xrightarrow{\iota_a} a + b \xleftarrow{\iota_b} b$ are the inclusions, and $\psi_0 \maps I_\L \xrightarrow{\phi_0^0} \tilde{\F} (0, I_\K)$; the respective axioms follow.

In the opposite direction, starting with some pseudofunctor $\G \maps \A \times \K \to \L$ equipped with a lax monoidal structure $\psi_{(a, x), (b, y)}$ and $\psi_0$, we can build $\hat{\G} \maps \A \to \MonTCat_\pse(\K, \L)$ for which every $\hat{\G}a$ is a lax monoidal pseudofunctor, via

\begin{gather*}
\begin{tikzcd}[row sep=.1in, column sep=.5in, ampersand replacement=\&]
(\hat{\G}a)(x) \otimes_\L (\hat{\G}b)(y)
\arrow[d, equal]
\arrow[rr, dashed, "\phi^a_{(x, y)}"]
\&\&
(\hat{\G}a)(x\otimes_\K y)
\arrow[d, equal]
\\
\G(a, x) \otimes_\L \G(a, y)
\arrow[r, "{\psi_{(a, x), (a, y)}}"']
\&
\G(a + a, x \otimes_\K y)
\arrow[r, "{G(\nabla, 1)}"']
\&
\G(a, x\otimes_\K y)
\end{tikzcd}\\
\phi_0^a \maps I_\L \xrightarrow{\psi_0} G(0, I_\K) \xrightarrow{G(!, 1)} G(a, I_\K)
\end{gather*}

The equivalence follows, using the universal properties of coproducts and initial object.

The top and bottom right 2-categories of the first square are equivalent as follows, where $\X\op$ is cocartesian.

\begin{align*}
\TCat_\pse(\X\op, \Mon\Cat)
& \simeq \TCat_\pse (\X\op, \PsMon(\Cat)) & \text{\cref{eq:PsMon}}\\
& \simeq \TCat_\pse (\X\op, \MonTCat_\pse(\1, \Cat)) & \text{\cref{eq:equiv2}} \\
& \simeq \MonTCat_\pse (\X\op \times \1, \Cat)  \\
& \simeq \MonTCat_\pse(\X\op, \Cat)
\end{align*}

The strict context equivalence can be explicitly verified as a special case of the above, where the corresponding 1-cells and 2-cells are as described in <ref> and <ref>.

The decisive step in the above proof is
the much broader <ref>; for a grounded explanation of the correspondence of the relevant structures, see <ref>.
In simpler words, a lax monoidal structure of a pseudofunctor $F\maps(\A, +, 0)\to(\Cat, \times, \1)$ gives a pseudofunctor $F\maps\A\to\Mon\Cat$ and vice versa: in a sense, `monoidality' can move between the functor and its target.

As another corollary of <ref>, we can formally deduce that pseudomonoids in $(\ICat(\X), \boxtimes, \Delta\1)$ are functors into $\Mon\Cat$, as described at the end of <ref>.

For any $\X$, $\PsMon(\ICat(\X))\simeq\TCat_\pse(\X\op, \Mon\Cat)$.

There are equivalences

\begin{align*}
\PsMon(\ICat(\X))
& = \PsMon(\TCat_\pse(\X\op, \Cat))
\\& \simeq \MonTCat_\pse (\1, \TCat_\pse(\X\op, \Cat)) & \text{\cref{eq:equiv1}}
\\& \simeq \TCat_\pse(\X\op, \MonTCat_\pse(\1, \Cat)) & \text{\cref{eq:PsMon}}
\\& \simeq \TCat_\pse(\X\op, \PsMon(\Cat))
\\& \simeq \TCat_\pse(\X\op, \Mon\Cat)
\end{align*}

as desired.

As a first and meaningful example of <ref>, recall that the categories $\Fib$ and $\ICat$ are themselves fibred over $\Cat$, with fibres $\Fib(\X)$ and $\ICat(\X)$ respectively. The base category in both cases is the cartesian monoidal category $(\Cat, \times, 1)$, therefore <ref> applies. The following proposition shows that the monoidal structures of $\Fib$, $\ICat$ and $\Fib(\X)$, $\ICat(\X)$, instrumental for the study of global and fibre-wise monoidal structures, follow the very same abstract pattern.

The fibrations $\Fib\to\Cat$ and $\ICat\to\Cat$ are monoidal, and moreover their fibres $\Fib(\X)$ and $\ICat(\X)$ are monoidal and the reindexing functors are strong monoidal.

The pseudofunctors inducing $\Fib\to\Cat$ and $\ICat\to\Cat$ are

[row sep=.05in]

[mapsto, rr]
[dd, "F"']

[mapsto, rr]
[dd, "F"']

[mapsto, rr]

[uu, "F^*"']

[mapsto, rr]

[uu, "-∘F"']

where $\mathsf{CAT}$ is the 2-category of possibly large categories, $F^*$ takes pullbacks along $F$ and $-\circ F\op$ precomposes with the opposite of $F$. These are both lax monoidal, with the respective structures essentially being <ref> and <ref> giving the global monoidal structure on the fibrations.

Since the base of both monoidal fibrations is cartesian, the global monoidal structure is equivalent to a fibre-wise monoidal structure, as per the theme of this whole section. The induced monoidal structure on each $\Fib(\X)$ is given by <ref> and on each $\ICat(\X)$ by <ref>, and $F^*$, $-\circ F\op$ are strong monoidal functors accordingly.

The above essentially lifts the global and fibre-wise monoidal structure development one level up, exhibiting fibrations and indexed categories as examples of the monoidal Grothendieck construction themselves.

Concluding this investigation on monoidal structures of fibrations and indexed categories, we consider the (co)cartesian monoidal (op)fibration case; for example, a monoidal fibration $P\maps(\A, \times, 1)\to(\X, \times, 1)$ as in <ref> where $P$ preserves products (or coproducts for opfibrations) on the nose. As remarked in <cit.>, the equivalence <ref> restricts to one between pseudofunctors which land to cartesian monoidal categories, and monoidal fibrations where the total category is cartesian monoidal. With the appropriate 1-cells and 2-cells that preserve the structure, we can write the respective equivalences as

\begin{gather}
\TCat_\pse(\X\op, \Cart) \simeq \cMonFib(\X) \textrm{ for cartesian $\X$}\label{eq:cocartspecialcase} \\
\TCat_\pse(\X, \Cocart) \simeq \cocMonOpFib(\X) \textrm{ for cocartesian $\X$}\nonumber
\end{gather}

where the prefixes $\mathsf{c}$ and $\mathsf{coc}$ correspond to the respective (co)cartesian structures. Explicitly, in order for the total category to specifically be endowed with (co)cartesian monoidal structure, it is required not only that the base category is but also the fibres are and the reindexing functors preserve finite (co)products.

This special case of the monoidal Grothendieck construction that connects the existence of (co)products and initial/terminal object in the fibres and in the total category, is reminiscent (and also an example of) the general theory of fibred limits originated from <cit.>. Explicitly, <cit.> deduces that if the base of a fibration $P \maps \A \to \X$ has $\J$-limits for any small category $\J$, then the fibres have and the reindexing functors preserve $\J$-limits if and only if $\A$ has $\J$-limits and $P$ strictly preserves them, and dually for opfibrations and colimits. Hence for finite (co)products in (op)fibrations, <ref> re-discovers that result using the monoidal Grothendieck correspondence.

Moreover, since the squares of <ref> reduce to their (co)cartesian variants, we would like to identify the conditions that the corresponding lax monoidal pseudofunctor into $\Cat$ needs to satisfy in order to give rise to a (co)cartesian monoidal (op)fibration. We employ <ref> to tackle the opfibration case: if, in a symmetric monoidal category $\X$, there exist monoidal natural transformations with components

∇_x x ⊗x →x,   u_x I →x

satisfying the commutativity of

\begin{equation}\label{eq:nabla}
\begin{tikzcd}
I \otimes x
\arrow[r, "u_x\otimes1"]
\arrow[dr, "\sim"{rotate=-30}, "\ell_x"']
x\otimes x
\arrow[d, "\nabla_x"]
x\otimes I
\arrow[dr, "\sim"{rotate=-30}, "r_x"']
\arrow[r, "1\otimes u_x"]
x\otimes x
\arrow[d, "\nabla_x"]
\\&
\end{tikzcd}
\end{equation}

then $\X$ is cocartesian monoidal. In fact, it is the case that a symmetric monoidal category is cocartesian if and only if $\Mon(\X)\cong\X$.

Suppose $(\M, \mu, \mu_0) \maps \X\to\Cat$ is a (symmetric) lax monoidal pseudofunctor, such that the corresponding Grothendieck category $(\inta \M, \otimes_\mu, I_\mu)$ described in <ref> is cocartesian monoidal. This means there are monoidal natural transformations with components

\begin{equation*}
\nabla_{(x, a)}
\maps (x, a) \otimes_{\mu} (x, a)
\to (x, a)
\quad\textrm{and}\quad  u_{(x, a)}
\maps (I, \mu_0(*))
\to (x, a)
\end{equation*}

making the diagrams <ref> commute.
Explicitly, by <ref>, $\nabla_{(x, a)}$ consists of morphisms
$f_x \maps x \otimes x \to x$ in $\X$ and
$\kappa_a\maps (\M f_x)(\mu_{x, x}(a, a)) \to a$ in $\M x$,
whereas $u_{(x, a)}$ consists of
$i_x \maps I \to x$ in $\X$ and
$\lambda_a \maps (\M i_x)\mu_0 \to a$
in $\M x$.

The conditions <ref> say that the composites

\[
(I, \mu_0) \otimes_\mu (x, a) \xrightarrow{u_{(x, a)} \otimes_\mu 1_{(x, a)}} (x, a) \otimes_\mu (x, a) \xrightarrow{\nabla_{(x, a)}} (x, a)
\]

\[
(x, a) \otimes_\mu (I, \mu_0) \xrightarrow{1_{(x, a)} \otimes_\mu u_{(x, a)}} (x, a) \otimes_\mu (x, a) \xrightarrow{\nabla_{(x, a)}} (x, a)
\]

are equal to the left and right unitor on $x$, where all respective structures are detailed in <ref>. Using the composition inside $\inta \M$ analogously to <ref>, these conditions translate, on the one hand, to the base being cocartesian monoidal $(\X, +, 0)$ with $f_x=\nabla_x$ and $i_x=u_x$. On the other hand, $\kappa_a$ and $\lambda_a$ form natural transformations

\begin{equation}\label{kappalambda}
\begin{tikzcd}[row sep=.1in, column sep=.2in]
\M x \times \M x
\arrow[r, "\mu_{x, x}"]
\M (x+x)
\arrow[dr, "\M(\nabla_x)"]
\\
\M x
\arrow[ur, "\Delta"]
\arrow[rrr, bend right=20, "1"']
\arrow[rrr, phantom, "\Downarrow {\scriptstyle \kappa^x}"]
\M x
\end{tikzcd}\quad
\begin{tikzcd}[row sep=.1in, column sep=.2in]
& \1
\arrow[r, "\mu_0"]
\M(0)
\arrow[dr, "\M(u_x)"]
\\
\M x
\arrow[ur, "!"]
\arrow[rrr, bend right=20, "1"']
\arrow[rrr, phantom, "\Downarrow{\scriptstyle \lambda^x}"]
\M x
\end{tikzcd}
\end{equation}

satisfying the commutativity of

[column sep=.2in, row sep=.2in]
(∇_x ∘(u_x + 1)) (μ_0, x (μ_0(*), a))
[ddd, "id"']
[rr, "∼"', "δ"]

((∇_x) ∘(u_x + 1)) ((μ_0, x(μ_0(*), a))
[d, "∼"anchor=south, rotate=90, inner sep=.5mm, "(∇_x)(μ_u_x, 1)"]

(∇_x) (μ_x, x ((u_x) (μ_0(*), a)))
[d, "(∇_x) (μ_x, x (λ^x_a, γ))"]

(∇_x) (μ_x, x (a, a))
[d, "κ^x_a"]

(ℓ_x) (μ_0, x (μ_0(*), a))
[rr, "ξ", "∼"']

and a similar one with $\mu_0$ on second arguments. The above greatly simplifies if $\M$ is just a lax monoidal functor:
the first condition becomes $1_a \cong \kappa^x_a \circ \M(\nabla_x) (\mu_{x, x} (\lambda_a^x, 1))$, and the second one $1_a \cong \kappa^x_a \circ \M(\nabla_x) (\mu_{x, x} (1_a, \lambda_a^x))$.

A lax monoidal pseudofunctor $\M\maps(\X, +, 0)\to(\Cat, \times, \1)$ equipped with natural transformations $\kappa$ and $\lambda$ as in <ref> corresponds to an ordinary pseudofunctor $\M\maps\X\to\Cocart$, or equivalently <ref> to a cocartesian monoidal opfibration.

§ EXAMPLES

In this section, we explore certain settings where the equivalence between monoidal fibrations and monoidal indexed categories naturally arises. Instead of going into details that would result in a much longer text, we mostly sketch the appropriate example cases up to the point of exhibition of the monoidal Grothendieck correspondence, providing indications of further work and references for the interested reader.

§.§ Fundamental Bifibration

For any category $\X$, the codomain or fundamental opfibration is the usual functor from its arrow category

\[\cod \maps \X^2 \longrightarrow \X\]
mapping every morphism to its codomain and every commutative square to its right-hand side leg. It uniquely corresponds to the strict opindexed category, i.e. mere functor

\begin{equation}\label{eq:fundamentalindexedcat}
\begin{tikzcd}[row sep=.05in]
\X
\arrow[r]
\Cat
\\
\arrow[r, mapsto]
\arrow[dd, "f"']
\X/x
\arrow[dd, "f_!"]
\\\\
\arrow[mapsto, r]
\X/y
\end{tikzcd}
\end{equation}

that maps an object to the slice category over it and a morphism to the post-composition functor $f_!=f\circ-$ induced by it.

If the category has a monoidal structure $(\X, \otimes, I)$, this (2-)functor naturally becomes lax monoidal with structure maps

\begin{equation}\label{eq:slicelaxator}
\X/x\times\X/y\xrightarrow{\otimes}\X/(x\otimes y), \quad \1\xrightarrow{1_I}\X/I.
\end{equation}

These components form strictly natural transformations, and for example the invertible modification $\omega$ <ref> has components the evident isomorphisms, for $(f, g, h)\in\X/x\times\X/y\times\X/z$, between

\begin{align}
a \otimes (b \otimes c)& \xrightarrow{f \otimes (g \otimes h)} x \otimes (y \otimes z) \cong (x \otimes y) \otimes z \label{eq:pseudoassociativity}\\
(a \otimes b) \otimes c & \xrightarrow{(f \otimes g) \otimes h} (x \otimes y) \otimes z\nonumber
\end{align}

By <ref>, this monoidal strict opindexed category correspondes to a monoidal split fibration, i.e. $(\X^\2, \otimes, 1_I)$ is monoidal and $\cod$ strict monoidal, where $\otimes_{\X^\2}$ strictly preserves cartesian liftings via $f_!k \otimes g_! \ell = (f \otimes g)_! (k \otimes \ell)$ – which can of course be independently verified. However in general, the slice categories $\X/x$ do not inherit the monoidal structure: there is no way to restrict the global monoidal structure to a fibrewise one.

According to <ref>, there is an induced monoidal structure on the categories $\X/x$ and a strict monoidal structure on all $f_!$ only when the monoidal structure on $\X$ is given by binary coproducts and an initial object (i.e. cocartesian). In that case, for each $k\maps a\to x$ and $\ell\maps b\to x$ in the same fibre $\X/x$, their tensor product in $\X/x$ is given by

as a simple example of <ref>.
In fact, this is precisely the coproduct of two objects in $\X/x$, and $0\xrightarrow{!}x$ the initial object, due to the way colimits in the slice categories are constructed. Therefore this falls under the cocartesian-fibres special case <ref>, bijectively corresponding to the cocartesian structure on $\X^\2$ inherited from $\X$.

Now suppose an ordinary category $\X$ has pullbacks. This endows the codomain functor also with a fibration structure, corresponding to the indexed category

[row sep=.05in]

[r, mapsto]
[dd, "f"']

[mapsto, r]

[uu, "f^*"']

with the same mapping on objects as <ref> but by taking pullbacks rather than post-composing along morphisms, a pseudofunctorial assignment. This gives $\cod\maps \X^2\to\X$ a bifibration structure, also by that classic fact that $f_!\dashv f^*$.

In this case, if $\X$ has a general monoidal structure, there is no naturally induced lax monoidal structure of that pseudofunctor as before: there is no reason for the pullback of a tensor to be isomorphic to the tensor of two pullbacks.
However, if $\X$ is cartesian monoidal (hence has all finite limits), the components

/x×/y/(x×y),     /1

are pseudonatural since pullbacks commute with products. Moreover, this bijectively corresponds to monoidal fibres and strong monoidal reindexing functors, in fact also cartesian ones: for morphisms $k \maps a\to x$ and $\ell \maps b\to x$ in $\X/x$, their induced product is given by

[d, "δ^*(k×ℓ)"']
[dr, phantom, very near start, "⌟"]

a ×b
[d, "k×ℓ"]

[r, "δ"]

x ×x

and $1_x \maps x\to x$ is the unit of each slice $\X/x$, this indexed monoidal category also described in <cit.>.
The monoidal fibration structure on $\cod \maps (\X^2, \times, 1_1) \to (X, \times, 1)$ is the evident one, so it again falls in the special case <ref> now for cartesian fibres, by construction of products in slice categories.

As a final remark, analogous constructions hold for the domain functor which is again a bifibration: its fibration structure comes from pre-composing along morphisms, whereas its opfibration structure comes from taking pushouts along morphisms.

§.§ Family Fibration: Zunino and Turaev Categories

Recall that for any category $\C$, the standard family fibration is induced by the (strict) functor

\begin{equation}\label{eq:functV}
[-, \C]\maps \Set\op\to\Cat
\end{equation}

which maps every discrete category $X$ to the functor category $[X, \C]$ and every function $f \maps X \to Y$ to the functor $f^* = [f, 1]$, i.e. pre-composition with $f$.
The total category of the induced fibration $\Fam(\C)\to\C$ has as objects pairs $(X, M\maps X\to\C)$ essentially given by a family of $X$-indexed objects in $\C$, written $\{M_x\}_{x\in X}$, whereas the morphisms are
[column sep=.7in, row sep=.2in]
[dr, "M"]
[dd, "f"']

[r, phantom, "⇓α"description]

[ur, "N"']

namely a function $f\maps X\to Y$ together with families of morphisms $\alpha_x\maps M_x\to N_{fx}$ in $\C$. Notice the similarity of this description with <ref>, which for the strict indexed categories case looks like a non-discrete version of the family fibration, for $\C=\Cat$. Moreover, it is a folklore fact that $\Fam(\C)$ is the free coproduct cocompletion on the category $\C$.

On the other hand, we could consider the opfibration induced by the very same functor <ref>, denoted by $\Maf(\C)\to\Set\op$. The objects of $\Maf(\C)$ are the same as $\Fam(\C)$, but morphisms $\{M_x\}_{x\in X}\to\{N_y\}_{y\in Y}$ between them are functions $g\maps Y\to X$ (i.e. $X\to Y$ in $\Set\op$) together with families of arrows $\beta_y\maps M_{gy}\to N_y$ in $\C$. Notice that these are now indexed over the set $Y$ rather than $X$ like before, and in fact $\Maf (\X) = \Fam (\X\op)\op$.

In the case that the category is monoidal $(\C, \otimes, I)$, the (2-)functor $[-, \C]$ has a canonical lax monoidal structure. Explicitly, by taking its domain $\Set\op$ to be cocartesian by the usual cartesian monoidal structure $(\Set, \times, 1)$, the structure maps are

ϕ_X, Y [X, ] ×[Y, ] →[X ×Y, ],     ϕ_0   [, ] ≅
where $\phi_{X, Y}$ corresponds, under the tensor-hom adjunction in $\Cat$, to

[X, ] ×[Y, ] ×X ×Y  [X, ] ×X ×[Y, ] ×Y  × .

These are again natural components, and for example <ref> has components the natural isomorphisms between the assignments $Mx\otimes (Ny\otimes Uz)$ and $(Mx\otimes Ny)\otimes Uz$.
By <ref>, this monoidal strict indexed category endows the corresponding split fibration $\Fam(\X) \to \Set$ with a monoidal structure via $\{M_x\} \otimes \{N_y\} := \{M_x \otimes N_y \}_{X \times Y}$. On the other hand, we could use the dual part of the same theorem, and instead consider the induced monoidal split opfibration $\Maf(\X) \to \Set\op$ corresponding to the same $([-, \C], \phi, \phi_0)$.

Moreover, since $\Set$ is cartesian, <ref> also applies in both cases, giving a monoidal structure to the fibres as well: for $M\maps X\to\C$ and $N\maps X\to\C$, their fibrewise tensor product and unit are given by

XX×X×,     X1
which are precisely constructed as in <ref>. Once again, notice the direct similary with <ref>, the fibrewise monoidal structure on $\ICat(\X)$.

As an interesting example, consider $\C=\Mod_R$ for a commutative ring $R$, with its usual tensor product $\otimes_R$. In <cit.>, the authors introduce a category $\mathcal{T}$ of Turaev $R$-modules, as well as a category $\mathcal{Z}$ of Zunino $R$-modules, which serve as symmetric monoidal categories where group-(co)algebras and Hopf group-(co)algebras, <cit.>, live as (co)monoids and Hopf monoids respectively.

In more detail, the objects of both $\mathcal{T}$ and $\mathcal{Z}$ are defined to be pairs $(X, M)$ where $X$ is a set and $\{M_x\}_{x\in X}$ is an $X$-indexed family of $R$-modules, and their morphisms are respectively

s M_g(y) →N_y  in  _R

g Y →X  in

tM_x→N_f(x) in _R

fX→Y in

There is a symmetric pointwise monoidal structure, $\{M_x\otimes_R N_y\}_{X\times Y}$, and there are strict monoidal forgetful functors $\mathcal{T}\to\Set\op$, $\mathcal{Z}\to\Set$.
It is therein shown that comonoids in $\mathcal{T}$ are monoid-coalgebras and monoids in $\mathcal{Z}$ are monoid-algebras, i.e. families of $R$-modules indexed over a monoid, together with respective families of linear maps

\begin{gather*}
(\mathcal{T})\quad C_{g*h}\to C_g\otimes C_h \qquad (\mathcal{Z})\quad
A_g\otimes A_h\to A_{g*h} \\
C_e\to R \qquad \phantom{ZZZZZZZ}R\to A_e
\end{gather*}

satisfying appropriate axioms. Based on the above, it is clear that $\mathcal{T}=\Maf(\Mod_R)$ and $\mathcal{Z}=\Fam(\Mod_R)$, which clarifies the origin of these categories and can be directly used to further generalize the notions of Hopf group-(co)monoids in arbitrary monoidal categories.

§.§ Global Categories of Modules and Comodules

For any monoidal category $\mathcal{V}$,
there exist global categories of modules and comodules, denoted by $\Mod$ and $\Comod$ <cit.>.
Their objects are all (co)modules over (co)monoids in $\V$, whereas a morphism between an $A$-module $M$ and a $B$-module $N$ is given by a monoid map $f\maps A\to B$ together with a morphism $k\maps M\to N$ in $\V$ satisfying the commutativity of

A⊗M[rr, "μ"][d, "1⊗k"']        M[d, "k"]

A⊗N[r, "f⊗1"']     B⊗N[r, "μ"']     N

where $\mu$ denotes the respective action, and dually for comodules.
Both these categories arise as the total categories induced by the Grothendieck construction on the functors

\begin{equation}\label{eq:functors}
\begin{tikzcd}[row sep = tiny]
\Mon(\V)\op
\arrow[r]
\Cat
\Comon(\V)
\arrow[r]
\Cat
\\
\arrow[r, dashed, mapsto]
\arrow[dd, swap, "f"]
\Mod_\V(A)
\arrow[r, dashed, mapsto]
\arrow[dd, swap, "g"]
\Comod_\V(C)
\arrow[dd, "g_!"]
\\{}\\
\arrow[r, dashed, mapsto]
\Mod_\V(B)
\arrow[uu, swap, "f^*"]
\arrow[r, dashed, mapsto]
\Comod_\V(D)
\end{tikzcd}
\end{equation}

where $f^*$ and $g_!$ are (co)restriction of scalars: if $M$ is a $B$-module, $f^*(M)$ is an $A$-module via the action

A ⊗M  B ⊗M  M.

The induced split fibration and opfibration, $\Mod \to \Mon(\V)$ and $\Comod \to \Comon(\V)$, map a (co)module to its respective (co)monoid.

Recall that when $(\V, \otimes, I, \sigma)$ is braided monoidal, its categories of monoids and comonoids inherit the monoidal structure: if $A$ and $B$ are monoids, then $A\otimes B$ has also a monoid structure via

A ⊗B ⊗A ⊗B  A ⊗A ⊗B ⊗B  A ⊗B,     I ≅I ⊗I  A ⊗B

where $m$ and $j$ give the respective monoid structures.
In that case, the induced split fibration and opfibration are both monoidal. This can be deduced by directly checking the conditions of <ref>, as was the case in the relevant references, or in our setting by using <ref> since both (2-)functors <ref> are lax monoidal. For example, for any $A, B \in \Mon(\V)$ there are natural maps

ϕ_A, B _(A) ×_(B) →_(A ⊗B)    ϕ_0  →_(I)

with $\phi_{A, B} (M, N) = M \otimes N$, with the $A \otimes B$-module structure being

A ⊗B ⊗M ⊗N  A ⊗M ⊗B ⊗N  M ⊗N

and $\phi_0(*)=I$, which are pseudoassociative and pseudounital in the sense that e.g. for any $M, N, P\in\Mod_\mathcal{V}(A)\times\Mod_\mathcal{V}(B)\times\Mod_\mathcal{V}(C)$, $M\otimes(N\otimes P)$ is only isomorphic to $(M\otimes N)\otimes P$ as $(A\otimes B)\otimes C$-modules.

Notice that in general, the monoidal bases $\Mon(\V)$ and $\Comon(\V)$ are not (co)cartesian, since they have the same tensor as $(\V, \otimes, I, \sigma)$. Therefore this case does not fall under <ref>, hence the fibre categories are not monoidal. For example in $(\mathsf{Vect}_k, \otimes_k, k)$, the $k$-tensor product of two $A$-modules for a $k$-algebra $A$ is not an $A$-module as well.

We remark that the induced monoidal opfibration $\Comod \to \Comon(\V)$ in fact serves as the monoidal base of an enriched fibration structure on $\Mod \to \Mon (\V)$ as explained in <cit.>, built upon an enrichment between the monoidal bases $\Mon(\V)$ in $\Comon(\V)$ established in <cit.>. Moreover, analogous monoidal structures are induced on the (op)fibrations of monads and comonads in any fibrant monoidal double category, see <cit.>.

§.§ Systems as Monoidal Indexed Categories

In <cit.> as well as in earlier works e.g. <cit.>, the authors investigate a categorical framework for modeling systems of systems using algebras for a monoidal category. In more detail, systems in a broad sense are perceived as lax monoidal pseudofunctors

where $\mathcal{W}_\C$ is the monoidal category of $\C$-labeled boxes and wiring diagrams with types in a finite product category $\mathcal{C}$. Briefly, the objects in $\mathcal{W}_\mathcal{C}$ are pairs $X=(X^\mathrm{in}, X^\mathrm{out})$ of finite sets equipped with functions to $\ob\mathcal{C}$, thought of as boxes

[oriented WD, bbx=.1cm, bby =.1cm, bb port sep=.15cm]
[bb=33] (X) $X$;
node[left=.1 of X_in1]  $a_1$
node[left=.1 of X_in2]  $\dotso$
node[left=.1 of X_in3]  $a_m$
node[right=.1 of X_out1] $b_1$
node[right=.1 of X_out2]  $\dotso$
node[right=.1 of X_out3] $b_n$;

where $X^\mathrm{in}=\{a_1, \ldots, a_m\}$ are the input ports, $X^\mathrm{out}=\{b_1, \ldots, b_n\}$
the output ones and all wires are associated to a $\mathcal{C}$-object expressing the type of information that can go through them. A morphism $\phi\maps X\to Y$ in this category consists
of a pair of functions

that respect the $\mathcal{C}$-types,
which roughly express which port is `fed information' by which.
Graphically, we can picture it as

\begin{equation}\label{eq:wiringdiagpic}
\begin{tikzpicture}[oriented WD, baseline=(Y.center), bbx=2em, bby=1.2ex, bb port sep=1.2]
\node[bb={6}{6}] (X) {};
\node[bb={2}{3}, fit={($(X.north east)+(0.7, 1.7)$) ($(X.south west)-(.7, .7)$)}] (Y) {};
\node [circle, minimum size=4pt, inner sep=0, fill] (dot1) at ($(Y_in1')+(.5, 0)$) {};
\node [circle, minimum size=4pt, inner sep=0, fill] (dot2) at ($(X_out4)+(.5, 0)$) {};
\draw[ar] (Y_in1') to (dot1);
\draw[ar] (X_out4) to (dot2);
\draw[ar] (Y_in2') to (X_in5);
\draw[ar] (Y_in2') to (X_in4);
\draw[ar] (X_out5) to (Y_out3');
\draw[ar] (X_out2) to (Y_out1');
\draw[ar] (X_out2) to (Y_out2');
\draw[ar] let \p1=(X.north west), \p2=(X.north east), \n1={\y1+\bby}, \n2=\bbportlen in
(X_out1) to[in=0] (\x2+\n2, \n1) -- (\x1-\n2, \n1) to[out=180] (X_in1);
\draw[ar] let \p1=(X.north west), \p2=(X.north east), \n1={\y1+2*\bby}, \n2=\bbportlen in
(X_out1) to[in=0] (\x2+\n2, \n1) -- (\x1-\n2, \n1) to[out=180] (X_in2);
\draw[ar] let \p1=(X.south west), \p2=(X.south east), \n1={\y1-\bby}, \n2=\bbportlen in
(X_out6) to[in=0] (\x2+\n2, \n1) -- (\x1-\n2, \n1) to[out=180] (X_in6);
\draw [label]
node at ($(Y.north east)-(.5cm, .3cm)$) {$Y$}
node at ($(X.north east)-(.4cm, .3cm)$) {$X$}
node[left=.1 of X_in3]  {$\dotso$}
node[right=.1 of X_out3] {$\dotso$}
node[above=of Y.north] {$\phi\maps X\to Y$}
\end{tikzpicture}
\end{equation}

Composition of morphisms can be thought of a zoomed-in picture of three boxes, and the monoidal structure amounts to parallel placement of boxes as in

[oriented WD, baseline=(Y.center), bbx=1.3em, bby=1ex, bb port sep=.06cm]
[bb=33] (X1) ;
[bb=33, below =.5 of X1] (X2) ;
[fit=(X1)(X2), draw] ;
node at ($(X1.west)+(1, 0)$) $X_1$
node at ($(X2.west)+(1, 0)$) $X_2$
node[left=.1 of X1_in2]  $\dotso$
node[right=.1 of X1_out2]  $\dotso$
node[left=.1 of X2_in2]  $\dotso$
node[right=.1 of X2_out2]  $\dotso$;
(X1_in1) – (-2.5, 1.7);
(X1_out1) – (2.5, 1.7);
(X1_in3) – (-2.5, -1.7);
(X1_out3) – (2.5, -1.7);
(X2_in1) – (-2.5, -5.6);
(X2_out1) – (2.5, -5.6);
(X2_in3) – (-2.5, -9.1);
(X2_out3) – (2.5, -9.1);

There is a close connection between the definition of $\mathcal{W}_\mathcal{C}$ and that of Dialectica categories as well as lenses; such considerations are the topic of work in progress <cit.>.

The systems-as-algebras formalism uses lax monoidal pseudofunctors from this category
$\mathcal{W}_\mathcal{C}$ to $\Cat$ that essentially receive a general picture such as
[oriented WD, bb min width =.5cm, bbx=.5cm, bb port sep =1, bb port length=.08cm, bby=.15cm]
[bb=22, bb name = $X_1$] (X11) ;
[bb=33, below right=of X11, bb name = $X_2$] (X12) ;
[bb=21, above right=of X12, bb name = $X_3$] (X13) ;
(X11_out1) to (X13_in1);
(X11_out2) to (X12_in1);
(X12_out1) to (X13_in2);
[bb=22, below right = -1 and 1.5 of X12, bb name = $X_4$] (X21) ;
[bb=12, above right=-1 and 1 of X21, bb name = $X_5$] (X22) ;
(X21_out1) to (X22_in1);
let 1=(X22.north east), 2=(X21.north west), 1=1+, 2=in
(X22_out1) to[in=0] (1+2, 1) – (2-2, 1) to[out=180] (X21_in1);
[bb=22, fit = ($(X11.north east)+(-1, 3)$) (X12) (X13) ($(X21.south)$) ($(X22.east)+(.5, 0)$), bb name =$Y$] (Z) ;
(Z_in1') to (X11_in2);
(Z_in2') to (X12_in2);
(X12_out2) to (X21_in2);
let 1=(X22.south east), 1=1-, 2=in
(X21_out2) to (1+2, 1) to (Z_out2');
let 1=(X12.south east), 2=(X12.south west), 1=1-, 2=in
(X12_out3) to[in=0] (1+2, 1) – (2-2, 1) to[out=180] (X12_in3);
let 1=(X22.north east), 2=(X11.north west), 1=2+, 2=in
(X22_out2) to[in=0] (1+2, 1) – (2-2, 1) to[out=180] (X11_in1);
let 1=(X13_out1), 2=(X22.north east), 2=in
(X13_out1) to (1+2, 1) – (2+2, 1) to (Z_out1');

(which really takes place in the underlying operad of $\mathcal{W}_\mathcal{C}$) and assign systems of a certain kind to all inner boxes; the lax monoidal and pseudofunctorial structure of this assignment formally produce a system of the same kind for the outer box.

Examples of such systems are discrete dynamical systems (Moore machines in the finite case), continuous dynamical systems but also more general systems with deterministic or total conditions; details can be found in the provided references. Since all these systems are lax monoidal pseudofunctors from the non-cocartesian monoidal category of wiring diagrams to $\Cat$, i.e. monoidal indexed categories, the monoidal Grothendieck construction <ref> induces a corresponding monoidal fibration in each system case, and this global structure does not reduce to a fibrewise one.

For example, the algebra for discrete dynamical systems

\begin{equation}\label{eq:DDS}
\mathrm{DDS}\maps \mathcal{W}_\Set\to\Cat
\end{equation}

assigns to each box $X=(X^\mathrm{in}, X^\mathrm{out})$
the category of all discrete dynamical systems with fixed input and output sets being $\prod_{x\in X^\mathrm{in}}x$ and $\prod_{y\in X^\mathrm{out}}y$ respectively. There exist morphisms between systems of the same input and output set, but not between those with different ones. To each morphism, i.e. wiring diagram as in <ref>, $\mathrm{DDS}$
produces a functor that maps an inner discrete dynamical system to a new outer one, with changed input and output sets accordingly.
(Pseudo)functoriality of this assignment
allows the coherent zoom-in and zoom-out on dynamical systems built out of smaller dynamical systems, and monoidality allows the creation of new dynamical systems on parallel boxes.

Being a monoidal indexed category, <ref> gives rise to a monoidal opfibration over $\mathcal{W}_\Set$. Its  total category $\inta \mathrm{DDS}$ has objects all dynamical systems with arbitrary input and output sets, morphisms that can now go between systems of different inputs/outputs, and also a natural tensor product inherited from that in $\mathcal{W}_\Set$ and the laxator of $\inta\mathrm{DDS}$. In a sense, this category has all the required flexibility for the direct communication (via morphisms in the total category) between any discrete dynamical system, or any composite of systems or parallel placement of them, whereas the wiring diagram algebra <ref> focuses on the machinery of building new discrete dynamical systems systems from old.

This classic change of point of view also transfers over to maps of algebras, i.e. indexed monoidal 1-cells. As an example, see <cit.>, discrete dynamical systems can naturally be viewed as general total and deterministic machines denoted by $\mathrm{Mch}^\mathrm{td}$,
via a monoidal pseudonatural transformation

\[
\begin{tikzcd}
\mathcal{W}_\Set
\arrow[dr, "\mathrm{DDS}"]
\arrow[dd]
\\
\arrow[r, phantom, "\Downarrow"]
\Cat
\\
\mathcal{W}_{\widetilde{\mathrm{Int}_N}}
\arrow[ur, "\mathrm{Mch}^\mathrm{td}", swap]
\end{tikzcd}\]

which also changes the type of input and output wires from sets to discrete interval sheaves $\widetilde{\mathrm{Int}_N}$. This gives rise to a monoidal opfibred 1-cell

which provides a direct functorial translation between the one sort of system to the other in a way compatible with the monoidal structure.

As a final note, this method of modeling certain objects as algebras for a monoidal category (a.k.a. strict or general monoidal indexed categories) carries over to further contexts than systems and the wiring diagram category. Examples include hypergraph categories as algebras on cospans  <cit.> and traced monoidal categories as algebras on cobordisms  <cit.>. In all these cases, the monoidal Grothendieck construction gives a potentially fruitful change of perspective that should be further investigated.

§.§ Graphs

As we show in <ref>, the category of (directed, multi) graphs, is bifibred over set, where the bifibration $\mathsf V \maps \Grph \to \Set$ is given by sending a graph to its vertex set.

Since $\mathsf V \maps \Grph \to \Set$ preserves products, then it can be given the structure of a strict monoidal monoidal functor with respect to the cartesian monoidal structures on $\Grph$ and $\Set$. Since the cartesian morphisms are those that form pullback squares, and products in $\Grph$ are given pointwise, then the monoidal structure in $\Grph$ preserves cartesian morphisms. We can then apply <ref> to obtain a symmetric lax monoidal structure for the pseudofunctor $\Grph^* \maps \Set\op \to \Cat$. The lax structure map $\gamma_{X,Y} \maps \Grph_X \times \Grph_Y \to \Grph_{X \times Y}$ is given by taking the product of the two graphs within $\Grph$. Notice the product has vertex set given by $X \times Y$. Since the base category is cartesian monoidal, we can apply <ref>, granting a symmetric monoidal structure to the fibres $\Grph_X$. The monoidal product is given by the following composite.

\[
\Grph_X \times \Grph_X \xrightarrow{\gamma_{X,X}} \Grph_{X\times X} \xrightarrow{\Delta^*} \Grph_X
\]

Simply put, this operation is given by taking the product of the two graphs on $X$, and then restricting to the vertices on the diagonal. Indeed, this is the cartesian monoidal structure on $\Grph_X$.

Since the category $\Set$ also has all finite colimits, we obtain a symmetric lax monoidal structure for the pseudofunctor $\Grph_* \maps \Set\op \to \Cat$. The lax structure map $\phi_{X,Y} \maps \Grph_X \times \Grph_Y \to \Grph_{X + Y}$ is given by taking the disjoint union of the two graphs. Notice the disjoint union has vertex set given by $X + Y$. Since the base category is cocartesian monoidal, we can apply <ref>, granting a symmetric monoidal structure to the fibres $\Grph_X$. The monoidal product is given by the following composite.

\[
\Grph_X \times \Grph_X \xrightarrow{\phi_{X,X}} \Grph_{X + X} \xrightarrow{\Delta_*} \Grph_X
\]

Simply put, this operation is given by taking the disjoint union of the edges. Indeed, this is the cocartesian monoidal structure on $\Grph_X$. This is also the overlay operation for the network model of directed multi graphs.

CHAPTER: MONOIDAL CATEGORIES

Monoidal categories lie at the center of applied category theory. This section is included mainly to establish notation and terminology used throughout this thesis. Some standard references are <cit.> and <cit.>.

§ DEFINITIONS

§.§ Monoidal, Braided, and Symmetric Categories

A monoidal category $(\C, \otimes, I, \assoc, \lambda, \rho)$ consists of

* a category $\C$

* a functor $\otimes \maps \C \times \C \to \C$ called the tensor

* a functor $I \maps 1 \to \C$ called the unit

* a natural transformation $\assoc$ with components of the form $\assoc_{x,y,z} \maps (x \otimes y) \otimes z \to x \otimes (y \otimes z)$ called the associator

* a natural transformation $\lambda$ with components of the form $\lambda_x \maps I \otimes x \to x$ called the left unitor

* a natural transformation $\rho$ with components of the form $\rho_x \maps x \otimes I \to x$ called the right unitor

such that the following diagrams commute.

Pentagon identity:

\begin{equation}
\label{monoidalpentagon}
\begin{tikzcd}[column sep = large]
(w \otimes x) \otimes (y \otimes z)
\arrow[ddr, "\alpha_{w,x,y \otimes z}"]
\\
((w \otimes x) \otimes y) \otimes z
\arrow[ur, "\alpha_{w \otimes x,y,z}"]
\arrow[dd, swap, "\alpha_{w,x,y} \otimes 1_z"]
\\&&
w \otimes (x \otimes (y \otimes z))
\\
(w \otimes (x \otimes y)) \otimes z
\arrow[dr, swap, "\alpha_{w,x \otimes y,z}"]
\\&
w \otimes ((x \otimes y) \otimes z)
\arrow[uur, swap, "1_w \otimes \alpha_{x,y,z}"]
\end{tikzcd}
\end{equation}

Triangle identity:

\begin{equation}
\label{leftorrightor}
\begin{tikzcd}
(x \otimes I) \otimes y
\arrow[rr, "\assoc_{x, I, y}"]
\arrow[dr, swap, "\rho_x \otimes 1_y"]
x \otimes (I \otimes y)
\arrow[dl, "1_x \otimes \lambda_y"]
\\&
x \otimes y
\end{tikzcd}
\end{equation}

A strict monoidal category is one where the associator, left unitor, and right unitor are all identity.

A braided monoidal category <cit.> is a monoidal category equipped with a natural transformation $\braid$ called the braiding with components $\braid_{x,y} \maps x \otimes y \to y \otimes x$, such that the following diagrams commute.

\begin{equation}
\begin{tikzcd}
(x \otimes y) \otimes z
\arrow[r, "\assoc_{x,y,z}"]
\arrow[d, swap, "\braid_{x,y} \otimes 1_z"]
x \otimes (y \otimes z)
\arrow[d, "\braid_{x, y \otimes z}"]
\\
(y \otimes x) \otimes z
\arrow[d, swap, "\assoc_{y,x,z}"]
(y \otimes z) \otimes x
\arrow[d, "\assoc_{y,z,x}"]
\\
y \otimes (x \otimes z)
\arrow[r, swap, "1_y \otimes \braid_{x,z}"]
y \otimes (z \otimes x)
\end{tikzcd}
\qquad
\begin{tikzcd}
x \otimes (y \otimes z)
\arrow[r, "\assoc_{x,y,z}\inv"]
\arrow[d, swap, "1_x \otimes \braid_{y,z}"]
(x \otimes y) \otimes z
\arrow[d, "\braid_{x \otimes y, z}"]
\\
x \otimes (z \otimes y)
\arrow[d, swap, "\assoc_{x,z,y}\inv"]
z \otimes (x \otimes y)
\arrow[d, "\assoc_{z,x,y}\inv"]
\\
(x \otimes z) \otimes y
\arrow[r, swap, "\braid_{x,z} \otimes 1_y"]
(z \otimes x) \otimes y
\end{tikzcd}
\end{equation}

A symmetric monoidal category is a braided monoidal category where the braiding satisfies the equation $\braid_{y,x} \circ \braid_{x,y} = 1_{x \otimes y}$ for all objects $x,y \in \C$. A commutative monoidal category is a symmetric monoidal category where the braiding is identity.

For general (braided/symmetric) monoidal categories, we write $\C$, $\D$, or $\E$.

§.§ Monoidal, Braided, and Symmetric Functors

Let $(\C, \otimes_\C, I_\C, \assoc^\C, \leftor^\C, \rightor^\C)$ and $(\D, \otimes_\D, I_\D, \assoc^\D, \leftor^\D, \rightor^\D)$ be monoidal categories. A lax monoidal functor from $\C$ to $\D$ consists of

* a functor $F \maps \C \to \D$

* a natural transformation with components $\phi_{x,y} \maps Fx \otimes_\D Fy \to F(x \otimes_\C y)$ called the laxator

* a natural transformation with unique component $\phi_0 \maps I_\D \to F I_\C$ called the unit laxator

such that the following diagrams commute.

\begin{equation}
\begin{tikzcd}[column sep = large]
(Fx \otimes_\D Fy) \otimes_\D Fz
\arrow[r, "\assoc^\D_{Fx,Fy,Fz}"]
\arrow[d, swap, "\phi_{x,y} \otimes_\D 1_{Fz}"]
Fx \otimes_\D (Fy \otimes_\D Fz)
\arrow[d, "1_{Fx} \otimes_\D \phi_{y,z}"]
\\
F(x \otimes_\C y) \otimes_\D Fz
\arrow[d, swap, "\phi_{x \otimes_\C y, z}"]
Fx \otimes_\D F(y \otimes_\C z)
\arrow[d, "\phi_{x, y \otimes_\C z}"]
\\
F((x \otimes_\C y) \otimes_\C z)
\arrow[r, swap, "F(\assoc^\C_{x,y,z})"]
F(x \otimes_\C (y \otimes_\C z))
\end{tikzcd}
\end{equation}

\begin{equation}
\begin{tikzcd}
I_\D \otimes_\D Fx
\arrow[r, "\leftor^\D_{Fx}"]
\arrow[d, swap, "\phi_0 \otimes_\D 1_{Fx}"]
\\
FI_\C \otimes_\D Fx
\arrow[r, swap, "\phi_{I_\C, x}"]
F(I_\C \otimes_\C x)
\arrow[u, swap, "F(\leftor^\C_x)"]
\end{tikzcd}
\qquad
\begin{tikzcd}
Fx \otimes_\D I_\D
\arrow[r, "\rightor^\D_x"]
\arrow[d, swap, "1_{Fx} \otimes_\D \phi_0"]
\\
Fx \otimes_\D FI_\C
\arrow[r, swap, "\phi_{x,I_\C}"]
F(x \otimes_\C I_\C)
\arrow[u, swap, "F(\rightor^\C_x)"]
\end{tikzcd}
\end{equation}

We say that $F$ is simply a monoidal functor when $\phi$ and $\phi_0$ are natural isomorphisms. It is worth noting that there exists a notion of “oplax” monoidal functors, where the structure map is reversed: $\phi_{x,y} \maps F(x \otimes y) \to Fx \otimes Fy$. However, oplax monoidal functors do not appear in this thesis, so we spend no further time on them.

A lax braided monoidal functor is a lax monoidal functor $(F, \phi, \phi_0) \maps (\C, \otimes_\C, I_\C) \to (\D, \otimes_\D, I_\D)$ where $\C$ and $\D$ are braided monoidal categories, with $\braid^\C$ and $\braid^\D$ being the respective braidings, such that the following diagram commutes.

\begin{equation}
\begin{tikzcd}
Fx \otimes_\D Fy
\arrow[r, "\braid^\D_{Fx,Fy}"]
\arrow[d, swap, "\phi_{x,y}"]
Fy \otimes_\D Fx
\arrow[d, "\phi_{y,x}"]
\\
F(x \otimes_\C y)
\arrow[r, swap, "F\braid^\C_{x,y}"]
F(y \otimes_\C x)
\end{tikzcd}
\end{equation}

A (lax) braided monoidal functor between symmetric monoidal categories is called a (lax) symmetric monoidal functor with no further requirements.

Composition of lax monoidal functors is strictly associative.

We get categories $\Mon\Cat_\ell$, $\Mon\Cat$, $\Br\Mon\Cat_\ell$, $\Br\Mon\Cat$, $\Sym\Mon\Cat_\ell$, and $\Sym\Mon\Cat$ where the objects are monoidal categories, the functors are monoidal categories, the prefix $\Br$ (resp. $\Sym$) indicates the objects and morphisms are braided (resp. symmetric), and the subscript $\ell$ indicated the morphisms are lax monoidal.

§.§ Monoidal Natural Transformations

Let $(F, \phi, \phi_0)$ and $(G, \gamma, \gamma_0)$ be lax monoidal functors. A monoidal natural transformation is a natural transformation $\theta \maps F \To G$ such that the following diagrams commute.

\begin{equation}
\begin{tikzcd}
Fx \otimes_\D Fy
\arrow[r, "\theta_x \otimes_\D \theta_y"]
\arrow[d, swap, "\phi_{x,y}"]
Gx \otimes_\D Gy
\arrow[d, "\gamma_{x,y}"]
\\
F(x \otimes_\C y)
\arrow[r, swap, "\theta_{x \otimes_C y}"]
G(x \otimes_\C y)
\end{tikzcd}
\qquad
\begin{tikzcd}
\arrow[dr, "\phi_0"]
\arrow[dl, swap, "\gamma_0"]
\\
\arrow[rr, swap, "\theta_{I_\C}"]
\end{tikzcd}
\end{equation}

There are no new laws which can be imposed on a monoidal natural transformation between braided or symmetric monoidal functors. So we do not specialize this concept any further.

§ EXAMPLES

Let $(M, \cdot, e)$ be a monoid. If we can consider $M$ as a discrete category, then it can be given a strict monoidal structure where the tensor is given by $\cdot$ and the unit is $e$. The functor $\Mon \hookrightarrow \Mon\Cat$ which realizes a monoid as a discrete monoidal category is full and faithful. If we think of this as “forgetting discreteness”, then discreteness is a property.

Given a monoidal category $(\C, \otimes, I)$, we can define $ \otimes\rev \maps \C \times \C \to \C$ by

\[
\begin{tikzcd}
\C \times \C
\arrow[rr, "\otimes\rev"]
\arrow[dr, swap, "\braid^\Cat_{\C,\C}"]
\C
\\&
\C \times \C
\arrow[ur, swap, "\otimes"]
\end{tikzcd}\]

This defines an idempotent automorphism on $\Mon\Cat$.

Given a monoidal category $(\C, \otimes, I)$, the category $\C$ can be equipped with a monoidal structure given by $\otimes\op \maps \C\op \times \C\op \to \C\op$ and the same unit object. This defines an idempotent automorphism on $\Mon\Cat$.

Any category $C$ with finite products can be equipped with a symmetric monoidal structure as follows. For every pair of objects $c, d$, choose some object satisfying the universal property of the product of $c$ and $d$, call it $c \times d$. Given a pair of morphisms $f \maps a \to b$ and $g \maps c \to d$, the universal property gives a morphism $f \times g \maps a \times b \to c \times d$ as follows.

\[
\begin{tikzcd}[row sep = tiny]
a \times b
\arrow[dl, "\pi_a", swap]
\arrow[dr, "\pi_b"]
\arrow[dd, dashed, "\exists!"]
\\
\arrow[dd, "f", swap]
\arrow[dd, "g"]
\\&
c \times d
\arrow[dl, "\pi_c"]
\arrow[dr, "\pi_d", swap]
\\
\end{tikzcd}\]

We claim that this defines a functor $\times \maps C \times C \to C$. Consider a pair of morphisms $(f_1, f_2) \maps (a_1, a_2) \to (b_1, b_2)$ and $(g_1, g_2) \maps (b_1, b_2) \to (c_1, c_2)$.
Since $(g_1 \circ f_1) \times (g_2 \circ g_2)$ and $(g_1 \times g_2) \circ (f_1 \times f_2)$ both make the following diagram commute, they must be equal.

\[
\begin{tikzcd}[row sep = small]
a_1 \times a_2
\arrow[dl]
\arrow[dr]
\arrow[dd, dashed, ""]
\\
\arrow[d, "f_1", swap]
\arrow[d, "f_2"]
\\
\arrow[d, "g_1", swap]
c_1 \times c_2
\arrow[dl]
\arrow[dr]
\arrow[d, "g_2"]
\\
\end{tikzcd}\]

Identity maps are preserved because the identity map on $a \times b$ makes the diagram below commute.

\[
\begin{tikzcd}[row sep = tiny]
a \times b
\arrow[dl, "\pi_a", swap]
\arrow[dr, "\pi_b"]
\arrow[dd, dashed]
\\
\arrow[dd, "1_a", swap]
\arrow[dd, "1_b"]
\\&
a \times b
\arrow[dl, "\pi_a"]
\arrow[dr, "\pi_b", swap]
\\
\end{tikzcd}\]

We define the unit object to be some chosen terminal object, call it $1$. The associator, unitors, pentagon, hexagon, braiding, hexagon law, and symmetric law can all be derived from the universal property of products. This gives $\C$ the structure of a symmetric monoidal category. This is called the cartesian monoidal structure, and $(\C, \times, 1)$ is called a cartesian monoidal category.

Any category with finite coproducts can be equipped with a symmetric monoidal structure by <ref> and <ref>.

If $\C$ is monoidal and $\D$ is a category, the functor category $\C^\D$ can be given a pointwise monoidal structure as follows. Define $\otimes_{pt} \maps \C^\D \times \C^\D \to \C^\D$ by $\otimes_{pt} = \otimes (F \times G) \circ \Delta$. The unit object $1 \to \C^\D$ is given by currying the composite $D \xrightarrow{!} 1 \xrightarrow{I} \C$. The rest of the structures and the necessary properties all carry over from their counterparts in $\C$. Similarly, if $\C$ is braided or symmetric, then $\C^\D$ can be given a pointwise braided or symmetric monoidal structure respectively.

Let $C$ be a small monoidal category. Then the Day convolution tensor product <cit.>

\[\otimes_\Day \maps \Set^{\C\op} \times \Set^{\C\op} \to \Set^{\C\op}\]

is the following left Kan extension.

\[\begin{tikzcd}
C\op \times C\op
\arrow[r, "{(X,Y)}"]
\arrow[d, "\otimes", swap]
\Set
\\
\arrow[ur, "X \otimes_\Day Y", swap, dashed]
\end{tikzcd}\]

This can be given by the following coend formula <cit.>.
\[X \otimes_\Day Y \maps c \mapsto \int^{c_1,c_2 \in C} C(c_1 \otimes c_2, c) \times X(c_1) \times Y(c_2)\]

Similarly, we can define the unit via left Kan extension.

\[\begin{tikzcd}
\arrow[r, "\Delta1"]
\arrow[d, "I", swap]
\Set
\\
\arrow[ur, "I_\Day", swap, dashed]
\end{tikzcd}\]

Day convolution gives the functor category $\Set^{\C\op}$ a monoidal structure. Many nice properties of this structure can be found in the literature, e.g. <cit.>. However, these properties are not heavily used in this thesis, so we choose to leave them out.

§ MONOID OBJECTS

A monoidal structure is exactly what a category needs to have if we want to define monoid objects in this category.

Let $(\C, \otimes, I)$ be a monoidal category. A monoid object internal to $\C$ consist of

* an object $x \in \C$

* a morphism $\mu \maps x \otimes x \to x$

* a morphism $\varepsilon \maps I \to x$

such that the following diagrams commute.

\begin{equation}
\begin{tikzcd}
(x \otimes x) \otimes x
\arrow[rr, "\assoc_{x,x,x}"]
\arrow[d, swap, "\mu \otimes 1_x"]
x \otimes (x \otimes x)
\arrow[d, "1_x \otimes \mu"]
\\
x \otimes x
\arrow[dr, swap, "\mu"]
x \otimes x
\arrow[dl, "\mu"]
\\&
\end{tikzcd}
\end{equation}

\begin{equation}
\begin{tikzcd}
I \otimes x
\arrow[r, "\varepsilon \otimes x"]
\arrow[dr, swap, "\leftor_x"]
x \otimes x
\arrow[d, "\mu"]
x \otimes I
\arrow[l, swap, "x \otimes \varepsilon"]
\arrow[dl, "\rightor_x"]
\\&
\end{tikzcd}
\end{equation}

Alternatively, we can express these structures with string diagrams as follows.

* multiplication

[style=blackdot] (mu) at (0, 0) ;
[style=none] (2) at (-0.5, 0.5) ;
[style=none] (3) at (0.5, 0.5) ;
[style=none] (4) at (0, -0.5) ;
[style=none] () at (1, 0) ;

[bend right] (2.center) to (mu);
[bend left] (3.center) to (mu);
(4.center) to (mu);

* neutral element

[style=blackdot] (mu) at (0, 0) ;
[style=none] (4) at (0, -0.5) ;
[style=none] () at (1, 0) ;

(4.center) to (mu);

such that

\begin{equation}
\begin{tikzpicture}
\begin{pgfonlayer}{nodelayer}
\node [style=none] (1) at (0, 1) {};
\node [style=none] (2) at (0.5, 1) {};
\node [style=none] (3) at (1, 1) {};
\node [style=none] (4) at (1, 0.5) {};
\node [style=none] (5) at (0.625, -0.5) {};
\node [style=blackdot] (b1) at (0.25, 0.5) {};
\node [style=blackdot] (b2) at (0.625, 0) {};
\node [style=none] () at (1.5, 0.25) {=};
\node [style=none] () at (2, 0.5) {}; % spacing
\end{pgfonlayer}
\begin{pgfonlayer}{edgelayer}
\draw [bend right] (1.center) to (b1.center);
\draw [bend left] (2.center) to (b1.center);
\draw (3.center) to (4.center);
\draw [bend left] (4.center) to (b2.center);
\draw [bend right] (b1.center) to (b2.center);
\draw (b2.center) to (5.center);
\end{pgfonlayer}
\end{tikzpicture}
\begin{tikzpicture}
\begin{pgfonlayer}{nodelayer}
\node [style=none] (1) at (0, 1) {};
\node [style=none] (2) at (0.5, 1) {};
\node [style=none] (3) at (1, 1) {};
\node [style=none] (4) at (0, 0.5) {};
\node [style=none] (5) at (0.375, -0.5) {};
\node [style=blackdot] (b1) at (0.75, 0.5) {};
\node [style=blackdot] (b2) at (0.375, 0) {};
\end{pgfonlayer}
\begin{pgfonlayer}{edgelayer}
\draw (1.center) to (4.center);
\draw [bend right] (2.center) to (b1.center);
\draw [bend left] (3.center) to (b1.center);
\draw [bend right] (4.center) to (b2.center);
\draw [bend left] (b1.center) to (b2.center);
\draw (b2.center) to (5.center);
\end{pgfonlayer}
\end{tikzpicture}
\end{equation}

\begin{equation}
\begin{tikzpicture}
\begin{pgfonlayer}{nodelayer}
\node [style=blackdot] (mu) at (0, 0) {};
\node [style=blackdot] (ep) at (0.5, 1) {};
\node [style=none] (1) at (-0.5, 1.5) {};
\node [style=none] (2) at (0.5, 0.5) {};
\node [style=none] (4) at (-0.5, 0.5) {};
\node [style=none] (5) at (0, -0.5) {};
\node [style=none] () at (1.25, 0.5) {=};
\node [style=none] () at (1.75, 1) {}; % spacing
\end{pgfonlayer}
\begin{pgfonlayer}{edgelayer}
\draw (1.center) to (4.center);
\draw (ep.center) to (2.center);
\draw [bend left] (2.center) to (mu.center);
\draw [bend right] (4.center) to (mu.center);
\draw (mu.center) to (5.center);
\end{pgfonlayer}
\end{tikzpicture}
\begin{tikzpicture}
\begin{pgfonlayer}{nodelayer}
\node [style=none] (1) at (0, 1.5) {};
\node [style=none] (2) at (0, -0.5) {};
\node [style=none] () at (0.5, 0.5) {=};
\node [style=none] () at (1, 1) {}; % spacing
\end{pgfonlayer}
\begin{pgfonlayer}{edgelayer}
\draw (1.center) to (2.center);
\end{pgfonlayer}
\end{tikzpicture}
\begin{tikzpicture}
\begin{pgfonlayer}{nodelayer}
\node [style=blackdot] (mu) at (0.5, 0) {};
\node [style=blackdot] (ep) at (0, 1) {};
\node [style=none] (1) at (1, 1.5) {};
\node [style=none] (2) at (0, 0.5) {};
\node [style=none] (4) at (1, 0.5) {};
\node [style=none] (5) at (0.5, -0.5) {};
\end{pgfonlayer}
\begin{pgfonlayer}{edgelayer}
\draw (1.center) to (4.center);
\draw (ep.center) to (2.center);
\draw [bend right] (2.center) to (mu.center);
\draw [bend left] (4.center) to (mu.center);
\draw (mu.center) to (5.center);
\end{pgfonlayer}
\end{tikzpicture}
\end{equation}

Let $(x, \mu, \varepsilon)$ and $(y, \nu, \delta)$ be monoids in $\C$. A morphism $f \maps x \to y$ is called a monoid homomorphism if the following diagrams commute.

\[
\begin{tikzcd}
x \otimes x
\arrow[r, "f \otimes f"]
\arrow[d, swap, "\mu"]
y \otimes y
\arrow[d, "\nu"]
\\
\arrow[r, swap, "f"]
\end{tikzcd}
\qquad
\begin{tikzcd}
\arrow[dl, swap, "\varepsilon"]
\arrow[dr, "\delta"]
\\
\arrow[rr, swap, "f"]
\end{tikzcd}
\]

In strings, these equations are depicted as follows.

\[
\begin{tikzpicture}
\begin{pgfonlayer}{nodelayer}
\node [style=none] (x) at (-0.5, 0.75) {};
\node [style=none] (y) at (0.5, 0.75) {};
\node [style=construct] (f1) at (-0.5, 0) {$f$};
\node [style=construct] (f2) at (0.5, 0) {$f$};
\node [style=blackdot] (m) at (0, -0.75) {};
\node [style=none] (q) at (0, -1.25) {};
\node [style=none] () at (1.3, 0) {=};
\node [style=none] () at (1.7, 0) {};
\end{pgfonlayer}
\begin{pgfonlayer}{edgelayer}
\draw (x.center) to (f1.center);
\draw (y.center) to (f2.center);
\draw [bend right = 50] (f1.center) to (m.center);
\draw [bend left = 50](f2.center) to (m.center);
\draw (m.center) to (q.center);
\end{pgfonlayer}
\end{tikzpicture}
\begin{tikzpicture}
\begin{pgfonlayer}{nodelayer}
\node [style=none] (x) at (-0.5, 0.75) {};
\node [style=none] (y) at (0.5, 0.75) {};
\node [style=blackdot] (m) at (0, 0) {};
\node [style=construct] (f) at (0, -0.75) {$f$};
\node [style=none] (q) at (0, -1.25) {};
\end{pgfonlayer}
\begin{pgfonlayer}{edgelayer}
\draw [bend right = 50] (x.center) to (m.center);
\draw [bend left = 50] (y.center) to (m.center);
\draw (m.center) to (f.center);
\draw (f.center) to (q.center);
\end{pgfonlayer}
\end{tikzpicture}
\qquad\qquad\qquad
\begin{tikzpicture}
\begin{pgfonlayer}{nodelayer}
\node [style=blackdot] (m) at (0, 0) {};
\node [style=construct] (f) at (0, -0.75) {$f$};
\node [style=none] (q) at (0, -1.25) {};
\node [style=none] () at (0.8, -0.5) {=};
\node [style=none] () at (1.3, 0) {};
\end{pgfonlayer}
\begin{pgfonlayer}{edgelayer}
\draw (m.center) to (f.center);
\draw (f.center) to (q.center);
\end{pgfonlayer}
\end{tikzpicture}
\begin{tikzpicture}
\begin{pgfonlayer}{nodelayer}
\node [style=blackdot] (m) at (0, 0) {};
\node [style=none] (q) at (0, -1.25) {};
\end{pgfonlayer}
\begin{pgfonlayer}{edgelayer}
\draw (m.center) to (q.center);
\end{pgfonlayer}
\end{tikzpicture}
\]

Let $\Mon(\C, \otimes)$ denote the category of monoid objects in $\C$ and their homomorphisms. If $\C$ is $\Set$ with its cartesian monoidal structure, we simply denote the category of monoids by $\Mon$.

Let $(\C, \otimes, I)$ be a braided monoidal category. A commutative monoid in $\C$ is a monoid object in $\C$ where the following equation holds.

\begin{equation}
\begin{tikzpicture}
\begin{pgfonlayer}{nodelayer}
\node [style=none] (3) at (0, -0.5) {};
\node [style=blackdot] (r) at (0, 0) {};
\node [style=none] (1) at (-0.25, 0.5) {};
\node [style=none] (2) at (0.25, 0.5) {};
\node [style=none] () at (1, 0) {=};
\node [style=none] () at (1.5, 0) {}; % spacing
\end{pgfonlayer}
\begin{pgfonlayer}{edgelayer}
\draw [bend right] (1.center) to (r.center);
\draw [bend left] (2.center) to (r.center);
\draw (r.center) to (3.center);
\end{pgfonlayer}
\end{tikzpicture}
\begin{tikzpicture}
\begin{pgfonlayer}{nodelayer}
\node [style=none] (1) at (0, -0.5) {};
\node [style=blackdot] (m) at (0, 0) {};
\node [style=none] (2) at (0, 0.55) {};
\node [style=none] (3) at (-0.25, 1) {};
\node [style=none] (4) at (0.25, 1) {};
\end{pgfonlayer}
\begin{pgfonlayer}{edgelayer}
\draw (1.center) to (m.center);
\draw [bend right = 90, looseness = 1.5] (m.center) to (2.center);
\draw [bend left = 45] (2.center) to (3.center);
\draw [bend left = 90, white, line width = 3, looseness = 1.5] (m.center) to (2.center);
\draw [bend right = 45, white, line width = 3] (2.center) to (4.center);
\draw [bend left = 90, looseness = 1.5] (m.center) to (2.center);
\draw [bend right = 45] (2.center) to (4.center);
\end{pgfonlayer}
\end{tikzpicture}
\end{equation}

Let $\CMon(\C, \otimes)$ denote the category of commutative monoid objects in $\C$ and their homomorphisms. If $\C$ is $\Set$ with its cartesian monoidal structure, we simply denote the category of commutative monoids by $\CMon$.

§ THE ECKMANN–HILTON ARGUMENT

Let $C$ be a braided monoidal category, and let $x$ be an object equipped with two distinct monoid structures $(x, \mu, \varepsilon)$ and $(x, \nu, \eta)$ such that $\mu$ and $\nu$ are related by the following equation.

\begin{equation}
\label{interchange}
\mu \circ (\nu \otimes \nu) = \nu(\mu \otimes \mu) \circ (1 \otimes \braid \otimes 1)
\end{equation}

Then $\varepsilon = \eta$, $\mu = \nu$, and $(x, \mu, \varepsilon)$ is commutative.

It is important to note that if $\C$ is $\Set$ or some other concrete category, and the operations are instead denoted by $\circ$ and $\star$, <ref> becomes $(a \circ b) \star (c \circ d) = (a \star c) \circ (b \star d)$. Due to this formulation, this relation as it appears in many contexts is called the middle-four interchange law.

We prove it using string diagrams, just for fun. Let the following string diagram components represent $\varepsilon$, $\mu$, $\eta$, and $\nu$, respectively.

\[
\begin{tikzpicture}
\begin{pgfonlayer}{nodelayer}
\node [style=reddot] (ru) at (0, 0.5) {};
\node [style=none] (1) at (0, 0) {};
\node [style=none] () at (1, 0.5) {,};
\node [style=none] () at (1.5, 0.5) {}; % spacing
\end{pgfonlayer}
\begin{pgfonlayer}{edgelayer}
\draw (ru.center) to (1.center);
\end{pgfonlayer}
\end{tikzpicture}
\begin{tikzpicture}
\begin{pgfonlayer}{nodelayer}
\node [style=reddot] (rm) at (0, 0.5) {};
\node [style=none] (1) at (0, 0) {};
\node [style=none] (2) at (-0.5, 1) {};
\node [style=none] (3) at (0.5, 1) {};
\node [style=none] () at (1, 0.5) {,};
\node [style=none] () at (1.5, 0.5) {}; % spacing
\end{pgfonlayer}
\begin{pgfonlayer}{edgelayer}
\draw [bend left] (3.center) to (rm.center);
\draw [bend right] (2.center) to (rm.center);
\draw (rm.center) to (1.center);
\end{pgfonlayer}
\end{tikzpicture}
\begin{tikzpicture}
\begin{pgfonlayer}{nodelayer}
\node [style=bluedot] (bu) at (0, 0.5) {};
\node [style=none] (1) at (0, 0) {};
\node [style=none] () at (1, 0.5) {,};
\node [style=none] () at (1.5, 0.5) {}; % spacing
\end{pgfonlayer}
\begin{pgfonlayer}{edgelayer}
\draw (bu.center) to (1.center);
\end{pgfonlayer}
\end{tikzpicture}
\begin{tikzpicture}
\begin{pgfonlayer}{nodelayer}
\node [style=bluedot] (bm) at (0, 0.5) {};
\node [style=none] (1) at (0, 0) {};
\node [style=none] (2) at (-0.5, 1) {};
\node [style=none] (3) at (0.5, 1) {};
\end{pgfonlayer}
\begin{pgfonlayer}{edgelayer}
\draw [bend left] (3.center) to (bm.center);
\draw [bend right] (2.center) to (bm.center);
\draw (bm.center) to (1.center);
\end{pgfonlayer}
\end{tikzpicture}
\]

Then we can draw <ref> as follows.

\[
\begin{tikzpicture}
\begin{pgfonlayer}{nodelayer}
\node [style=none] (r1) at (-0.75, 1) {};
\node [style=none] (b1) at (-0.25, 1) {};
\node [style=none] (b2) at (0.25, 1) {};
\node [style=none] (r2) at (0.75, 1) {};
\node [style=bluedot] (b3) at (-0.5, 0.5) {};
\node [style=bluedot] (b4) at (0.5, 0.5) {};
\node [style=reddot] (r3) at (0, 0) {};
\node [style=none] (1) at (0, -0.5) {};
\node [style=none] () at (1.1, 0) {=};
\node [style=none] () at (1.5, 0) {}; % spacing
\end{pgfonlayer}
\begin{pgfonlayer}{edgelayer}
\draw [bend right] (r1.center) to (b3.center);
\draw [bend left] (b1.center) to (b3.center);
\draw [bend right] (b2.center) to (b4.center);
\draw [bend left] (r2.center) to (b4.center);
\draw [bend right] (b3.center) to (r3.center);
\draw [bend left] (b4.center) to (r3.center);
\draw (r3.center) to (1.center);
\end{pgfonlayer}
\end{tikzpicture}
\begin{tikzpicture}
\begin{pgfonlayer}{nodelayer}
\node [style=none] (r1) at (-0.75, 1) {};
\node [style=none] (b1) at (-0.25, 1) {};
\node [style=none] (b2) at (0.25, 1) {};
\node [style=none] (r2) at (0.75, 1) {};
\node [style=reddot] (r3) at (-0.5, 0.5) {};
\node [style=reddot] (r4) at (0.5, 0.5) {};
\node [style=bluedot] (b3) at (0, 0) {};
\node [style=none] (1) at (0, -0.5) {};
\end{pgfonlayer}
\begin{pgfonlayer}{edgelayer}
\draw [bend right] (r1.center) to (r3.center);
\draw [bend left] (b2.center) to (r3.center);
\draw [bend right, line width = 3, white] (b1.center) to (r4.center);
\draw [bend right] (b1.center) to (r4.center);
\draw [bend left] (r2.center) to (r4.center);
\draw [bend right] (r3.center) to (b3.center);
\draw [bend left] (r4.center) to (b3.center);
\draw (b3.center) to (1.center);
\end{pgfonlayer}
\end{tikzpicture}
\]

First, we show that the units coincide.

\[
\begin{tikzpicture}
\begin{pgfonlayer}{nodelayer}
\node [style=reddot] (ru) at (0, 0.5) {};
\node [style=none] (1) at (0, 0) {};
\node [style=none] () at (1, 0.5) {=};
\node [style=none] () at (1.5, 0.5) {}; % spacing
\end{pgfonlayer}
\begin{pgfonlayer}{edgelayer}
\draw (ru.center) to (1.center);
\end{pgfonlayer}
\end{tikzpicture}
\begin{tikzpicture}
\begin{pgfonlayer}{nodelayer}
\node [style=reddot] (r1) at (-0.5, 0.5) {};
\node [style=reddot] (r2) at (0.5, 0.5) {};
\node [style=reddot] (r3) at (0, 0) {};
\node [style=none] (1) at (0, -0.5) {};
\node [style=none] () at (1, 0) {=};
\node [style=none] () at (1.5, 0) {}; % spacing
\end{pgfonlayer}
\begin{pgfonlayer}{edgelayer}
\draw [bend right] (r1.center) to (r3.center);
\draw [bend left] (r2.center) to (r3.center);
\draw (r3.center) to (1.center);
\end{pgfonlayer}
\end{tikzpicture}
\begin{tikzpicture}
\begin{pgfonlayer}{nodelayer}
\node [style=reddot] (r1) at (-0.75, 1) {};
\node [style=bluedot] (b1) at (-0.25, 1) {};
\node [style=bluedot] (b2) at (0.25, 1) {};
\node [style=reddot] (r2) at (0.75, 1) {};
\node [style=bluedot] (b3) at (-0.5, 0.5) {};
\node [style=bluedot] (b4) at (0.5, 0.5) {};
\node [style=reddot] (r3) at (0, 0) {};
\node [style=none] (1) at (0, -0.5) {};
\node [style=none] () at (1, 0) {=};
\node [style=none] () at (1.5, 0) {}; % spacing
\end{pgfonlayer}
\begin{pgfonlayer}{edgelayer}
\draw [bend right] (r1.center) to (b3.center);
\draw [bend left] (b1.center) to (b3.center);
\draw [bend right] (b2.center) to (b4.center);
\draw [bend left] (r2.center) to (b4.center);
\draw [bend right] (b3.center) to (r3.center);
\draw [bend left] (b4.center) to (r3.center);
\draw (r3.center) to (1.center);
\end{pgfonlayer}
\end{tikzpicture}
\begin{tikzpicture}
\begin{pgfonlayer}{nodelayer}
\node [style=reddot] (r1) at (-0.75, 1) {};
\node [style=bluedot] (b1) at (-0.25, 1) {};
\node [style=bluedot] (b2) at (0.25, 1) {};
\node [style=reddot] (r2) at (0.75, 1) {};
\node [style=reddot] (r3) at (-0.5, 0.5) {};
\node [style=reddot] (r4) at (0.5, 0.5) {};
\node [style=bluedot] (b3) at (0, 0) {};
\node [style=none] (1) at (0, -0.5) {};
\node [style=none] () at (1, 0) {=};
\node [style=none] () at (1.5, 0) {}; % spacing
\end{pgfonlayer}
\begin{pgfonlayer}{edgelayer}
\draw [bend right] (r1.center) to (r3.center);
\draw [bend left] (b2.center) to (r3.center);
\draw [bend right, line width = 3, white] (b1.center) to (r4.center);
\draw [bend right] (b1.center) to (r4.center);
\draw [bend left] (r2.center) to (r4.center);
\draw [bend right] (r3.center) to (b3.center);
\draw [bend left] (r4.center) to (b3.center);
\draw (b3.center) to (1.center);
\end{pgfonlayer}
\end{tikzpicture}
\begin{tikzpicture}
\begin{pgfonlayer}{nodelayer}
\node [style=bluedot] (b1) at (-0.5, 0.5) {};
\node [style=bluedot] (b2) at (0.5, 0.5) {};
\node [style=bluedot] (b3) at (0, 0) {};
\node [style=none] (1) at (0, -0.5) {};
\node [style=none] () at (1, 0) {=};
\node [style=none] () at (1.5, 0) {}; % spacing
\end{pgfonlayer}
\begin{pgfonlayer}{edgelayer}
\draw [bend right] (b1.center) to (b3.center);
\draw [bend left] (b2.center) to (b3.center);
\draw (b3.center) to (1.center);
\end{pgfonlayer}
\end{tikzpicture}
\begin{tikzpicture}
\begin{pgfonlayer}{nodelayer}
\node [style=bluedot] (bu) at (0, 0.5) {};
\node [style=none] (1) at (0, 0) {};
\end{pgfonlayer}
\begin{pgfonlayer}{edgelayer}
\draw (bu.center) to (1.center);
\end{pgfonlayer}
\end{tikzpicture}
\]

Since they are equal, we denote the unit with a black circle in the remainder of the proof. Next, we show in one calculation that the two operations are equal and commutative.

\[
\begin{tikzpicture}
\begin{pgfonlayer}{nodelayer}
\node [style=reddot] (r) at (0, 0) {};
\node [style=none] (1) at (-0.5, 0.5) {};
\node [style=none] (2) at (0.5, 0.5) {};
\node [style=none] (3) at (0, -0.5) {};
\node [style=none] () at (1, 0) {=};
\node [style=none] () at (1.5, 0) {}; % spacing
\end{pgfonlayer}
\begin{pgfonlayer}{edgelayer}
\draw [bend right] (1.center) to (r.center);
\draw [bend left] (2.center) to (r.center);
\draw (r.center) to (3.center);
\end{pgfonlayer}
\end{tikzpicture}
\begin{tikzpicture}
\begin{pgfonlayer}{nodelayer}
\node [style=blackdot] (b1) at (-0.25, 1) {};
\node [style=blackdot] (b2) at (0.25, 1) {};
\node [style=bluedot] (bl1) at (-0.5, 0.5) {};
\node [style=bluedot] (bl2) at (0.5, 0.5) {};
\node [style=reddot] (r) at (0, 0) {};
\node [style=none] (1) at (-0.75, 1) {};
\node [style=none] (2) at (0.75, 1) {};
\node [style=none] (3) at (0, -0.5) {};
\node [style=none] () at (1.15, 0) {=};
\node [style=none] () at (1.5, 0) {}; % spacing
\end{pgfonlayer}
\begin{pgfonlayer}{edgelayer}
\draw [bend right] (1.center) to (bl1.center);
\draw [bend left] (b1.center) to (bl1.center);
\draw [bend right] (b2.center) to (bl2.center);
\draw [bend left] (2.center) to (bl2.center);
\draw [bend right] (bl1.center) to (r.center);
\draw [bend left] (bl2.center) to (r.center);
\draw (r.center) to (3.center);
\end{pgfonlayer}
\end{tikzpicture}
\begin{tikzpicture}
\begin{pgfonlayer}{nodelayer}
\node [style=blackdot] (b1) at (-0.25, 1) {};
\node [style=blackdot] (b2) at (0.25, 1) {};
\node [style=reddot] (r1) at (-0.5, 0.5) {};
\node [style=reddot] (r2) at (0.5, 0.5) {};
\node [style=bluedot] (b) at (0, 0) {};
\node [style=none] (1) at (-0.75, 1) {};
\node [style=none] (2) at (0.75, 1) {};
\node [style=none] (3) at (0, -0.5) {};
\node [style=none] () at (1.15, 0) {=};
\node [style=none] () at (1.5, 0) {}; % spacing
\end{pgfonlayer}
\begin{pgfonlayer}{edgelayer}
\draw [bend right] (1.center) to (r1.center);
\draw [bend left] (b2.center) to (r1.center);
\draw [bend right, white, line width = 3] (b1.center) to (r2.center);
\draw [bend right] (b1.center) to (r2.center);
\draw [bend left] (2.center) to (r2.center);
\draw [bend right] (r1.center) to (b.center);
\draw [bend left] (r2.center) to (b.center);
\draw (b.center) to (3.center);
\end{pgfonlayer}
\end{tikzpicture}
\begin{tikzpicture}
\begin{pgfonlayer}{nodelayer}
\node [style=bluedot] (b) at (0, 0) {};
\node [style=none] (1) at (-0.5, 0.5) {};
\node [style=none] (2) at (0.5, 0.5) {};
\node [style=none] (3) at (0, -0.5) {};
\node [style=none] () at (1, 0) {=};
\node [style=none] () at (1.5, 0) {}; % spacing
\end{pgfonlayer}
\begin{pgfonlayer}{edgelayer}
\draw [bend right] (1.center) to (b.center);
\draw [bend left] (2.center) to (b.center);
\draw (b.center) to (3.center);
\end{pgfonlayer}
\end{tikzpicture}
\begin{tikzpicture}
\begin{pgfonlayer}{nodelayer}
\node [style=blackdot] (b1) at (-0.75, 1) {};
\node [style=blackdot] (b2) at (0.75, 1) {};
\node [style=reddot] (r1) at (-0.5, 0.5) {};
\node [style=reddot] (r2) at (0.5, 0.5) {};
\node [style=bluedot] (b) at (0, 0) {};
\node [style=none] (1) at (-0.25, 1) {};
\node [style=none] (2) at (0.25, 1) {};
\node [style=none] (3) at (0, -0.5) {};
\node [style=none] () at (1.15, 0) {=};
\node [style=none] () at (1.5, 0) {}; % spacing
\end{pgfonlayer}
\begin{pgfonlayer}{edgelayer}
\draw [bend right] (b1.center) to (bl1.center);
\draw [bend left] (1.center) to (bl1.center);
\draw [bend right] (2.center) to (bl2.center);
\draw [bend left] (b2.center) to (bl2.center);
\draw [bend right] (bl1.center) to (r.center);
\draw [bend left] (bl2.center) to (r.center);
\draw (r.center) to (3.center);
\end{pgfonlayer}
\end{tikzpicture}
\begin{tikzpicture}
\begin{pgfonlayer}{nodelayer}
\node [style=none] (b1) at (-0.25, 1) {};
\node [style=none] (b2) at (0.25, 1) {};
\node [style=blackdot] (1) at (-0.75, 1) {};
\node [style=blackdot] (2) at (0.75, 1) {};
\node [style=bluedot] (bl1) at (-0.5, 0.5) {};
\node [style=bluedot] (bl2) at (0.5, 0.5) {};
\node [style=reddot] (r) at (0, 0) {};
\node [style=none] (3) at (0, -0.5) {};
\node [style=none] () at (1.15, 0) {=};
\node [style=none] () at (1.5, 0) {}; % spacing
\end{pgfonlayer}
\begin{pgfonlayer}{edgelayer}
\draw [bend right] (1.center) to (bl1.center);
\draw [bend left] (b2.center) to (bl1.center);
\draw [bend right, white, line width = 3] (b1.center) to (bl2.center);
\draw [bend right] (b1.center) to (bl2.center);
\draw [bend left] (2.center) to (bl2.center);
\draw [bend right] (bl1.center) to (r.center);
\draw [bend left] (bl2.center) to (r.center);
\draw (r.center) to (3.center);
\end{pgfonlayer}
\end{tikzpicture}
\begin{tikzpicture}
\begin{pgfonlayer}{nodelayer}
\node [style=none] (1) at (0, -0.5) {};
\node [style=reddot] (m) at (0, 0) {};
\node [style=none] (2) at (0, 0.55) {};
\node [style=none] (3) at (-0.25, 1) {};
\node [style=none] (4) at (0.25, 1) {};
\end{pgfonlayer}
\begin{pgfonlayer}{edgelayer}
\draw (1.center) to (m.center);
\draw [bend right = 90, looseness = 1.5] (m.center) to (2.center);
\draw [bend left = 45] (2.center) to (3.center);
\draw [bend left = 90, white, line width = 3, looseness = 1.5] (m.center) to (2.center);
\draw [bend right = 45, white, line width = 3] (2.center) to (4.center);
\draw [bend left = 90, looseness = 1.5] (m.center) to (2.center);
\draw [bend right = 45] (2.center) to (4.center);
\end{pgfonlayer}
\end{tikzpicture}
\qedhere
\]

We have the following equivalences of categories.

\[\Mon(\Mon, \times) \cong \Mon(\CMon, \times) \cong \CMon(\Mon, \times) \cong \CMon(\CMon, \times) \cong \CMon\]

§ CHARACTERIZING (CO)CARTESIAN MONOIDAL CATEGORIES

In the previous section, we saw that a category with finite products can be equipped with a canonical symmetric monoidal structure, and dually so can a category with finite coproducts. In this section, we give conditions under which a symmetric monoidal category is monoidally equivalent to one given by a (co)cartesian structure <cit.>.

Let $\C$ be a category with finite coproducts. By <ref>, $\C$ can be equipped with a cocartesian monoidal structure, with tensor denoted by $+$, and the unit (which is an initial object) denoted by $0$. Let $x$ be any object in $\C$. Universal property of coproducts gives a map $\nabla \maps x+x \to x$

\[
\begin{tikzcd}
\arrow[dr, "i_1"]
\arrow[ddr, swap, bend right, "1_x"]
\arrow[dl, swap, "i_2"]
\arrow[ddl, bend left, "1_x"]
\\&
\arrow[d, dashed, "\nabla_x"]
\\&
\end{tikzcd}\]

We draw string diagrams with respect to the cocartesian monoidal structure on $\C$. Then the map $\nabla_x$ is depicted as follows.

\[
\begin{tikzpicture}
\begin{pgfonlayer}{nodelayer}
\node [style=blackdot] (r) at (0, 0) {};
\node [style=none] (1) at (-0.5, 0.5) {};
\node [style=none] (2) at (0.5, 0.5) {};
\node [style=none] (3) at (0, -0.5) {};
\end{pgfonlayer}
\begin{pgfonlayer}{edgelayer}
\draw [bend right] (1.center) to (r.center);
\draw [bend left] (2.center) to (r.center);
\draw (r.center) to (3.center);
\end{pgfonlayer}
\end{tikzpicture}
\]

Also, the universal property of an initial object gives a map $!_x \maps 0 \to x$, depicted as follows.

\[
\begin{tikzpicture}
\begin{pgfonlayer}{nodelayer}
\node [style=blackdot] (bu) at (0, 0.5) {};
\node [style=none] (1) at (0, 0) {};
\end{pgfonlayer}
\begin{pgfonlayer}{edgelayer}
\draw (bu.center) to (1.center);
\end{pgfonlayer}
\end{tikzpicture}
\]

We show that this gives $x$ the structure of a commutative monoid. We begin by finding a formula for the left unitor of the cocartesian monoidal structure on $\C$. Notice that the left unitor makes the following diagram commute (by definition)

\[
\begin{tikzcd}
\arrow[dr, "i_x"]
\arrow[ddr, swap, "1", bend right]
\arrow[dl, swap, "!"]
\arrow[ddl, "!", bend left]
\\&
\arrow[d, dashed, "\exists !"]
\\&
\end{tikzcd}
\]

and thus does so uniquely. Compare this to the diagram

\[
\begin{tikzcd}
\arrow[dr, "i_x"]
\arrow[d, swap, "1"]
\arrow[dl, swap, "!"]
\arrow[d, "!"]
\\
\arrow[dr]
\arrow[ddr, bend right, swap, "1"]
\arrow[d, "1+!"]
\arrow[dl]
\arrow[ddl, bend left, "1"]
\\&
\arrow[d, "\nabla_x"]
\\&
\end{tikzcd}
\]

whose frame is equal to that of the previous. Thus we get $\nabla_x \circ (1_x + !_x) \circ i_x= 1_x$ and similarly $\nabla_x \circ (!_x + 1_x) \circ i'_x= 1_x$, which we draw as follows.

\[
\begin{tikzpicture}
\begin{pgfonlayer}{nodelayer}
\node [style=none] (1) at (0.25, 0.75) {};
\node [style=blackdot] (2) at (1, 0.5) {};
\node [style=blackdot] (3) at (0.625, 0) {};
\node [style=none] (4) at (0.625, -0.5) {};
\node [style=none] () at (1.5, 0) {=};
\node [style=none] () at (2, 0.5) {}; % spacing
\end{pgfonlayer}
\begin{pgfonlayer}{edgelayer}
\draw [bend left] (2.center) to (3.center);
\draw [bend right] (1.center) to (3.center);
\draw (3.center) to (4.center);
\end{pgfonlayer}
\end{tikzpicture}
\begin{tikzpicture}
\begin{pgfonlayer}{nodelayer}
\node [style=none] (1) at (0, 1) {};
\node [style=none] (2) at (0, 0) {};
\node [style=none] () at (4, 0) {};
\end{pgfonlayer}
\begin{pgfonlayer}{edgelayer}
\draw (1.center) to (2.center);
\end{pgfonlayer}
\end{tikzpicture}
\begin{tikzpicture}
\begin{pgfonlayer}{nodelayer}
\node [style=blackdot] (1) at (0.25, 0.5) {};
\node [style=none] (2) at (1, 0.75) {};
\node [style=blackdot] (3) at (0.625, 0) {};
\node [style=none] (4) at (0.625, -0.5) {};
\node [style=none] () at (1.5, 0) {=};
\node [style=none] () at (2, 0.5) {}; % spacing
\end{pgfonlayer}
\begin{pgfonlayer}{edgelayer}
\draw [bend left] (2.center) to (3.center);
\draw [bend right] (1.center) to (3.center);
\draw (3.center) to (4.center);
\end{pgfonlayer}
\end{tikzpicture}
\begin{tikzpicture}
\begin{pgfonlayer}{nodelayer}
\node [style=none] (1) at (0, 1) {};
\node [style=none] (2) at (0, 0) {};
\end{pgfonlayer}
\begin{pgfonlayer}{edgelayer}
\draw (1.center) to (2.center);
\end{pgfonlayer}
\end{tikzpicture}\]

To show $\nabla_x$ is associative, we want to show that the following equation holds.

\[
\begin{tikzpicture}
\begin{pgfonlayer}{nodelayer}
\node [style=none] (1) at (0, 1) {};
\node [style=none] (2) at (0.5, 1) {};
\node [style=none] (3) at (1, 1) {};
\node [style=none] (4) at (1, 0.5) {};
\node [style=none] (5) at (0.625, -0.5) {};
\node [style=blackdot] (b1) at (0.25, 0.5) {};
\node [style=blackdot] (b2) at (0.625, 0) {};
\node [style=none] () at (1.5, 0.25) {=};
\node [style=none] () at (2, 0.5) {}; % spacing
\end{pgfonlayer}
\begin{pgfonlayer}{edgelayer}
\draw [bend right] (1.center) to (b1.center);
\draw [bend left] (2.center) to (b1.center);
\draw (3.center) to (4.center);
\draw [bend left] (4.center) to (b2.center);
\draw [bend right] (b1.center) to (b2.center);
\draw (b2.center) to (5.center);
\end{pgfonlayer}
\end{tikzpicture}
\begin{tikzpicture}
\begin{pgfonlayer}{nodelayer}
\node [style=none] (1) at (0, 1) {};
\node [style=none] (2) at (0.5, 1) {};
\node [style=none] (3) at (1, 1) {};
\node [style=none] (4) at (0, 0.5) {};
\node [style=none] (5) at (0.375, -0.5) {};
\node [style=blackdot] (b1) at (0.75, 0.5) {};
\node [style=blackdot] (b2) at (0.375, 0) {};
\end{pgfonlayer}
\begin{pgfonlayer}{edgelayer}
\draw (1.center) to (4.center);
\draw [bend right] (2.center) to (b1.center);
\draw [bend left] (3.center) to (b1.center);
\draw [bend right] (4.center) to (b2.center);
\draw [bend left] (b1.center) to (b2.center);
\draw (b2.center) to (5.center);
\end{pgfonlayer}
\end{tikzpicture}
\]

We have three inclusion maps $i_0, i_1, i_2 \maps x \to x+x+x$, which are given in strings below.

\[
\begin{tikzpicture}
\begin{pgfonlayer}{nodelayer}
\node [style=none] (bu) at (0, 1) {};
\node [style=none] (1) at (0, 0) {};
\node [style=blackdot] (2) at (0.5, 0.5) {};
\node [style=none] (3) at (0.5, 0) {};
\node [style=blackdot] (4) at (1, 0.5) {};
\node [style=none] (5) at (1, 0) {};
\node [style=none] () at (1.5, 0.5) {,};
\node [style=none] () at (2, 0.5) {}; % spacing
\end{pgfonlayer}
\begin{pgfonlayer}{edgelayer}
\draw (bu.center) to (1.center);
\draw (2.center) to (3.center);
\draw (4.center) to (5.center);
\end{pgfonlayer}
\end{tikzpicture}
\begin{tikzpicture}
\begin{pgfonlayer}{nodelayer}
\node [style=blackdot] (bu) at (0, 0.5) {};
\node [style=none] (1) at (0, 0) {};
\node [style=none] (2) at (0.5, 1) {};
\node [style=none] (3) at (0.5, 0) {};
\node [style=blackdot] (4) at (1, 0.5) {};
\node [style=none] (5) at (1, 0) {};
\node [style=none] () at (1.5, 0.5) {,};
\node [style=none] () at (2, 0.5) {}; % spacing
\end{pgfonlayer}
\begin{pgfonlayer}{edgelayer}
\draw (bu.center) to (1.center);
\draw (2.center) to (3.center);
\draw (4.center) to (5.center);
\end{pgfonlayer}
\end{tikzpicture}
\begin{tikzpicture}
\begin{pgfonlayer}{nodelayer}
\node [style=blackdot] (bu) at (0, 0.5) {};
\node [style=none] (1) at (0, 0) {};
\node [style=blackdot] (2) at (0.5, 0.5) {};
\node [style=none] (3) at (0.5, 0) {};
\node [style=none] (4) at (1, 1) {};
\node [style=none] (5) at (1, 0) {};
\end{pgfonlayer}
\begin{pgfonlayer}{edgelayer}
\draw (bu.center) to (1.center);
\draw (2.center) to (3.center);
\draw (4.center) to (5.center);
\end{pgfonlayer}
\end{tikzpicture}
\]

The universal property of coproducts says that if the composites of the morphisms on the left and right side of the associativity equation above with any of the three inclusions is always the identity morphism on $x$, then those two morphisms must be equal. So we compute:

\[
\begin{tikzpicture}
\begin{pgfonlayer}{nodelayer}
\node [style=none] (1) at (0, 1.25) {};
\node [style=blackdot] (2) at (0.5, 1) {};
\node [style=blackdot] (3) at (1, 1) {};
\node [style=none] (4) at (1, 0.5) {};
\node [style=none] (5) at (0.625, -0.5) {};
\node [style=blackdot] (b1) at (0.25, 0.5) {};
\node [style=blackdot] (b2) at (0.625, 0) {};
\node [style=none] () at (1.5, 0) {=};
\node [style=none] () at (2, 0.5) {}; % spacing
\end{pgfonlayer}
\begin{pgfonlayer}{edgelayer}
\draw [bend right] (1.center) to (b1.center);
\draw [bend left] (2.center) to (b1.center);
\draw (3.center) to (4.center);
\draw [bend left] (4.center) to (b2.center);
\draw [bend right] (b1.center) to (b2.center);
\draw (b2.center) to (5.center);
\end{pgfonlayer}
\end{tikzpicture}
\begin{tikzpicture}
\begin{pgfonlayer}{nodelayer}
\node [style=none] (1) at (0.25, 0.75) {};
\node [style=blackdot] (2) at (1, 0.5) {};
\node [style=blackdot] (3) at (0.625, 0) {};
\node [style=none] (4) at (0.625, -0.5) {};
\node [style=none] () at (1.5, 0) {=};
\node [style=none] () at (2, 0.5) {}; % spacing
\end{pgfonlayer}
\begin{pgfonlayer}{edgelayer}
\draw [bend left] (2.center) to (3.center);
\draw [bend right] (1.center) to (3.center);
\draw (3.center) to (4.center);
\end{pgfonlayer}
\end{tikzpicture}
\begin{tikzpicture}
\begin{pgfonlayer}{nodelayer}
\node [style=none] (1) at (0, 1) {};
\node [style=none] (2) at (0, 0) {};
\node [style=none] () at (4, 0) {};
\end{pgfonlayer}
\begin{pgfonlayer}{edgelayer}
\draw (1.center) to (2.center);
\end{pgfonlayer}
\end{tikzpicture}
\begin{tikzpicture}
\begin{pgfonlayer}{nodelayer}
\node [style=blackdot] (1) at (0, 1) {};
\node [style=none] (2) at (0.5, 1.25) {};
\node [style=blackdot] (3) at (1, 1) {};
\node [style=none] (4) at (1, 0.5) {};
\node [style=none] (5) at (0.625, -0.5) {};
\node [style=blackdot] (b1) at (0.25, 0.5) {};
\node [style=blackdot] (b2) at (0.625, 0) {};
\node [style=none] () at (1.5, 0) {=};
\node [style=none] () at (2, 0.5) {}; % spacing
\end{pgfonlayer}
\begin{pgfonlayer}{edgelayer}
\draw [bend right] (1.center) to (b1.center);
\draw [bend left] (2.center) to (b1.center);
\draw (3.center) to (4.center);
\draw [bend left] (4.center) to (b2.center);
\draw [bend right] (b1.center) to (b2.center);
\draw (b2.center) to (5.center);
\end{pgfonlayer}
\end{tikzpicture}
\begin{tikzpicture}
\begin{pgfonlayer}{nodelayer}
\node [style=none] (1) at (0.25, 0.75) {};
\node [style=blackdot] (2) at (1, 0.5) {};
\node [style=blackdot] (3) at (0.625, 0) {};
\node [style=none] (4) at (0.625, -0.5) {};
\node [style=none] () at (1.5, 0) {=};
\node [style=none] () at (2, 0.5) {}; % spacing
\end{pgfonlayer}
\begin{pgfonlayer}{edgelayer}
\draw [bend left] (2.center) to (3.center);
\draw [bend right] (1.center) to (3.center);
\draw (3.center) to (4.center);
\end{pgfonlayer}
\end{tikzpicture}
\begin{tikzpicture}
\begin{pgfonlayer}{nodelayer}
\node [style=none] (1) at (0, 1) {};
\node [style=none] (2) at (0, 0) {};
\end{pgfonlayer}
\begin{pgfonlayer}{edgelayer}
\draw (1.center) to (2.center);
\end{pgfonlayer}
\end{tikzpicture}
\]

\[
\begin{tikzpicture}
\begin{pgfonlayer}{nodelayer}
\node [style=blackdot] (1) at (0, 1) {};
\node [style=blackdot] (2) at (0.5, 1) {};
\node [style=none] (3) at (1, 1.25) {};
\node [style=none] (4) at (1, 0.5) {};
\node [style=none] (5) at (0.625, -0.5) {};
\node [style=blackdot] (b1) at (0.25, 0.5) {};
\node [style=blackdot] (b2) at (0.625, 0) {};
\node [style=none] () at (1.5, 0) {=};
\node [style=none] () at (2, 0.5) {}; % spacing
\end{pgfonlayer}
\begin{pgfonlayer}{edgelayer}
\draw [bend right] (1.center) to (b1.center);
\draw [bend left] (2.center) to (b1.center);
\draw (3.center) to (4.center);
\draw [bend left] (4.center) to (b2.center);
\draw [bend right] (b1.center) to (b2.center);
\draw (b2.center) to (5.center);
\end{pgfonlayer}
\end{tikzpicture}
\begin{tikzpicture}
\begin{pgfonlayer}{nodelayer}
\node [style=blackdot] (1) at (0.25, 0.5) {};
\node [style=none] (2) at (1, 0.75) {};
\node [style=blackdot] (3) at (0.625, 0) {};
\node [style=none] (4) at (0.625, -0.5) {};
\node [style=none] () at (1.5, 0) {=};
\node [style=none] () at (2, 0.5) {}; % spacing
\end{pgfonlayer}
\begin{pgfonlayer}{edgelayer}
\draw [bend left] (2.center) to (3.center);
\draw [bend right] (1.center) to (3.center);
\draw (3.center) to (4.center);
\end{pgfonlayer}
\end{tikzpicture}
\begin{tikzpicture}
\begin{pgfonlayer}{nodelayer}
\node [style=none] (1) at (0, 1) {};
\node [style=none] (2) at (0, 0) {};
\end{pgfonlayer}
\begin{pgfonlayer}{edgelayer}
\draw (1.center) to (2.center);
\end{pgfonlayer}
\end{tikzpicture}
\]

\[
\begin{tikzpicture}
\begin{pgfonlayer}{nodelayer}
\node [style=none] (1) at (0, 1.25) {};
\node [style=blackdot] (2) at (0.5, 1) {};
\node [style=blackdot] (3) at (1, 1) {};
\node [style=none] (4) at (0, 0.5) {};
\node [style=none] (5) at (0.375, -0.5) {};
\node [style=blackdot] (b1) at (0.75, 0.5) {};
\node [style=blackdot] (b2) at (0.375, 0) {};
\node [style=none] () at (1.5, 0) {=};
\node [style=none] () at (2, 0.5) {}; % spacing
\end{pgfonlayer}
\begin{pgfonlayer}{edgelayer}
\draw (1.center) to (4.center);
\draw [bend right] (2.center) to (b1.center);
\draw [bend left] (3.center) to (b1.center);
\draw [bend right] (4.center) to (b2.center);
\draw [bend left] (b1.center) to (b2.center);
\draw (b2.center) to (5.center);
\end{pgfonlayer}
\end{tikzpicture}
\begin{tikzpicture}
\begin{pgfonlayer}{nodelayer}
\node [style=none] (1) at (0.25, 0.75) {};
\node [style=blackdot] (2) at (1, 0.5) {};
\node [style=blackdot] (3) at (0.625, 0) {};
\node [style=none] (4) at (0.625, -0.5) {};
\node [style=none] () at (1.5, 0) {=};
\node [style=none] () at (2, 0.5) {}; % spacing
\end{pgfonlayer}
\begin{pgfonlayer}{edgelayer}
\draw [bend left] (2.center) to (3.center);
\draw [bend right] (1.center) to (3.center);
\draw (3.center) to (4.center);
\end{pgfonlayer}
\end{tikzpicture}
\begin{tikzpicture}
\begin{pgfonlayer}{nodelayer}
\node [style=none] (1) at (0, 1) {};
\node [style=none] (2) at (0, 0) {};
\node [style=none] () at (4, 0) {};
\end{pgfonlayer}
\begin{pgfonlayer}{edgelayer}
\draw (1.center) to (2.center);
\end{pgfonlayer}
\end{tikzpicture}
\begin{tikzpicture}
\begin{pgfonlayer}{nodelayer}
\node [style=blackdot] (1) at (0, 1) {};
\node [style=none] (2) at (0.5, 1.25) {};
\node [style=blackdot] (3) at (1, 1) {};
\node [style=none] (4) at (0, 0.5) {};
\node [style=none] (5) at (0.375, -0.5) {};
\node [style=blackdot] (b1) at (0.75, 0.5) {};
\node [style=blackdot] (b2) at (0.375, 0) {};
\node [style=none] () at (1.5, 0) {=};
\node [style=none] () at (2, 0.5) {}; % spacing
\end{pgfonlayer}
\begin{pgfonlayer}{edgelayer}
\draw (1.center) to (4.center);
\draw [bend right] (2.center) to (b1.center);
\draw [bend left] (3.center) to (b1.center);
\draw [bend right] (4.center) to (b2.center);
\draw [bend left] (b1.center) to (b2.center);
\draw (b2.center) to (5.center);
\end{pgfonlayer}
\end{tikzpicture}
\begin{tikzpicture}
\begin{pgfonlayer}{nodelayer}
\node [style=blackdot] (1) at (0.25, 0.5) {};
\node [style=none] (2) at (1, 0.75) {};
\node [style=blackdot] (3) at (0.625, 0) {};
\node [style=none] (4) at (0.625, -0.5) {};
\node [style=none] () at (1.5, 0) {=};
\node [style=none] () at (2, 0.5) {}; % spacing
\end{pgfonlayer}
\begin{pgfonlayer}{edgelayer}
\draw [bend left] (2.center) to (3.center);
\draw [bend right] (1.center) to (3.center);
\draw (3.center) to (4.center);
\end{pgfonlayer}
\end{tikzpicture}
\begin{tikzpicture}
\begin{pgfonlayer}{nodelayer}
\node [style=none] (1) at (0, 1) {};
\node [style=none] (2) at (0, 0) {};
\end{pgfonlayer}
\begin{pgfonlayer}{edgelayer}
\draw (1.center) to (2.center);
\end{pgfonlayer}
\end{tikzpicture}
\]

\[
\begin{tikzpicture}
\begin{pgfonlayer}{nodelayer}
\node [style=blackdot] (1) at (0, 1) {};
\node [style=blackdot] (2) at (0.5, 1) {};
\node [style=none] (3) at (1, 1.25) {};
\node [style=none] (4) at (0, 0.5) {};
\node [style=none] (5) at (0.375, -0.5) {};
\node [style=blackdot] (b1) at (0.75, 0.5) {};
\node [style=blackdot] (b2) at (0.375, 0) {};
\node [style=none] () at (1.5, 0) {=};
\node [style=none] () at (2, 0.5) {}; % spacing
\end{pgfonlayer}
\begin{pgfonlayer}{edgelayer}
\draw (1.center) to (4.center);
\draw [bend right] (2.center) to (b1.center);
\draw [bend left] (3.center) to (b1.center);
\draw [bend right] (4.center) to (b2.center);
\draw [bend left] (b1.center) to (b2.center);
\draw (b2.center) to (5.center);
\end{pgfonlayer}
\end{tikzpicture}
\begin{tikzpicture}
\begin{pgfonlayer}{nodelayer}
\node [style=blackdot] (1) at (0.25, 0.5) {};
\node [style=none] (2) at (1, 0.75) {};
\node [style=blackdot] (3) at (0.625, 0) {};
\node [style=none] (4) at (0.625, -0.5) {};
\node [style=none] () at (1.5, 0) {=};
\node [style=none] () at (2, 0.5) {}; % spacing
\end{pgfonlayer}
\begin{pgfonlayer}{edgelayer}
\draw [bend left] (2.center) to (3.center);
\draw [bend right] (1.center) to (3.center);
\draw (3.center) to (4.center);
\end{pgfonlayer}
\end{tikzpicture}
\begin{tikzpicture}
\begin{pgfonlayer}{nodelayer}
\node [style=none] (1) at (0, 1) {};
\node [style=none] (2) at (0, 0) {};
\end{pgfonlayer}
\begin{pgfonlayer}{edgelayer}
\draw (1.center) to (2.center);
\end{pgfonlayer}
\end{tikzpicture}
\]

Thus we have that $\nabla_x$ is associative.

Recall that the braiding in $\C$ is derived from the universal property in the following way.

\[
\begin{tikzcd}
\arrow[dr, "i_1"]
\arrow[ddr, swap, "i_2", bend right]
\arrow[dl, swap, "i_2"]
\arrow[ddl, "i_1", bend left]
\\&
\arrow[d, dashed, "\sigma"]
\\&
\end{tikzcd}\]

Then the commutative diagram

\[
\begin{tikzcd}
\arrow[dr, "i_1"]
\arrow[d, swap, "1"]
\arrow[dl, swap, "i_2"]
\arrow[d, "1"]
\\
\arrow[dr, swap, "i_1"]
\arrow[ddr, bend right, swap, "1"]
\arrow[d, "\sigma"]
\arrow[dl, "i_1"]
\arrow[ddl, bend left, "1"]
\\&
\arrow[d, "\nabla"]
\\&
\end{tikzcd}
\]

has precisely the frame for the universal construction of $\nabla_x$. Thus $\nabla_x \circ \sigma = \nabla_x$, displayed as follows.

\[
\begin{tikzpicture}
\begin{pgfonlayer}{nodelayer}
\node [style=none] (3) at (0, -0.5) {};
\node [style=blackdot] (r) at (0, 0) {};
\node [style=none] (1) at (-0.25, 0.5) {};
\node [style=none] (2) at (0.25, 0.5) {};
\node [style=none] () at (1, 0) {=};
\node [style=none] () at (1.5, 0) {}; % spacing
\end{pgfonlayer}
\begin{pgfonlayer}{edgelayer}
\draw [bend right] (1.center) to (r.center);
\draw [bend left] (2.center) to (r.center);
\draw (r.center) to (3.center);
\end{pgfonlayer}
\end{tikzpicture}
\begin{tikzpicture}
\begin{pgfonlayer}{nodelayer}
\node [style=none] (1) at (0, -0.5) {};
\node [style=blackdot] (m) at (0, 0) {};
\node [style=none] (2) at (0, 0.55) {};
\node [style=none] (3) at (-0.25, 1) {};
\node [style=none] (4) at (0.25, 1) {};
\end{pgfonlayer}
\begin{pgfonlayer}{edgelayer}
\draw (1.center) to (m.center);
\draw [bend right = 90, looseness = 1.5] (m.center) to (2.center);
\draw [bend left = 45] (2.center) to (3.center);
\draw [bend left = 90, white, line width = 3, looseness = 1.5] (m.center) to (2.center);
\draw [bend right = 45, white, line width = 3] (2.center) to (4.center);
\draw [bend left = 90, looseness = 1.5] (m.center) to (2.center);
\draw [bend right = 45] (2.center) to (4.center);
\end{pgfonlayer}
\end{tikzpicture}
\]

A symmetric monoidal category is cocartesian if and only if each object has a natural commutative monoid structure.

Given an object $x$ in a cocartesian monoidal category $\C$, we constructed a commutative monoid structure on $x$ in <ref>.

We have to show that the multiplication maps

\[\nabla_x \maps x+x \to x \]

form the components of a natural transformation

\[\nabla \maps + \circ \Delta \To 1_\C.\]

For a given morphism $f \maps x \to y$, the naturality square is

\[
\begin{tikzcd}
x + x
\arrow[r, "f+f"]
\arrow[d, swap, "\nabla_x"]
y + y
\arrow[d, "\nabla_y"]
\\
\arrow[r, swap, "f"]
\end{tikzcd}
\]

Recall that the map $f+f$ is derived from the universal property of coproducts by the following diagram.

\[
\begin{tikzcd}
\arrow[d, swap, "f"]
\arrow[dr, "i_1"]
\arrow[dl, swap, "i_2"]
\arrow[d, "f"]
\\
\arrow[dr, swap, "i_1'"]
\arrow[d, dashed, "f+f"]&
\arrow[dl, "i_2'"]
\\&
y + y
\end{tikzcd}
\]

We want to show that $\nabla_y \circ (f+f) = f \circ \nabla_x$.

\[
\begin{tikzcd}
\arrow[d, swap, "f"]
\arrow[dr, "i_1"]
\arrow[dl, swap, "i_2"]
\arrow[d, "f"]
\\
\arrow[dr, swap, "i_1'"]
\arrow[ddr, swap, "1_y", bend right]
\arrow[d, "f+f"]&
\arrow[dl, "i_2'"]
\arrow[ddl, "1_y'", bend left]
\\&
y + y
\arrow[d, "\nabla_y"]
\\&y
\end{tikzcd}
\qquad\qquad
\begin{tikzcd}
\arrow[d, swap, "1_x"]
\arrow[dr, "i_1"]
\arrow[dl, swap, "i_2"]
\arrow[d, "1_x"]
\\
\arrow[dr, swap, "1_x"]
\arrow[ddr, swap, "f", bend right]
x + x
\arrow[d, "\nabla_x"]&
\arrow[dl, "1_x"]
\arrow[ddl, "f", bend left]
\\&
\arrow[d, "f"]
\\&y
\end{tikzcd}
\]

The frames of the above diagrams are identical, and they are equal to the frame which produces $\langle f , f \rangle$, the copairing of $f$ with itself. So by universal property, they are equal.

The naturality square of the units collapses into the triangle below.

\[
\begin{tikzcd}
\arrow[dl, swap, "!_x"]
\arrow[dr, "!_y"]
\\
\arrow[rr, swap, "f"]
\end{tikzcd}
\]

which commutes by initiality of $0$.

We have shown one direction: that if $\C$ is cocartesian monoidal, then each object has a natural commutative monoid structure. Now we must show the converse. Assume that $(\C, \otimes, I)$ is a symmetric monoidal category such that each object has a natural commutative monoid structure $m \maps \otimes \circ \Delta \To 1_\C$ and $\varepsilon \maps \Delta I \To 1_\C$. We represent the components of these structures with string diagrams as follows.

\[
\begin{tikzpicture}
\begin{pgfonlayer}{nodelayer}
\node [style=blackdot] (r) at (0, 0) {};
\node [style=none] (1) at (-0.5, 0.5) {};
\node [style=none] (2) at (0.5, 0.5) {};
\node [style=none] (3) at (0, -0.5) {};
\node [style=none] () at (0.9, 0) {,};
\node [style=none] () at (1.5, 0) {};
\end{pgfonlayer}
\begin{pgfonlayer}{edgelayer}
\draw [bend right] (1.center) to (r.center);
\draw [bend left] (2.center) to (r.center);
\draw (r.center) to (3.center);
\end{pgfonlayer}
\end{tikzpicture}
\begin{tikzpicture}
\begin{pgfonlayer}{nodelayer}
\node [style=blackdot] (bu) at (0, 0.5) {};
\node [style=none] (1) at (0, 0) {};
\end{pgfonlayer}
\begin{pgfonlayer}{edgelayer}
\draw (bu.center) to (1.center);
\end{pgfonlayer}
\end{tikzpicture}
\]

The unit object is initial by naturality of $\varepsilon$.

\[
\begin{tikzcd}
\arrow[d, swap, "\varepsilon_x"]
\arrow[r, "1_I"]
\arrow[d, "\varepsilon_y"]
\\
\arrow[r, swap, "f"]
\end{tikzcd}
\]

Now we must show that the monoidal structure on $\C$ is cocartesian, i.e. that the unit object is initial and tensor is coproduct. To show that $x \otimes y$ is actually the coproduct of $x$ and $y$, we first must provide inclusions, and then show that this cone satisfies the appropriate universal property. We propose that the inclusion maps $i_x \maps x \to x\otimes y$ and $i_y \maps y \to x \otimes y$ are given in string diagrams as follows.

\[
\begin{tikzpicture}
\begin{pgfonlayer}{nodelayer}
\node [style=none] (bu) at (0, 1) {};
\node [style=none] (1) at (0, 0) {};
\node [style=blackdot] (2) at (0.5, 0.5) {};
\node [style=none] (3) at (0.5, 0) {};
\node [style=none] () at (1, 0.5) {,};
\node [style=none] () at (1.5, 0.5) {}; % spacing
\end{pgfonlayer}
\begin{pgfonlayer}{edgelayer}
\draw (bu.center) to (1.center);
\draw (2.center) to (3.center);
\end{pgfonlayer}
\end{tikzpicture}
\begin{tikzpicture}
\begin{pgfonlayer}{nodelayer}
\node [style=blackdot] (bu) at (0, 0.5) {};
\node [style=none] (1) at (0, 0) {};
\node [style=none] (2) at (0.5, 1) {};
\node [style=none] (3) at (0.5, 0) {};
\end{pgfonlayer}
\begin{pgfonlayer}{edgelayer}
\draw (bu.center) to (1.center);
\draw (2.center) to (3.center);
\end{pgfonlayer}
\end{tikzpicture}
\]

Let $q$ be an object of $\C$, and $f \maps x \to q$ and $g \maps y \to q$ be maps in $\C$. Define the map $h \maps x \otimes y \to q$ to be the following composite.

\[
\begin{tikzpicture}
\begin{pgfonlayer}{nodelayer}
\node [style=none] (x) at (-0.5, 0.75) {};