From 299741fcef2500949e423ac92c3d2a610d77f761 Mon Sep 17 00:00:00 2001 From: Juan Marin Noguera Date: Sat, 17 Jun 2023 01:39:09 +0200 Subject: Mónadas MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ch4_trans.tex | 2 +- ch5_adjoints.tex | 14 +++++++-- ch6_monads.tex | 87 ++++++++++++++++++++++++++++++++++++++++++-------------- main.tex | 1 + 4 files changed, 80 insertions(+), 24 deletions(-) diff --git a/ch4_trans.tex b/ch4_trans.tex index a20d7cc..2fa08c4 100644 --- a/ch4_trans.tex +++ b/ch4_trans.tex @@ -274,7 +274,7 @@ Además de componer transformaciones naturales verticalmente, podemos componer dos transformaciones naturales $\cB\nats{\tau}\cC\nats{\sigma}\cD$ de la siguiente manera. -\begin{definition} +\begin{definition}\label{def:comp-horiz} Dados cuatro funtores $S,T:\cB\to\cC$ y $S',T':\cC\to\cD$ y dos transformaciones naturales $\tau:S\to T$ y $\sigma:S'\to T'$, llamamos \conc{composición horizontal} de $\tau$ y $\sigma$ a la transformación natural diff --git a/ch5_adjoints.tex b/ch5_adjoints.tex index efa2813..ee796f5 100644 --- a/ch5_adjoints.tex +++ b/ch5_adjoints.tex @@ -271,7 +271,16 @@ $\psi(e_{Fb}\circ Fu_b)=Ue_{Fb}\circ Ue_{Fb}\circ UFu_b\circ u_b=Ue_{Fb}\circ u_{UFb}\circ u_b=1_{UFb}\circ u_b=u_b$ y por tanto $1_{Fb}=\psi^{-1}(u_b)=e_{Fb}\circ Fu_b$. -Esto motiva la siguiente definición. +Estas dos identidades se pueden expresar más elegantemente con la notación +adecuada. Si $\tau:R\to S$ es una transformación natural entre dos funtores +$R,S:\cB\to\cC$ y $T:\cC\to\cD$ es otro funtor, podemos definir la +transformación natural $T\tau:T\circ R\to T\circ S$ como +$(T\tau)_b\coloneqq T(\tau_b)$ para cada objeto $b$ en $\cB$. Por otro lado, si +$U:\cA\to\cB$ es otro funtor, podemos definir la transformación natural +$\tau U:R\circ U\to G\circ U$ como $(\tau U)_a\coloneqq\tau_{Ka}$ para cada +objeto $a$ en $\cA$. + +Con todo esto en mente, definimos las adjunciones como sigue. \begin{definition} Una \conc{adjunción} entre dos categorías $\cB$ y $\cC$ es una tupla @@ -282,7 +291,8 @@ Esto motiva la siguiente definición. \end{definition} Cabe preguntarse si todas las adjunciones se pueden construir como en el -razonamiento anterior. La respuesta es que sí, como vemos a continuación. +razonamiento anterior. La respuesta es que sí, como vemos en el siguiente +teorema. \begin{theorem}\label{thm:adjoint-elems} Una adjunción $(F,G,\eta,\eps)$ entre $\cB$ y $\cC$ viene determinada por diff --git a/ch6_monads.tex b/ch6_monads.tex index da4a718..15103ff 100644 --- a/ch6_monads.tex +++ b/ch6_monads.tex @@ -22,12 +22,13 @@ propiedades similares, y para estudiar estos casos existe el concepto de mónada Este capítulo se basa principalmente en \cite[VI]{maclane}. \begin{definition} - Una \conc{mónada} en una categoría $\cC$ es una tupla $(T,\eta,\mu)$ formada - por un funtor $T:\cC\to\cC$ y dos transformaciones naturales $\eta:1_\cC\to T$ - y $\mu:T^2\to T$ tales que, para cada objeto $c$ en $\cC$: + Una \conc{mónada} en una categoría $\cC$ es una tupla $(T,\eta,\mu)$ + formada por un funtor $T:\cC\to\cC$ y dos transformaciones naturales + $\eta:1_\cC\to T$ y $\mu:T^2\to T$ que cumplen las siguientes + condiciones, ilustradas en la figura \ref{fig:monad}. \begin{enumerate} - \item $\mu_c\circ T\mu_c=\mu_c\circ\mu_{Tc}$. - \item $\mu_c\circ\eta_{Tc}=\mu_c\circ T\eta_c=1_{Tc}$. + \item $\mu\cdot T\mu = \mu\cdot\mu T$. + \item $\mu\cdot\eta T = \mu\cdot T\eta = 1$. \end{enumerate} \end{definition} @@ -37,21 +38,10 @@ Este capítulo se basa principalmente en \cite[VI]{maclane}. retracción. \end{proposition} -Si $\tau:R\to S$ es una transformación natural entre dos funtores -$R,S:\cB\to\cC$ y $T:\cC\to\cD$ es otro funtor, podemos definir la -transformación natural $T\tau:T\circ R\to T\circ S$ como -$(T\tau)_b\coloneqq T(\tau_b)$ para cada objeto $b$ en $\cB$. Por otro lado, si -$U:\cA\to\cB$ es otro funtor, podemos definir la transformación natural -$\tau U:R\circ U\to G\circ U$ como $(\tau U)_a\coloneqq\tau_{Ka}$ para cada -objeto $a$ en $\cA$. - -Esto nos permite resumir las condiciones en la definición de mónada diciendo que -$\mu\circ T\mu=\mu\circ\mu T$ y $\mu\circ T\eta=\mu\circ\eta T=1_T$, como se -muestra en la figura \ref{fig:monad}. - \begin{figure} \centering \begin{subfigure}{.45\linewidth} + \centering \begin{diagram} \path (0,2) node(TTT){$T^3$} (2,2) node(TTP){$T^2$}; \path (0,0) node(PTT){$T^2$} (2,0) node(T){$T$}; @@ -60,10 +50,11 @@ muestra en la figura \ref{fig:monad}. \draw[->] (TTP) -- node[right]{$\mu$} (T); \draw[->] (PTT) -- node[below]{$\mu$} (T); \end{diagram} - \caption{Conmutatividad de $\mu$ con $T$.} + \caption{Conmutatividad de la unión} \end{subfigure} \hfil \begin{subfigure}{.45\linewidth} + \centering \begin{diagram} \path (0,2) node(IT){$1\circ T$} (2,2) node(TT){$T^2$} (4,2) node(TI){$T\circ 1$}; \path (2,0) node(T){$T$}; @@ -73,10 +64,9 @@ muestra en la figura \ref{fig:monad}. \draw[->] (IT) -- node[left]{$1$} (T); \draw[->] (TI) -- node[right]{$1$} (T); \end{diagram} - \caption{Relación entre $\eta$ y $\mu$.} + \caption{Relación entre la unidad y la unión} \end{subfigure} - \caption[Definición de mónada.]{Definición de mónada en una categoría $\cC$ - mediante diagramas en $\cC^\cC$.} + \caption{Condiciones de coherencia de las mónadas.} \label{fig:monad} \end{figure} @@ -147,6 +137,61 @@ muestra en la figura \ref{fig:monad}. \end{enumerate} \end{example} +\begin{proposition} + Si $(F,G,\eta,\eps)$ es una adjunción entre las categorías $\cB$ y $\cC$, + entonces $(G\circ F, \eta, G\eps F)$ es una mónada. +\end{proposition} +\begin{proof} + Al componer horizontalmente $\eps$ consigo mismo (\ref{def:comp-horiz}) + obtenemos que $\eps\circ\eps=\eps\cdot\eps FG=\eps\cdot FG\eps$, y añadiendo + $G$ al principio y $F$ al final obtenemos + $G\eps F\cdot G\eps FGF=G\eps F\cdot GFG\eps F$, que es la primera ley de las + mónadas. Para la segunda, basta añadir $F$ al final en la identidad + $G\eps\cdot\eta G=1$ y $G$ al principio en $\eps F\cdot F\eta=1$. +\end{proof} + +\begin{definition} + Dada una categoría $\cC$, la \conc{categoría de mónadas} de $\cC$ es una + categoría $\Mnd{\cC}$ cuyos objetos son las mónadas sobre $\cC$ y cuyos + morfismos $(S,\eta,\mu)\to(T,\eta',\mu')$ son las transformaciones naturales + $\tau:S\to T$ tales que los diagramas en la figura \ref{fig:monad-morph} + conmutan. + \begin{figure} + \centering + \begin{subfigure}{.45\linewidth} + \centering + \begin{diagram} + \path (0,2) node(ID){$1$} (2,2) node(S){$S$}; + \path (2,0) node(T){$T$} node[below]{$\phantom{\mu'}$}; + \draw[->] (ID) -- node[above]{$\eta$} (S); + \draw[->] (ID) -- node[left]{$\eta'$} (T); + \draw[->] (S) -- node[right]{$\tau$} (T); + \end{diagram} + \caption{Conmutatividad de la unidad} + \end{subfigure} + \hfil + \begin{subfigure}{.45\linewidth} + \centering + \begin{diagram} + \path (0,2) node(SS){$S^2$} (2,2) node(S){$S$}; + \path (0,0) node(TT){$T^2$} (2,0) node(T){$T$}; + \draw[->] (SS) -- node[above]{$\mu$} (S); + \draw[->] (TT) -- node[below]{$\mu'$} (T); + \draw[->] (SS) -- node[left]{$\tau\circ\tau$} (TT); + \draw[->] (S) -- node[right]{$\tau$} (T); + \end{diagram} + \caption{Conmutatividad de la unión} + \end{subfigure} + \caption{Morfismos de mónadas.} + \label{fig:monad-morph} + \end{figure} +\end{definition} + +% TODO Todo esto el viernes: +% TODO Definición de la categoría de mónadas +% TODO Álgebras de una mónada (sin llegar al teorema de Beck) +% TODO Categorías de Kleisli + %%% Local Variables: %%% mode: latex %%% TeX-master: "main" diff --git a/main.tex b/main.tex index d5c70a2..f74a7ca 100644 --- a/main.tex +++ b/main.tex @@ -106,6 +106,7 @@ decorate, decoration={ \newcommand{\dKeyPar}[2]{\newcommand{#1}[1]{\text{#2}({##1})}} \dKeyPar{\Ob}{Ob} \dKeyPar{\Mor}{Mor} +\dKeyPar{\Mnd}{Mnd} \dKey{\dom}{dom} \dKey{\cod}{cod} \dKey{\Img}{Im\,} -- cgit v1.2.3