bsc-leon-vatthauer/public/Categories.Adjoint.Construction.EilenbergMoore.html

89 lines
No EOL
23 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!DOCTYPE HTML>
<html><head><meta charset="utf-8"><title>Categories.Adjoint.Construction.EilenbergMoore</title><link rel="stylesheet" href="Agda.css"></head><body><pre class="Agda"><a id="1" class="Symbol">{-#</a> <a id="5" class="Keyword">OPTIONS</a> <a id="13" class="Pragma">--without-K</a> <a id="25" class="Pragma">--safe</a> <a id="32" class="Symbol">#-}</a>
<a id="37" class="Keyword">open</a> <a id="42" class="Keyword">import</a> <a id="49" href="Categories.Category.Core.html" class="Module">Categories.Category.Core</a>
<a id="74" class="Keyword">open</a> <a id="79" class="Keyword">import</a> <a id="86" href="Categories.Monad.html" class="Module">Categories.Monad</a>
<a id="104" class="Keyword">module</a> <a id="111" href="Categories.Adjoint.Construction.EilenbergMoore.html" class="Module">Categories.Adjoint.Construction.EilenbergMoore</a> <a id="158" class="Symbol">{</a><a id="159" href="Categories.Adjoint.Construction.EilenbergMoore.html#159" class="Bound">o</a> <a id="161" href="Categories.Adjoint.Construction.EilenbergMoore.html#161" class="Bound"></a> <a id="163" href="Categories.Adjoint.Construction.EilenbergMoore.html#163" class="Bound">e</a><a id="164" class="Symbol">}</a> <a id="166" class="Symbol">{</a><a id="167" href="Categories.Adjoint.Construction.EilenbergMoore.html#167" class="Bound">C</a> <a id="169" class="Symbol">:</a> <a id="171" href="Categories.Category.Core.html#442" class="Record">Category</a> <a id="180" href="Categories.Adjoint.Construction.EilenbergMoore.html#159" class="Bound">o</a> <a id="182" href="Categories.Adjoint.Construction.EilenbergMoore.html#161" class="Bound"></a> <a id="184" href="Categories.Adjoint.Construction.EilenbergMoore.html#163" class="Bound">e</a><a id="185" class="Symbol">}</a> <a id="187" class="Symbol">(</a><a id="188" href="Categories.Adjoint.Construction.EilenbergMoore.html#188" class="Bound">M</a> <a id="190" class="Symbol">:</a> <a id="192" href="Categories.Monad.html#454" class="Record">Monad</a> <a id="198" href="Categories.Adjoint.Construction.EilenbergMoore.html#167" class="Bound">C</a><a id="199" class="Symbol">)</a> <a id="201" class="Keyword">where</a>
<a id="208" class="Keyword">open</a> <a id="213" class="Keyword">import</a> <a id="220" href="Categories.Category.Construction.EilenbergMoore.html" class="Module">Categories.Category.Construction.EilenbergMoore</a> <a id="268" href="Categories.Adjoint.Construction.EilenbergMoore.html#188" class="Bound">M</a>
<a id="270" class="Keyword">open</a> <a id="275" class="Keyword">import</a> <a id="282" href="Categories.Adjoint.html" class="Module">Categories.Adjoint</a>
<a id="301" class="Keyword">open</a> <a id="306" class="Keyword">import</a> <a id="313" href="Categories.Functor.html" class="Module">Categories.Functor</a>
<a id="332" class="Keyword">open</a> <a id="337" class="Keyword">import</a> <a id="344" href="Categories.Functor.Properties.html" class="Module">Categories.Functor.Properties</a>
<a id="374" class="Keyword">open</a> <a id="379" class="Keyword">import</a> <a id="386" href="Categories.NaturalTransformation.Core.html" class="Module">Categories.NaturalTransformation.Core</a>
<a id="424" class="Keyword">open</a> <a id="429" class="Keyword">import</a> <a id="436" href="Categories.NaturalTransformation.NaturalIsomorphism.html" class="Module">Categories.NaturalTransformation.NaturalIsomorphism</a> <a id="488" class="Keyword">using</a> <a id="494" class="Symbol">(</a><a id="495" href="Categories.NaturalTransformation.NaturalIsomorphism.html#3600" class="Function Operator">_≃_</a><a id="498" class="Symbol">)</a>
<a id="500" class="Keyword">open</a> <a id="505" class="Keyword">import</a> <a id="512" href="Categories.Morphism.Reasoning.html" class="Module">Categories.Morphism.Reasoning</a> <a id="542" href="Categories.Adjoint.Construction.EilenbergMoore.html#167" class="Bound">C</a>
<a id="545" class="Keyword">private</a>
<a id="555" class="Keyword">module</a> <a id="C"></a><a id="562" href="Categories.Adjoint.Construction.EilenbergMoore.html#562" class="Module">C</a> <a id="564" class="Symbol">=</a> <a id="566" href="Categories.Category.Core.html#442" class="Module">Category</a> <a id="575" href="Categories.Adjoint.Construction.EilenbergMoore.html#167" class="Bound">C</a>
<a id="579" class="Keyword">module</a> <a id="M"></a><a id="586" href="Categories.Adjoint.Construction.EilenbergMoore.html#586" class="Module">M</a> <a id="588" class="Symbol">=</a> <a id="590" href="Categories.Monad.html#454" class="Module">Monad</a> <a id="596" href="Categories.Adjoint.Construction.EilenbergMoore.html#188" class="Bound">M</a>
<a id="600" class="Keyword">open</a> <a id="605" href="Categories.Monad.html#630" class="Module">M.F</a>
<a id="611" class="Keyword">open</a> <a id="616" href="Categories.Adjoint.Construction.EilenbergMoore.html#562" class="Module">C</a>
<a id="620" class="Keyword">open</a> <a id="625" href="Categories.Category.Core.html#2462" class="Module">HomReasoning</a>
<a id="640" class="Keyword">open</a> <a id="645" href="Categories.Category.Core.html#1530" class="Module">Equiv</a>
<a id="Forgetful"></a><a id="652" href="Categories.Adjoint.Construction.EilenbergMoore.html#652" class="Function">Forgetful</a> <a id="662" class="Symbol">:</a> <a id="664" href="Categories.Functor.Core.html#248" class="Record">Functor</a> <a id="672" href="Categories.Category.Construction.EilenbergMoore.html#734" class="Function">EilenbergMoore</a> <a id="687" href="Categories.Adjoint.Construction.EilenbergMoore.html#167" class="Bound">C</a>
<a id="689" href="Categories.Adjoint.Construction.EilenbergMoore.html#652" class="Function">Forgetful</a> <a id="699" class="Symbol">=</a> <a id="701" class="Keyword">record</a>
<a id="710" class="Symbol">{</a> <a id="712" href="Categories.Functor.Core.html#432" class="Field">F₀</a> <a id="725" class="Symbol">=</a> <a id="727" href="Categories.Category.Construction.EilenbergMoore.html#412" class="Field">Module.A</a>
<a id="738" class="Symbol">;</a> <a id="740" href="Categories.Functor.Core.html#455" class="Field">F₁</a> <a id="753" class="Symbol">=</a> <a id="755" href="Categories.Category.Construction.EilenbergMoore.html#664" class="Field">Module⇒.arr</a>
<a id="769" class="Symbol">;</a> <a id="771" href="Categories.Functor.Core.html#511" class="Field">identity</a> <a id="784" class="Symbol">=</a> <a id="786" href="Relation.Binary.Structures.html#1577" class="Function">refl</a>
<a id="793" class="Symbol">;</a> <a id="795" href="Categories.Functor.Core.html#565" class="Field">homomorphism</a> <a id="808" class="Symbol">=</a> <a id="810" href="Relation.Binary.Structures.html#1577" class="Function">refl</a>
<a id="817" class="Symbol">;</a> <a id="819" href="Categories.Functor.Core.html#696" class="Field">F-resp-≈</a> <a id="832" class="Symbol">=</a> <a id="834" class="Symbol">λ</a> <a id="836" href="Categories.Adjoint.Construction.EilenbergMoore.html#836" class="Bound">eq</a> <a id="839" class="Symbol"></a> <a id="841" href="Categories.Adjoint.Construction.EilenbergMoore.html#836" class="Bound">eq</a>
<a id="846" class="Symbol">}</a>
<a id="Free"></a><a id="849" href="Categories.Adjoint.Construction.EilenbergMoore.html#849" class="Function">Free</a> <a id="854" class="Symbol">:</a> <a id="856" href="Categories.Functor.Core.html#248" class="Record">Functor</a> <a id="864" href="Categories.Adjoint.Construction.EilenbergMoore.html#167" class="Bound">C</a> <a id="866" href="Categories.Category.Construction.EilenbergMoore.html#734" class="Function">EilenbergMoore</a>
<a id="881" href="Categories.Adjoint.Construction.EilenbergMoore.html#849" class="Function">Free</a> <a id="886" class="Symbol">=</a> <a id="888" class="Keyword">record</a>
<a id="897" class="Symbol">{</a> <a id="899" href="Categories.Functor.Core.html#432" class="Field">F₀</a> <a id="912" class="Symbol">=</a> <a id="914" class="Symbol">λ</a> <a id="916" href="Categories.Adjoint.Construction.EilenbergMoore.html#916" class="Bound">A</a> <a id="918" class="Symbol"></a> <a id="920" class="Keyword">record</a>
<a id="931" class="Symbol">{</a> <a id="933" href="Categories.Category.Construction.EilenbergMoore.html#412" class="Field">A</a> <a id="942" class="Symbol">=</a> <a id="944" href="Categories.Functor.Core.html#432" class="Function">F₀</a> <a id="947" href="Categories.Adjoint.Construction.EilenbergMoore.html#916" class="Bound">A</a>
<a id="953" class="Symbol">;</a> <a id="955" href="Categories.Category.Construction.EilenbergMoore.html#431" class="Field">action</a> <a id="964" class="Symbol">=</a> <a id="966" href="Categories.NaturalTransformation.Core.html#783" class="Function">M.μ.η</a> <a id="972" href="Categories.Adjoint.Construction.EilenbergMoore.html#916" class="Bound">A</a>
<a id="978" class="Symbol">;</a> <a id="980" href="Categories.Category.Construction.EilenbergMoore.html#455" class="Field">commute</a> <a id="989" class="Symbol">=</a> <a id="991" href="Categories.Monad.html#759" class="Field">M.assoc</a>
<a id="1003" class="Symbol">;</a> <a id="1005" href="Categories.Category.Construction.EilenbergMoore.html#508" class="Field">identity</a> <a id="1014" class="Symbol">=</a> <a id="1016" href="Categories.Monad.html#953" class="Field">M.identityʳ</a>
<a id="1032" class="Symbol">}</a>
<a id="1036" class="Symbol">;</a> <a id="1038" href="Categories.Functor.Core.html#455" class="Field">F₁</a> <a id="1051" class="Symbol">=</a> <a id="1053" class="Symbol">λ</a> <a id="1055" href="Categories.Adjoint.Construction.EilenbergMoore.html#1055" class="Bound">f</a> <a id="1057" class="Symbol"></a> <a id="1059" class="Keyword">record</a>
<a id="1070" class="Symbol">{</a> <a id="1072" href="Categories.Category.Construction.EilenbergMoore.html#664" class="Field">arr</a> <a id="1080" class="Symbol">=</a> <a id="1082" href="Categories.Functor.Core.html#455" class="Function">F₁</a> <a id="1085" href="Categories.Adjoint.Construction.EilenbergMoore.html#1055" class="Bound">f</a>
<a id="1091" class="Symbol">;</a> <a id="1093" href="Categories.Category.Construction.EilenbergMoore.html#688" class="Field">commute</a> <a id="1101" class="Symbol">=</a> <a id="1103" href="Categories.Category.Core.html#3005" class="Function"></a> <a id="1105" class="Symbol">(</a><a id="1106" href="Categories.NaturalTransformation.Core.html#827" class="Function">M.μ.commute</a> <a id="1118" href="Categories.Adjoint.Construction.EilenbergMoore.html#1055" class="Bound">f</a><a id="1119" class="Symbol">)</a>
<a id="1125" class="Symbol">}</a>
<a id="1129" class="Symbol">;</a> <a id="1131" href="Categories.Functor.Core.html#511" class="Field">identity</a> <a id="1144" class="Symbol">=</a> <a id="1146" href="Categories.Functor.Core.html#511" class="Function">identity</a>
<a id="1157" class="Symbol">;</a> <a id="1159" href="Categories.Functor.Core.html#565" class="Field">homomorphism</a> <a id="1172" class="Symbol">=</a> <a id="1174" href="Categories.Functor.Core.html#565" class="Function">homomorphism</a>
<a id="1189" class="Symbol">;</a> <a id="1191" href="Categories.Functor.Core.html#696" class="Field">F-resp-≈</a> <a id="1204" class="Symbol">=</a> <a id="1206" href="Categories.Functor.Core.html#696" class="Function">F-resp-≈</a>
<a id="1217" class="Symbol">}</a>
<a id="FF≃F"></a><a id="1220" href="Categories.Adjoint.Construction.EilenbergMoore.html#1220" class="Function">FF≃F</a> <a id="1225" class="Symbol">:</a> <a id="1227" href="Categories.Adjoint.Construction.EilenbergMoore.html#652" class="Function">Forgetful</a> <a id="1237" href="Categories.Functor.html#747" class="Function Operator">∘F</a> <a id="1240" href="Categories.Adjoint.Construction.EilenbergMoore.html#849" class="Function">Free</a> <a id="1245" href="Categories.NaturalTransformation.NaturalIsomorphism.html#3600" class="Function Operator"></a> <a id="1247" href="Categories.Monad.html#525" class="Field">M.F</a>
<a id="1251" href="Categories.Adjoint.Construction.EilenbergMoore.html#1220" class="Function">FF≃F</a> <a id="1256" class="Symbol">=</a> <a id="1258" class="Keyword">record</a>
<a id="1267" class="Symbol">{</a> <a id="1269" href="Categories.NaturalTransformation.NaturalIsomorphism.html#891" class="Field">F⇒G</a> <a id="1273" class="Symbol">=</a> <a id="1275" class="Keyword">record</a>
<a id="1286" class="Symbol">{</a> <a id="1288" href="Categories.NaturalTransformation.Core.html#783" class="Field">η</a> <a id="1300" class="Symbol">=</a> <a id="1302" class="Symbol">λ</a> <a id="1304" href="Categories.Adjoint.Construction.EilenbergMoore.html#1304" class="Bound">_</a> <a id="1306" class="Symbol"></a> <a id="1308" href="Categories.Functor.Core.html#455" class="Function">F₁</a> <a id="1311" href="Categories.Category.Core.html#630" class="Function">C.id</a>
<a id="1320" class="Symbol">;</a> <a id="1322" href="Categories.NaturalTransformation.Core.html#827" class="Field">commute</a> <a id="1334" class="Symbol">=</a> <a id="1336" class="Symbol">λ</a> <a id="1338" href="Categories.Adjoint.Construction.EilenbergMoore.html#1338" class="Bound">_</a> <a id="1340" class="Symbol"></a> <a id="1342" href="Categories.Functor.Properties.html#2676" class="Function Operator">[</a> <a id="1344" href="Categories.Monad.html#525" class="Field">M.F</a> <a id="1348" href="Categories.Functor.Properties.html#2676" class="Function Operator">]-resp-square</a> <a id="1362" href="Categories.Morphism.Reasoning.Core.html#1309" class="Function">id-comm-sym</a>
<a id="1378" class="Symbol">;</a> <a id="1380" href="Categories.NaturalTransformation.Core.html#1043" class="Field">sym-commute</a> <a id="1392" class="Symbol">=</a> <a id="1394" class="Symbol">λ</a> <a id="1396" href="Categories.Adjoint.Construction.EilenbergMoore.html#1396" class="Bound">_</a> <a id="1398" class="Symbol"></a> <a id="1400" href="Categories.Functor.Properties.html#2676" class="Function Operator">[</a> <a id="1402" href="Categories.Monad.html#525" class="Field">M.F</a> <a id="1406" href="Categories.Functor.Properties.html#2676" class="Function Operator">]-resp-square</a> <a id="1420" href="Categories.Morphism.Reasoning.Core.html#1202" class="Function">id-comm</a>
<a id="1432" class="Symbol">}</a>
<a id="1436" class="Symbol">;</a> <a id="1438" href="Categories.NaturalTransformation.NaturalIsomorphism.html#927" class="Field">F⇐G</a> <a id="1442" class="Symbol">=</a> <a id="1444" class="Keyword">record</a>
<a id="1455" class="Symbol">{</a> <a id="1457" href="Categories.NaturalTransformation.Core.html#783" class="Field">η</a> <a id="1465" class="Symbol">=</a> <a id="1467" class="Symbol">λ</a> <a id="1469" href="Categories.Adjoint.Construction.EilenbergMoore.html#1469" class="Bound">_</a> <a id="1471" class="Symbol"></a> <a id="1473" href="Categories.Functor.Core.html#455" class="Function">F₁</a> <a id="1476" href="Categories.Category.Core.html#630" class="Function">C.id</a>
<a id="1485" class="Symbol">;</a> <a id="1487" href="Categories.NaturalTransformation.Core.html#827" class="Field">commute</a> <a id="1495" class="Symbol">=</a> <a id="1497" class="Symbol">λ</a> <a id="1499" href="Categories.Adjoint.Construction.EilenbergMoore.html#1499" class="Bound">_</a> <a id="1501" class="Symbol"></a> <a id="1503" href="Categories.Functor.Properties.html#2676" class="Function Operator">[</a> <a id="1505" href="Categories.Monad.html#525" class="Field">M.F</a> <a id="1509" href="Categories.Functor.Properties.html#2676" class="Function Operator">]-resp-square</a> <a id="1523" href="Categories.Morphism.Reasoning.Core.html#1309" class="Function">id-comm-sym</a>
<a id="1539" class="Symbol">;</a> <a id="1541" href="Categories.NaturalTransformation.Core.html#1043" class="Field">sym-commute</a> <a id="1553" class="Symbol">=</a> <a id="1555" class="Symbol">λ</a> <a id="1557" href="Categories.Adjoint.Construction.EilenbergMoore.html#1557" class="Bound">_</a> <a id="1559" class="Symbol"></a> <a id="1561" href="Categories.Functor.Properties.html#2676" class="Function Operator">[</a> <a id="1563" href="Categories.Monad.html#525" class="Field">M.F</a> <a id="1567" href="Categories.Functor.Properties.html#2676" class="Function Operator">]-resp-square</a> <a id="1581" href="Categories.Morphism.Reasoning.Core.html#1202" class="Function">id-comm</a>
<a id="1593" class="Symbol">}</a>
<a id="1597" class="Symbol">;</a> <a id="1599" href="Categories.NaturalTransformation.NaturalIsomorphism.html#1051" class="Field">iso</a> <a id="1603" class="Symbol">=</a> <a id="1605" class="Symbol">λ</a> <a id="1607" href="Categories.Adjoint.Construction.EilenbergMoore.html#1607" class="Bound">_</a> <a id="1609" class="Symbol"></a> <a id="1611" class="Keyword">record</a>
<a id="1622" class="Symbol">{</a> <a id="1624" href="Categories.Morphism.html#1586" class="Field">isoˡ</a> <a id="1629" class="Symbol">=</a> <a id="1631" href="Categories.Morphism.Reasoning.Core.html#2948" class="Function">elimˡ</a> <a id="1637" href="Categories.Functor.Core.html#511" class="Function">identity</a> <a id="1646" href="Categories.Category.Core.html#3061" class="Function Operator"></a> <a id="1648" href="Categories.Functor.Core.html#511" class="Function">identity</a>
<a id="1661" class="Symbol">;</a> <a id="1663" href="Categories.Morphism.html#1612" class="Field">isoʳ</a> <a id="1668" class="Symbol">=</a> <a id="1670" href="Categories.Morphism.Reasoning.Core.html#2948" class="Function">elimˡ</a> <a id="1676" href="Categories.Functor.Core.html#511" class="Function">identity</a> <a id="1685" href="Categories.Category.Core.html#3061" class="Function Operator"></a> <a id="1687" href="Categories.Functor.Core.html#511" class="Function">identity</a>
<a id="1700" class="Symbol">}</a>
<a id="1704" class="Symbol">}</a>
<a id="Free⊣Forgetful"></a><a id="1707" href="Categories.Adjoint.Construction.EilenbergMoore.html#1707" class="Function">Free⊣Forgetful</a> <a id="1722" class="Symbol">:</a> <a id="1724" href="Categories.Adjoint.Construction.EilenbergMoore.html#849" class="Function">Free</a> <a id="1729" href="Categories.Adjoint.html#7972" class="Function Operator"></a> <a id="1731" href="Categories.Adjoint.Construction.EilenbergMoore.html#652" class="Function">Forgetful</a>
<a id="1741" href="Categories.Adjoint.Construction.EilenbergMoore.html#1707" class="Function">Free⊣Forgetful</a> <a id="1756" class="Symbol">=</a> <a id="1758" class="Keyword">record</a>
<a id="1767" class="Symbol">{</a> <a id="1769" href="Categories.Adjoint.html#1519" class="Field">unit</a> <a id="1776" class="Symbol">=</a> <a id="1778" class="Keyword">record</a>
<a id="1789" class="Symbol">{</a> <a id="1791" href="Categories.NaturalTransformation.Core.html#783" class="Field">η</a> <a id="1803" class="Symbol">=</a> <a id="1805" href="Categories.NaturalTransformation.Core.html#783" class="Function">M.η.η</a>
<a id="1815" class="Symbol">;</a> <a id="1817" href="Categories.NaturalTransformation.Core.html#827" class="Field">commute</a> <a id="1829" class="Symbol">=</a> <a id="1831" href="Categories.NaturalTransformation.Core.html#827" class="Function">M.η.commute</a>
<a id="1847" class="Symbol">;</a> <a id="1849" href="Categories.NaturalTransformation.Core.html#1043" class="Field">sym-commute</a> <a id="1861" class="Symbol">=</a> <a id="1863" href="Categories.NaturalTransformation.Core.html#1043" class="Function">M.η.sym-commute</a>
<a id="1883" class="Symbol">}</a>
<a id="1887" class="Symbol">;</a> <a id="1889" href="Categories.Adjoint.html#1567" class="Field">counit</a> <a id="1896" class="Symbol">=</a> <a id="1898" class="Keyword">record</a>
<a id="1909" class="Symbol">{</a> <a id="1911" href="Categories.NaturalTransformation.Core.html#783" class="Field">η</a> <a id="1923" class="Symbol">=</a> <a id="1925" class="Symbol">λ</a> <a id="1927" href="Categories.Adjoint.Construction.EilenbergMoore.html#1927" class="Bound">X</a> <a id="1929" class="Symbol"></a>
<a id="1937" class="Keyword">let</a> <a id="1941" class="Keyword">module</a> <a id="X"></a><a id="1948" href="Categories.Adjoint.Construction.EilenbergMoore.html#1948" class="Module">X</a> <a id="1950" class="Symbol">=</a> <a id="1952" href="Categories.Category.Construction.EilenbergMoore.html#369" class="Module">Module</a> <a id="1959" href="Categories.Adjoint.Construction.EilenbergMoore.html#1927" class="Bound">X</a>
<a id="1967" class="Keyword">in</a> <a id="1970" class="Keyword">record</a>
<a id="1985" class="Symbol">{</a> <a id="1987" href="Categories.Category.Construction.EilenbergMoore.html#664" class="Field">arr</a> <a id="1995" class="Symbol">=</a> <a id="1997" href="Categories.Category.Construction.EilenbergMoore.html#431" class="Field">X.action</a>
<a id="2014" class="Symbol">;</a> <a id="2016" href="Categories.Category.Construction.EilenbergMoore.html#688" class="Field">commute</a> <a id="2024" class="Symbol">=</a> <a id="2026" href="Categories.Category.Core.html#3005" class="Function"></a> <a id="2028" href="Categories.Category.Construction.EilenbergMoore.html#455" class="Field">X.commute</a>
<a id="2046" class="Symbol">}</a>
<a id="2052" class="Symbol">;</a> <a id="2054" href="Categories.NaturalTransformation.Core.html#827" class="Field">commute</a> <a id="2066" class="Symbol">=</a> <a id="2068" class="Symbol">λ</a> <a id="2070" href="Categories.Adjoint.Construction.EilenbergMoore.html#2070" class="Bound">f</a> <a id="2072" class="Symbol"></a> <a id="2074" href="Categories.Category.Core.html#3005" class="Function"></a> <a id="2076" class="Symbol">(</a><a id="2077" href="Categories.Category.Construction.EilenbergMoore.html#688" class="Field">Module⇒.commute</a> <a id="2093" href="Categories.Adjoint.Construction.EilenbergMoore.html#2070" class="Bound">f</a><a id="2094" class="Symbol">)</a>
<a id="2100" class="Symbol">;</a> <a id="2102" href="Categories.NaturalTransformation.Core.html#1043" class="Field">sym-commute</a> <a id="2114" class="Symbol">=</a> <a id="2116" href="Categories.Category.Construction.EilenbergMoore.html#688" class="Field">Module⇒.commute</a>
<a id="2136" class="Symbol">}</a>
<a id="2140" class="Symbol">;</a> <a id="2142" href="Categories.Adjoint.html#1715" class="Field">zig</a> <a id="2149" class="Symbol">=</a> <a id="2151" href="Categories.Monad.html#899" class="Field">M.identityˡ</a>
<a id="2165" class="Symbol">;</a> <a id="2167" href="Categories.Adjoint.html#1788" class="Field">zag</a> <a id="2174" class="Symbol">=</a> <a id="2176" class="Symbol">λ</a> <a id="2178" class="Symbol">{</a><a id="2179" href="Categories.Adjoint.Construction.EilenbergMoore.html#2179" class="Bound">B</a><a id="2180" class="Symbol">}</a> <a id="2182" class="Symbol"></a> <a id="2184" href="Categories.Category.Construction.EilenbergMoore.html#508" class="Field">Module.identity</a> <a id="2200" href="Categories.Adjoint.Construction.EilenbergMoore.html#2179" class="Bound">B</a>
<a id="2204" class="Symbol">}</a>
</pre></body></html>