mirror of
https://git8.cs.fau.de/theses/bsc-leon-vatthauer.git
synced 2024-05-31 07:28:34 +02:00
98 lines
No EOL
41 KiB
HTML
98 lines
No EOL
41 KiB
HTML
<!DOCTYPE HTML>
|
||
<html><head><meta charset="utf-8"><title>Categories.Category.Construction.Properties.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="36" class="Keyword">module</a> <a id="43" href="Categories.Category.Construction.Properties.EilenbergMoore.html" class="Module">Categories.Category.Construction.Properties.EilenbergMoore</a> <a id="102" class="Keyword">where</a>
|
||
|
||
<a id="109" class="Keyword">open</a> <a id="114" class="Keyword">import</a> <a id="121" href="Level.html" class="Module">Level</a>
|
||
<a id="127" class="Keyword">import</a> <a id="134" href="Relation.Binary.PropositionalEquality.Core.html" class="Module">Relation.Binary.PropositionalEquality.Core</a> <a id="177" class="Symbol">as</a> <a id="180" class="Module">≡</a>
|
||
|
||
<a id="183" class="Keyword">open</a> <a id="188" class="Keyword">import</a> <a id="195" href="Categories.Adjoint.html" class="Module">Categories.Adjoint</a>
|
||
<a id="214" class="Keyword">open</a> <a id="219" class="Keyword">import</a> <a id="226" href="Categories.Adjoint.Properties.html" class="Module">Categories.Adjoint.Properties</a>
|
||
<a id="256" class="Keyword">open</a> <a id="261" class="Keyword">import</a> <a id="268" href="Categories.Category.html" class="Module">Categories.Category</a>
|
||
<a id="288" class="Keyword">open</a> <a id="293" class="Keyword">import</a> <a id="300" href="Categories.Functor.html" class="Module">Categories.Functor</a> <a id="319" class="Keyword">using</a> <a id="325" class="Symbol">(</a><a id="326" href="Categories.Functor.Core.html#248" class="Record">Functor</a><a id="333" class="Symbol">;</a> <a id="335" href="Categories.Functor.html#747" class="Function Operator">_∘F_</a><a id="339" class="Symbol">)</a>
|
||
<a id="341" class="Keyword">open</a> <a id="346" class="Keyword">import</a> <a id="353" href="Categories.Functor.Equivalence.html" class="Module">Categories.Functor.Equivalence</a>
|
||
<a id="384" class="Keyword">open</a> <a id="389" class="Keyword">import</a> <a id="396" href="Categories.Monad.html" class="Module">Categories.Monad</a>
|
||
|
||
<a id="414" class="Keyword">open</a> <a id="419" class="Keyword">import</a> <a id="426" href="Categories.NaturalTransformation.Core.html" class="Module">Categories.NaturalTransformation.Core</a> <a id="464" class="Keyword">renaming</a> <a id="473" class="Symbol">(</a><a id="474" href="Categories.NaturalTransformation.Core.html#2132" class="Function">id</a> <a id="477" class="Symbol">to</a> <a id="480" class="Function">idN</a><a id="483" class="Symbol">)</a>
|
||
<a id="485" class="Keyword">open</a> <a id="490" class="Keyword">import</a> <a id="497" href="Categories.Morphism.HeterogeneousIdentity.html" class="Module">Categories.Morphism.HeterogeneousIdentity</a>
|
||
|
||
<a id="540" class="Keyword">open</a> <a id="545" class="Keyword">import</a> <a id="552" href="Categories.Adjoint.Construction.EilenbergMoore.html" class="Module">Categories.Adjoint.Construction.EilenbergMoore</a>
|
||
<a id="599" class="Keyword">open</a> <a id="604" class="Keyword">import</a> <a id="611" href="Categories.Category.Construction.EilenbergMoore.html" class="Module">Categories.Category.Construction.EilenbergMoore</a>
|
||
|
||
<a id="660" class="Keyword">private</a>
|
||
<a id="670" class="Keyword">variable</a>
|
||
<a id="683" href="Categories.Category.Construction.Properties.EilenbergMoore.html#683" class="Generalizable">o</a> <a id="685" href="Categories.Category.Construction.Properties.EilenbergMoore.html#685" class="Generalizable">ℓ</a> <a id="687" href="Categories.Category.Construction.Properties.EilenbergMoore.html#687" class="Generalizable">e</a> <a id="689" class="Symbol">:</a> <a id="691" href="Agda.Primitive.html#591" class="Postulate">Level</a>
|
||
<a id="701" href="Categories.Category.Construction.Properties.EilenbergMoore.html#701" class="Generalizable">𝒞</a> <a id="703" href="Categories.Category.Construction.Properties.EilenbergMoore.html#703" class="Generalizable">𝒟</a> <a id="705" class="Symbol">:</a> <a id="707" href="Categories.Category.Core.html#442" class="Record">Category</a> <a id="716" href="Categories.Category.Construction.Properties.EilenbergMoore.html#683" class="Generalizable">o</a> <a id="718" href="Categories.Category.Construction.Properties.EilenbergMoore.html#685" class="Generalizable">ℓ</a> <a id="720" href="Categories.Category.Construction.Properties.EilenbergMoore.html#687" class="Generalizable">e</a>
|
||
|
||
<a id="723" class="Keyword">module</a> <a id="730" href="Categories.Category.Construction.Properties.EilenbergMoore.html#730" class="Module">_</a> <a id="732" class="Symbol">{</a><a id="733" href="Categories.Category.Construction.Properties.EilenbergMoore.html#733" class="Bound">F</a> <a id="735" class="Symbol">:</a> <a id="737" href="Categories.Functor.Core.html#248" class="Record">Functor</a> <a id="745" href="Categories.Category.Construction.Properties.EilenbergMoore.html#701" class="Generalizable">𝒞</a> <a id="747" href="Categories.Category.Construction.Properties.EilenbergMoore.html#703" class="Generalizable">𝒟</a><a id="748" class="Symbol">}</a> <a id="750" class="Symbol">{</a><a id="751" href="Categories.Category.Construction.Properties.EilenbergMoore.html#751" class="Bound">G</a> <a id="753" class="Symbol">:</a> <a id="755" href="Categories.Functor.Core.html#248" class="Record">Functor</a> <a id="763" href="Categories.Category.Construction.Properties.EilenbergMoore.html#703" class="Generalizable">𝒟</a> <a id="765" href="Categories.Category.Construction.Properties.EilenbergMoore.html#701" class="Generalizable">𝒞</a><a id="766" class="Symbol">}</a> <a id="768" class="Symbol">(</a><a id="769" href="Categories.Category.Construction.Properties.EilenbergMoore.html#769" class="Bound">F⊣G</a> <a id="773" class="Symbol">:</a> <a id="775" href="Categories.Adjoint.html#1306" class="Record">Adjoint</a> <a id="783" href="Categories.Category.Construction.Properties.EilenbergMoore.html#733" class="Bound">F</a> <a id="785" href="Categories.Category.Construction.Properties.EilenbergMoore.html#751" class="Bound">G</a><a id="786" class="Symbol">)</a> <a id="788" class="Keyword">where</a>
|
||
<a id="796" class="Keyword">private</a>
|
||
<a id="808" href="Categories.Category.Construction.Properties.EilenbergMoore.html#808" class="Function">T</a> <a id="810" class="Symbol">:</a> <a id="812" href="Categories.Monad.html#454" class="Record">Monad</a> <a id="818" href="Categories.Category.Construction.Properties.EilenbergMoore.html#745" class="Bound">𝒞</a>
|
||
<a id="824" href="Categories.Category.Construction.Properties.EilenbergMoore.html#808" class="Function">T</a> <a id="826" class="Symbol">=</a> <a id="828" href="Categories.Adjoint.Properties.html#9436" class="Function">adjoint⇒monad</a> <a id="842" href="Categories.Category.Construction.Properties.EilenbergMoore.html#769" class="Bound">F⊣G</a>
|
||
|
||
<a id="851" href="Categories.Category.Construction.Properties.EilenbergMoore.html#851" class="Function">𝒞ᵀ</a> <a id="854" class="Symbol">:</a> <a id="856" href="Categories.Category.Core.html#442" class="Record">Category</a> <a id="865" class="Symbol">_</a> <a id="867" class="Symbol">_</a> <a id="869" class="Symbol">_</a>
|
||
<a id="875" href="Categories.Category.Construction.Properties.EilenbergMoore.html#851" class="Function">𝒞ᵀ</a> <a id="878" class="Symbol">=</a> <a id="880" href="Categories.Category.Construction.EilenbergMoore.html#734" class="Function">EilenbergMoore</a> <a id="895" href="Categories.Category.Construction.Properties.EilenbergMoore.html#808" class="Function">T</a>
|
||
|
||
<a id="902" class="Keyword">module</a> <a id="909" href="Categories.Category.Construction.Properties.EilenbergMoore.html#909" class="Module">𝒞</a> <a id="911" class="Symbol">=</a> <a id="913" href="Categories.Category.Core.html#442" class="Module">Category</a> <a id="922" href="Categories.Category.Construction.Properties.EilenbergMoore.html#745" class="Bound">𝒞</a>
|
||
<a id="928" class="Keyword">module</a> <a id="935" href="Categories.Category.Construction.Properties.EilenbergMoore.html#935" class="Module">𝒟</a> <a id="937" class="Symbol">=</a> <a id="939" href="Categories.Category.Core.html#442" class="Module">Category</a> <a id="948" href="Categories.Category.Construction.Properties.EilenbergMoore.html#747" class="Bound">𝒟</a>
|
||
<a id="954" class="Keyword">module</a> <a id="961" href="Categories.Category.Construction.Properties.EilenbergMoore.html#961" class="Module">𝒞ᵀ</a> <a id="964" class="Symbol">=</a> <a id="966" href="Categories.Category.Core.html#442" class="Module">Category</a> <a id="975" href="Categories.Category.Construction.Properties.EilenbergMoore.html#851" class="Function">𝒞ᵀ</a>
|
||
|
||
<a id="983" class="Keyword">open</a> <a id="988" href="Categories.Category.Core.html#2462" class="Module">𝒞.HomReasoning</a>
|
||
|
||
<a id="1008" class="Keyword">module</a> <a id="1015" href="Categories.Category.Construction.Properties.EilenbergMoore.html#1015" class="Module">T</a> <a id="1017" class="Symbol">=</a> <a id="1019" href="Categories.Monad.html#454" class="Module">Monad</a> <a id="1025" href="Categories.Category.Construction.Properties.EilenbergMoore.html#808" class="Function">T</a>
|
||
<a id="1031" class="Keyword">module</a> <a id="1038" href="Categories.Category.Construction.Properties.EilenbergMoore.html#1038" class="Module">F</a> <a id="1040" class="Symbol">=</a> <a id="1042" href="Categories.Functor.Core.html#248" class="Module">Functor</a> <a id="1050" href="Categories.Category.Construction.Properties.EilenbergMoore.html#733" class="Bound">F</a>
|
||
<a id="1056" class="Keyword">module</a> <a id="1063" href="Categories.Category.Construction.Properties.EilenbergMoore.html#1063" class="Module">G</a> <a id="1065" class="Symbol">=</a> <a id="1067" href="Categories.Functor.Core.html#248" class="Module">Functor</a> <a id="1075" href="Categories.Category.Construction.Properties.EilenbergMoore.html#751" class="Bound">G</a>
|
||
|
||
<a id="1082" class="Keyword">open</a> <a id="1087" href="Categories.Adjoint.html#1306" class="Module">Adjoint</a> <a id="1095" href="Categories.Category.Construction.Properties.EilenbergMoore.html#769" class="Bound">F⊣G</a>
|
||
<a id="1103" class="Keyword">open</a> <a id="1108" href="Categories.NaturalTransformation.Core.html#466" class="Module">NaturalTransformation</a>
|
||
|
||
<a id="1133" class="Comment">-- Maclane's Comparison Functor</a>
|
||
<a id="1167" href="Categories.Category.Construction.Properties.EilenbergMoore.html#1167" class="Function">ComparisonF</a> <a id="1179" class="Symbol">:</a> <a id="1181" href="Categories.Functor.Core.html#248" class="Record">Functor</a> <a id="1189" href="Categories.Category.Construction.Properties.EilenbergMoore.html#747" class="Bound">𝒟</a> <a id="1191" href="Categories.Category.Construction.Properties.EilenbergMoore.html#851" class="Function">𝒞ᵀ</a>
|
||
<a id="1196" href="Categories.Category.Construction.Properties.EilenbergMoore.html#1167" class="Function">ComparisonF</a> <a id="1208" class="Symbol">=</a> <a id="1210" class="Keyword">record</a>
|
||
<a id="1221" class="Symbol">{</a> <a id="1223" href="Categories.Functor.Core.html#432" class="Field">F₀</a> <a id="1226" class="Symbol">=</a> <a id="1228" class="Symbol">λ</a> <a id="1230" href="Categories.Category.Construction.Properties.EilenbergMoore.html#1230" class="Bound">X</a> <a id="1232" class="Symbol">→</a> <a id="1234" class="Keyword">record</a>
|
||
<a id="1247" class="Symbol">{</a> <a id="1249" href="Categories.Category.Construction.EilenbergMoore.html#412" class="Field">A</a> <a id="1251" class="Symbol">=</a> <a id="1253" href="Categories.Functor.Core.html#432" class="Function">G.F₀</a> <a id="1258" href="Categories.Category.Construction.Properties.EilenbergMoore.html#1230" class="Bound">X</a>
|
||
<a id="1266" class="Symbol">;</a> <a id="1268" href="Categories.Category.Construction.EilenbergMoore.html#431" class="Field">action</a> <a id="1275" class="Symbol">=</a> <a id="1277" href="Categories.Functor.Core.html#455" class="Function">G.F₁</a> <a id="1282" class="Symbol">(</a><a id="1283" href="Categories.NaturalTransformation.Core.html#783" class="Function">counit.η</a> <a id="1292" href="Categories.Category.Construction.Properties.EilenbergMoore.html#1230" class="Bound">X</a><a id="1293" class="Symbol">)</a>
|
||
<a id="1301" class="Symbol">;</a> <a id="1303" href="Categories.Category.Construction.EilenbergMoore.html#455" class="Field">commute</a> <a id="1311" class="Symbol">=</a> <a id="1313" href="Categories.NaturalTransformation.Core.html#827" class="Field">commute</a> <a id="1321" class="Symbol">(</a><a id="1322" href="Categories.Category.Construction.Properties.EilenbergMoore.html#751" class="Bound">G</a> <a id="1324" href="Categories.NaturalTransformation.Core.html#3439" class="Function Operator">∘ˡ</a> <a id="1327" href="Categories.Adjoint.html#1567" class="Field">counit</a><a id="1333" class="Symbol">)</a> <a id="1335" class="Symbol">(</a><a id="1336" href="Categories.NaturalTransformation.Core.html#783" class="Function">counit.η</a> <a id="1345" href="Categories.Category.Construction.Properties.EilenbergMoore.html#1230" class="Bound">X</a><a id="1346" class="Symbol">)</a>
|
||
<a id="1354" class="Symbol">;</a> <a id="1356" href="Categories.Category.Construction.EilenbergMoore.html#508" class="Field">identity</a> <a id="1365" class="Symbol">=</a> <a id="1367" href="Categories.Adjoint.html#1788" class="Field">zag</a>
|
||
<a id="1377" class="Symbol">}</a>
|
||
<a id="1383" class="Symbol">;</a> <a id="1385" href="Categories.Functor.Core.html#455" class="Field">F₁</a> <a id="1388" class="Symbol">=</a> <a id="1390" class="Symbol">λ</a> <a id="1392" class="Symbol">{</a><a id="1393" href="Categories.Category.Construction.Properties.EilenbergMoore.html#1393" class="Bound">A</a><a id="1394" class="Symbol">}</a> <a id="1396" class="Symbol">{</a><a id="1397" href="Categories.Category.Construction.Properties.EilenbergMoore.html#1397" class="Bound">B</a><a id="1398" class="Symbol">}</a> <a id="1400" href="Categories.Category.Construction.Properties.EilenbergMoore.html#1400" class="Bound">f</a> <a id="1402" class="Symbol">→</a> <a id="1404" class="Keyword">record</a>
|
||
<a id="1417" class="Symbol">{</a> <a id="1419" href="Categories.Category.Construction.EilenbergMoore.html#664" class="Field">arr</a> <a id="1423" class="Symbol">=</a> <a id="1425" href="Categories.Functor.Core.html#455" class="Function">G.F₁</a> <a id="1430" href="Categories.Category.Construction.Properties.EilenbergMoore.html#1400" class="Bound">f</a>
|
||
<a id="1438" class="Symbol">;</a> <a id="1440" href="Categories.Category.Construction.EilenbergMoore.html#688" class="Field">commute</a> <a id="1448" class="Symbol">=</a> <a id="1451" href="Relation.Binary.Reasoning.Base.Single.html#1925" class="Function Operator">begin</a>
|
||
<a id="1465" href="Categories.Category.Construction.Properties.EilenbergMoore.html#745" class="Bound">𝒞</a> <a id="1467" href="Categories.Category.html#700" class="Function Operator">[</a> <a id="1469" href="Categories.Functor.Core.html#455" class="Function">G.F₁</a> <a id="1474" href="Categories.Category.Construction.Properties.EilenbergMoore.html#1400" class="Bound">f</a> <a id="1476" href="Categories.Category.html#700" class="Function Operator">∘</a> <a id="1478" href="Categories.Functor.Core.html#455" class="Function">G.F₁</a> <a id="1483" class="Symbol">(</a><a id="1484" href="Categories.NaturalTransformation.Core.html#783" class="Function">counit.η</a> <a id="1493" href="Categories.Category.Construction.Properties.EilenbergMoore.html#1393" class="Bound">A</a><a id="1494" class="Symbol">)</a> <a id="1496" href="Categories.Category.html#700" class="Function Operator">]</a> <a id="1512" href="Relation.Binary.Reasoning.Setoid.html#1162" class="Function">≈˘⟨</a> <a id="1516" href="Categories.Functor.Core.html#565" class="Function">G.homomorphism</a> <a id="1531" href="Relation.Binary.Reasoning.Setoid.html#1162" class="Function">⟩</a>
|
||
<a id="1541" href="Categories.Functor.Core.html#455" class="Function">G.F₁</a> <a id="1546" class="Symbol">(</a><a id="1547" href="Categories.Category.Construction.Properties.EilenbergMoore.html#747" class="Bound">𝒟</a> <a id="1549" href="Categories.Category.html#700" class="Function Operator">[</a> <a id="1551" href="Categories.Category.Construction.Properties.EilenbergMoore.html#1400" class="Bound">f</a> <a id="1553" href="Categories.Category.html#700" class="Function Operator">∘</a> <a id="1555" class="Symbol">(</a><a id="1556" href="Categories.NaturalTransformation.Core.html#783" class="Function">counit.η</a> <a id="1565" href="Categories.Category.Construction.Properties.EilenbergMoore.html#1393" class="Bound">A</a><a id="1566" class="Symbol">)</a> <a id="1568" href="Categories.Category.html#700" class="Function Operator">]</a><a id="1569" class="Symbol">)</a> <a id="1588" href="Relation.Binary.Reasoning.Setoid.html#1162" class="Function">≈˘⟨</a> <a id="1592" href="Categories.Functor.Core.html#696" class="Function">G.F-resp-≈</a> <a id="1603" class="Symbol">(</a><a id="1604" href="Categories.NaturalTransformation.Core.html#827" class="Function">counit.commute</a> <a id="1619" href="Categories.Category.Construction.Properties.EilenbergMoore.html#1400" class="Bound">f</a><a id="1620" class="Symbol">)</a> <a id="1622" href="Relation.Binary.Reasoning.Setoid.html#1162" class="Function">⟩</a>
|
||
<a id="1632" href="Categories.Functor.Core.html#455" class="Function">G.F₁</a> <a id="1637" class="Symbol">(</a><a id="1638" href="Categories.Category.Construction.Properties.EilenbergMoore.html#747" class="Bound">𝒟</a> <a id="1640" href="Categories.Category.html#700" class="Function Operator">[</a> <a id="1642" href="Categories.NaturalTransformation.Core.html#783" class="Function">counit.η</a> <a id="1651" href="Categories.Category.Construction.Properties.EilenbergMoore.html#1397" class="Bound">B</a> <a id="1653" href="Categories.Category.html#700" class="Function Operator">∘</a> <a id="1655" href="Categories.Functor.Core.html#455" class="Function">F.F₁</a> <a id="1660" class="Symbol">(</a><a id="1661" href="Categories.Functor.Core.html#455" class="Function">G.F₁</a> <a id="1666" href="Categories.Category.Construction.Properties.EilenbergMoore.html#1400" class="Bound">f</a><a id="1667" class="Symbol">)</a> <a id="1669" href="Categories.Category.html#700" class="Function Operator">]</a><a id="1670" class="Symbol">)</a> <a id="1679" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">≈⟨</a> <a id="1682" href="Categories.Functor.Core.html#565" class="Function">G.homomorphism</a> <a id="1698" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">⟩</a>
|
||
<a id="1708" href="Categories.Category.Construction.Properties.EilenbergMoore.html#745" class="Bound">𝒞</a> <a id="1710" href="Categories.Category.html#700" class="Function Operator">[</a> <a id="1712" href="Categories.Functor.Core.html#455" class="Function">G.F₁</a> <a id="1717" class="Symbol">(</a><a id="1718" href="Categories.NaturalTransformation.Core.html#783" class="Function">counit.η</a> <a id="1727" href="Categories.Category.Construction.Properties.EilenbergMoore.html#1397" class="Bound">B</a><a id="1728" class="Symbol">)</a> <a id="1730" href="Categories.Category.html#700" class="Function Operator">∘</a> <a id="1732" href="Categories.Functor.Core.html#455" class="Function">G.F₁</a> <a id="1737" class="Symbol">(</a><a id="1738" href="Categories.Functor.Core.html#455" class="Function">F.F₁</a> <a id="1743" class="Symbol">(</a><a id="1744" href="Categories.Functor.Core.html#455" class="Function">G.F₁</a> <a id="1749" href="Categories.Category.Construction.Properties.EilenbergMoore.html#1400" class="Bound">f</a><a id="1750" class="Symbol">))</a> <a id="1753" href="Categories.Category.html#700" class="Function Operator">]</a> <a id="1755" href="Relation.Binary.Reasoning.Base.Single.html#2564" class="Function Operator">∎</a>
|
||
<a id="1763" class="Symbol">}</a>
|
||
<a id="1769" class="Symbol">;</a> <a id="1771" href="Categories.Functor.Core.html#511" class="Field">identity</a> <a id="1780" class="Symbol">=</a> <a id="1782" href="Categories.Functor.Core.html#511" class="Function">G.identity</a>
|
||
<a id="1797" class="Symbol">;</a> <a id="1799" href="Categories.Functor.Core.html#565" class="Field">homomorphism</a> <a id="1812" class="Symbol">=</a> <a id="1814" href="Categories.Functor.Core.html#565" class="Function">G.homomorphism</a>
|
||
<a id="1833" class="Symbol">;</a> <a id="1835" href="Categories.Functor.Core.html#696" class="Field">F-resp-≈</a> <a id="1844" class="Symbol">=</a> <a id="1846" href="Categories.Functor.Core.html#696" class="Function">G.F-resp-≈</a>
|
||
<a id="1861" class="Symbol">}</a>
|
||
|
||
<a id="1866" class="Keyword">private</a>
|
||
<a id="1878" href="Categories.Category.Construction.Properties.EilenbergMoore.html#1878" class="Function">K</a> <a id="1880" class="Symbol">=</a> <a id="1882" href="Categories.Category.Construction.Properties.EilenbergMoore.html#1167" class="Function">ComparisonF</a>
|
||
<a id="1898" class="Keyword">module</a> <a id="1905" href="Categories.Category.Construction.Properties.EilenbergMoore.html#1905" class="Module">K</a> <a id="1907" class="Symbol">=</a> <a id="1909" href="Categories.Functor.Core.html#248" class="Module">Functor</a> <a id="1917" href="Categories.Category.Construction.Properties.EilenbergMoore.html#1878" class="Function">K</a>
|
||
<a id="1923" class="Keyword">module</a> <a id="1930" href="Categories.Category.Construction.Properties.EilenbergMoore.html#1930" class="Module">Gᵀ</a> <a id="1933" class="Symbol">=</a> <a id="1935" href="Categories.Functor.Core.html#248" class="Module">Functor</a> <a id="1943" class="Symbol">(</a><a id="1944" href="Categories.Adjoint.Construction.EilenbergMoore.html#652" class="Function">Forgetful</a> <a id="1954" href="Categories.Category.Construction.Properties.EilenbergMoore.html#808" class="Function">T</a><a id="1955" class="Symbol">)</a>
|
||
<a id="1961" class="Keyword">module</a> <a id="1968" href="Categories.Category.Construction.Properties.EilenbergMoore.html#1968" class="Module">Fᵀ</a> <a id="1971" class="Symbol">=</a> <a id="1973" href="Categories.Functor.Core.html#248" class="Module">Functor</a> <a id="1981" class="Symbol">(</a><a id="1982" href="Categories.Adjoint.Construction.EilenbergMoore.html#849" class="Function">Free</a> <a id="1987" href="Categories.Category.Construction.Properties.EilenbergMoore.html#808" class="Function">T</a><a id="1988" class="Symbol">)</a>
|
||
|
||
<a id="1993" href="Categories.Category.Construction.Properties.EilenbergMoore.html#1993" class="Function">Comparison∘F≡Free</a> <a id="2011" class="Symbol">:</a> <a id="2013" class="Symbol">(</a><a id="2014" href="Categories.Category.Construction.Properties.EilenbergMoore.html#1167" class="Function">ComparisonF</a> <a id="2026" href="Categories.Functor.html#747" class="Function Operator">∘F</a> <a id="2029" href="Categories.Category.Construction.Properties.EilenbergMoore.html#733" class="Bound">F</a><a id="2030" class="Symbol">)</a> <a id="2032" href="Categories.Functor.Equivalence.html#1376" class="Record Operator">≡F</a> <a id="2035" href="Categories.Adjoint.Construction.EilenbergMoore.html#849" class="Function">Free</a> <a id="2040" href="Categories.Category.Construction.Properties.EilenbergMoore.html#808" class="Function">T</a>
|
||
<a id="2044" href="Categories.Category.Construction.Properties.EilenbergMoore.html#1993" class="Function">Comparison∘F≡Free</a> <a id="2062" class="Symbol">=</a> <a id="2064" class="Keyword">record</a>
|
||
<a id="2075" class="Symbol">{</a> <a id="2077" href="Categories.Functor.Equivalence.html#1731" class="Field">eq₀</a> <a id="2081" class="Symbol">=</a> <a id="2083" class="Symbol">λ</a> <a id="2085" href="Categories.Category.Construction.Properties.EilenbergMoore.html#2085" class="Bound">X</a> <a id="2087" class="Symbol">→</a> <a id="2089" href="Agda.Builtin.Equality.html#190" class="InductiveConstructor">≡.refl</a>
|
||
<a id="2100" class="Symbol">;</a> <a id="2102" href="Categories.Functor.Equivalence.html#1760" class="Field">eq₁</a> <a id="2106" class="Symbol">=</a> <a id="2108" class="Symbol">λ</a> <a id="2110" class="Symbol">{</a><a id="2111" href="Categories.Category.Construction.Properties.EilenbergMoore.html#2111" class="Bound">A</a><a id="2112" class="Symbol">}</a> <a id="2114" class="Symbol">{</a><a id="2115" href="Categories.Category.Construction.Properties.EilenbergMoore.html#2115" class="Bound">B</a><a id="2116" class="Symbol">}</a> <a id="2118" href="Categories.Category.Construction.Properties.EilenbergMoore.html#2118" class="Bound">f</a> <a id="2120" class="Symbol">→</a> <a id="2122" href="Relation.Binary.Reasoning.Base.Single.html#1925" class="Function Operator">begin</a>
|
||
<a id="2134" href="Categories.Category.Construction.EilenbergMoore.html#664" class="Field">Module⇒.arr</a> <a id="2146" class="Symbol">(</a><a id="2147" href="Categories.Category.Construction.Properties.EilenbergMoore.html#851" class="Function">𝒞ᵀ</a> <a id="2150" href="Categories.Category.html#700" class="Function Operator">[</a> <a id="2152" class="Symbol">(</a><a id="2153" href="Categories.Morphism.HeterogeneousIdentity.html#1511" class="Function">hid</a> <a id="2157" href="Categories.Category.Construction.Properties.EilenbergMoore.html#851" class="Function">𝒞ᵀ</a> <a id="2160" href="Agda.Builtin.Equality.html#190" class="InductiveConstructor">≡.refl</a><a id="2166" class="Symbol">)</a> <a id="2168" href="Categories.Category.html#700" class="Function Operator">∘</a> <a id="2170" href="Categories.Functor.Core.html#455" class="Function">K.F₁</a> <a id="2175" class="Symbol">(</a><a id="2176" href="Categories.Functor.Core.html#455" class="Function">F.F₁</a> <a id="2181" href="Categories.Category.Construction.Properties.EilenbergMoore.html#2118" class="Bound">f</a><a id="2182" class="Symbol">)</a> <a id="2184" href="Categories.Category.html#700" class="Function Operator">]</a><a id="2185" class="Symbol">)</a> <a id="2187" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">≈⟨</a> <a id="2190" href="Categories.Morphism.HeterogeneousIdentity.html#1618" class="Function">hid-refl</a> <a id="2199" href="Categories.Category.Construction.Properties.EilenbergMoore.html#851" class="Function">𝒞ᵀ</a> <a id="2202" class="Symbol">{</a><a id="2203" class="Argument">A</a> <a id="2205" class="Symbol">=</a> <a id="2207" href="Categories.Functor.Core.html#432" class="Function">K.F₀</a> <a id="2212" class="Symbol">(</a><a id="2213" href="Categories.Functor.Core.html#432" class="Function">F.F₀</a> <a id="2218" href="Categories.Category.Construction.Properties.EilenbergMoore.html#2115" class="Bound">B</a><a id="2219" class="Symbol">)}</a> <a id="2222" href="Categories.Category.Core.html#2837" class="Function Operator">⟩∘⟨refl</a> <a id="2230" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">⟩</a>
|
||
<a id="2238" href="Categories.Category.Construction.EilenbergMoore.html#664" class="Field">Module⇒.arr</a> <a id="2250" class="Symbol">(</a><a id="2251" href="Categories.Category.Construction.Properties.EilenbergMoore.html#851" class="Function">𝒞ᵀ</a> <a id="2254" href="Categories.Category.html#700" class="Function Operator">[</a> <a id="2256" href="Categories.Category.Core.html#630" class="Function">𝒞ᵀ.id</a> <a id="2262" href="Categories.Category.html#700" class="Function Operator">∘</a> <a id="2264" href="Categories.Functor.Core.html#455" class="Function">K.F₁</a> <a id="2269" class="Symbol">(</a><a id="2270" href="Categories.Functor.Core.html#455" class="Function">F.F₁</a> <a id="2275" href="Categories.Category.Construction.Properties.EilenbergMoore.html#2118" class="Bound">f</a><a id="2276" class="Symbol">)</a> <a id="2278" href="Categories.Category.html#700" class="Function Operator">]</a><a id="2279" class="Symbol">)</a> <a id="2291" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">≈⟨</a> <a id="2294" href="Categories.Category.Core.html#1096" class="Function">𝒞.identityˡ</a> <a id="2306" class="Symbol">{</a><a id="2307" class="Argument">f</a> <a id="2309" class="Symbol">=</a> <a id="2311" href="Categories.Category.Construction.EilenbergMoore.html#664" class="Field">Module⇒.arr</a> <a id="2323" class="Symbol">(</a><a id="2324" href="Categories.Functor.Core.html#455" class="Function">K.F₁</a> <a id="2329" class="Symbol">(</a><a id="2330" href="Categories.Functor.Core.html#455" class="Function">F.F₁</a> <a id="2335" href="Categories.Category.Construction.Properties.EilenbergMoore.html#2118" class="Bound">f</a><a id="2336" class="Symbol">))}</a> <a id="2340" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">⟩</a>
|
||
<a id="2348" href="Categories.Category.Construction.EilenbergMoore.html#664" class="Field">Module⇒.arr</a> <a id="2360" class="Symbol">(</a><a id="2361" href="Categories.Functor.Core.html#455" class="Function">K.F₁</a> <a id="2366" class="Symbol">(</a><a id="2367" href="Categories.Functor.Core.html#455" class="Function">F.F₁</a> <a id="2372" href="Categories.Category.Construction.Properties.EilenbergMoore.html#2118" class="Bound">f</a><a id="2373" class="Symbol">))</a> <a id="2401" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">≈⟨</a> <a id="2404" href="Relation.Binary.Structures.html#1577" class="Function">𝒞.Equiv.refl</a> <a id="2417" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">⟩</a>
|
||
<a id="2425" href="Categories.Category.Construction.EilenbergMoore.html#664" class="Field">Module⇒.arr</a> <a id="2437" class="Symbol">(</a><a id="2438" href="Categories.Functor.Core.html#455" class="Function">Fᵀ.F₁</a> <a id="2444" href="Categories.Category.Construction.Properties.EilenbergMoore.html#2118" class="Bound">f</a><a id="2445" class="Symbol">)</a> <a id="2479" href="Relation.Binary.Reasoning.Setoid.html#1162" class="Function">≈˘⟨</a> <a id="2483" href="Categories.Category.Core.html#1145" class="Function">𝒞ᵀ.identityʳ</a> <a id="2496" class="Symbol">{</a><a id="2497" class="Argument">f</a> <a id="2499" class="Symbol">=</a> <a id="2501" href="Categories.Functor.Core.html#455" class="Function">Fᵀ.F₁</a> <a id="2507" href="Categories.Category.Construction.Properties.EilenbergMoore.html#2118" class="Bound">f</a><a id="2508" class="Symbol">}</a> <a id="2510" href="Relation.Binary.Reasoning.Setoid.html#1162" class="Function">⟩</a>
|
||
<a id="2518" href="Categories.Category.Construction.EilenbergMoore.html#664" class="Field">Module⇒.arr</a> <a id="2530" class="Symbol">(</a><a id="2531" href="Categories.Category.Construction.Properties.EilenbergMoore.html#851" class="Function">𝒞ᵀ</a> <a id="2534" href="Categories.Category.html#700" class="Function Operator">[</a> <a id="2536" href="Categories.Functor.Core.html#455" class="Function">Fᵀ.F₁</a> <a id="2542" href="Categories.Category.Construction.Properties.EilenbergMoore.html#2118" class="Bound">f</a> <a id="2544" href="Categories.Category.html#700" class="Function Operator">∘</a> <a id="2546" href="Categories.Category.Core.html#630" class="Function">𝒞ᵀ.id</a> <a id="2552" href="Categories.Category.html#700" class="Function Operator">]</a><a id="2553" class="Symbol">)</a> <a id="2571" href="Relation.Binary.Reasoning.Setoid.html#1162" class="Function">≈˘⟨</a> <a id="2575" href="Categories.Category.Core.html#2734" class="Function Operator">refl⟩∘⟨</a> <a id="2583" href="Categories.Morphism.HeterogeneousIdentity.html#1618" class="Function">hid-refl</a> <a id="2592" href="Categories.Category.Construction.Properties.EilenbergMoore.html#851" class="Function">𝒞ᵀ</a> <a id="2595" class="Symbol">{</a><a id="2596" class="Argument">A</a> <a id="2598" class="Symbol">=</a> <a id="2600" href="Categories.Functor.Core.html#432" class="Function">Fᵀ.F₀</a> <a id="2606" href="Categories.Category.Construction.Properties.EilenbergMoore.html#2111" class="Bound">A</a><a id="2607" class="Symbol">}</a> <a id="2609" href="Relation.Binary.Reasoning.Setoid.html#1162" class="Function">⟩</a>
|
||
<a id="2617" href="Categories.Category.Construction.EilenbergMoore.html#664" class="Field">Module⇒.arr</a> <a id="2629" class="Symbol">(</a><a id="2630" href="Categories.Category.Construction.Properties.EilenbergMoore.html#851" class="Function">𝒞ᵀ</a> <a id="2633" href="Categories.Category.html#700" class="Function Operator">[</a> <a id="2635" href="Categories.Functor.Core.html#455" class="Function">Fᵀ.F₁</a> <a id="2641" href="Categories.Category.Construction.Properties.EilenbergMoore.html#2118" class="Bound">f</a> <a id="2643" href="Categories.Category.html#700" class="Function Operator">∘</a> <a id="2645" class="Symbol">(</a><a id="2646" href="Categories.Morphism.HeterogeneousIdentity.html#1511" class="Function">hid</a> <a id="2650" href="Categories.Category.Construction.Properties.EilenbergMoore.html#851" class="Function">𝒞ᵀ</a> <a id="2653" href="Agda.Builtin.Equality.html#190" class="InductiveConstructor">≡.refl</a><a id="2659" class="Symbol">)</a> <a id="2661" href="Categories.Category.html#700" class="Function Operator">]</a><a id="2662" class="Symbol">)</a> <a id="2670" href="Relation.Binary.Reasoning.Base.Single.html#2564" class="Function Operator">∎</a>
|
||
<a id="2676" class="Symbol">}</a>
|
||
|
||
<a id="2681" href="Categories.Category.Construction.Properties.EilenbergMoore.html#2681" class="Function">Forgetful∘ComparisonF≡G</a> <a id="2705" class="Symbol">:</a> <a id="2707" class="Symbol">(</a><a id="2708" href="Categories.Adjoint.Construction.EilenbergMoore.html#652" class="Function">Forgetful</a> <a id="2718" href="Categories.Category.Construction.Properties.EilenbergMoore.html#808" class="Function">T</a> <a id="2720" href="Categories.Functor.html#747" class="Function Operator">∘F</a> <a id="2723" href="Categories.Category.Construction.Properties.EilenbergMoore.html#1167" class="Function">ComparisonF</a><a id="2734" class="Symbol">)</a> <a id="2736" href="Categories.Functor.Equivalence.html#1376" class="Record Operator">≡F</a> <a id="2739" href="Categories.Category.Construction.Properties.EilenbergMoore.html#751" class="Bound">G</a>
|
||
<a id="2743" href="Categories.Category.Construction.Properties.EilenbergMoore.html#2681" class="Function">Forgetful∘ComparisonF≡G</a> <a id="2767" class="Symbol">=</a> <a id="2769" class="Keyword">record</a>
|
||
<a id="2780" class="Symbol">{</a> <a id="2782" href="Categories.Functor.Equivalence.html#1731" class="Field">eq₀</a> <a id="2786" class="Symbol">=</a> <a id="2788" class="Symbol">λ</a> <a id="2790" href="Categories.Category.Construction.Properties.EilenbergMoore.html#2790" class="Bound">X</a> <a id="2792" class="Symbol">→</a> <a id="2794" href="Agda.Builtin.Equality.html#190" class="InductiveConstructor">≡.refl</a>
|
||
<a id="2805" class="Symbol">;</a> <a id="2807" href="Categories.Functor.Equivalence.html#1760" class="Field">eq₁</a> <a id="2811" class="Symbol">=</a> <a id="2813" class="Symbol">λ</a> <a id="2815" href="Categories.Category.Construction.Properties.EilenbergMoore.html#2815" class="Bound">f</a> <a id="2817" class="Symbol">→</a> <a id="2819" href="Relation.Binary.Reasoning.Base.Single.html#1925" class="Function Operator">begin</a>
|
||
<a id="2831" href="Categories.Category.Construction.Properties.EilenbergMoore.html#745" class="Bound">𝒞</a> <a id="2833" href="Categories.Category.html#700" class="Function Operator">[</a> <a id="2835" class="Symbol">(</a><a id="2836" href="Categories.Morphism.HeterogeneousIdentity.html#1511" class="Function">hid</a> <a id="2840" href="Categories.Category.Construction.Properties.EilenbergMoore.html#745" class="Bound">𝒞</a> <a id="2842" href="Agda.Builtin.Equality.html#190" class="InductiveConstructor">≡.refl</a><a id="2848" class="Symbol">)</a> <a id="2850" href="Categories.Category.html#700" class="Function Operator">∘</a> <a id="2852" class="Symbol">(</a><a id="2853" href="Categories.Functor.Core.html#455" class="Function">Gᵀ.F₁</a> <a id="2859" class="Symbol">(</a><a id="2860" href="Categories.Functor.Core.html#455" class="Function">K.F₁</a> <a id="2865" href="Categories.Category.Construction.Properties.EilenbergMoore.html#2815" class="Bound">f</a><a id="2866" class="Symbol">))</a> <a id="2869" href="Categories.Category.html#700" class="Function Operator">]</a> <a id="2871" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">≈⟨</a> <a id="2874" href="Categories.Morphism.HeterogeneousIdentity.html#1618" class="Function">hid-refl</a> <a id="2883" href="Categories.Category.Construction.Properties.EilenbergMoore.html#745" class="Bound">𝒞</a> <a id="2885" href="Categories.Category.Core.html#2837" class="Function Operator">⟩∘⟨refl</a> <a id="2893" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">⟩</a>
|
||
<a id="2901" href="Categories.Category.Construction.Properties.EilenbergMoore.html#745" class="Bound">𝒞</a> <a id="2903" href="Categories.Category.html#700" class="Function Operator">[</a> <a id="2905" href="Categories.Category.Core.html#630" class="Function">𝒞.id</a> <a id="2910" href="Categories.Category.html#700" class="Function Operator">∘</a> <a id="2912" class="Symbol">(</a><a id="2913" href="Categories.Functor.Core.html#455" class="Function">Gᵀ.F₁</a> <a id="2919" class="Symbol">(</a><a id="2920" href="Categories.Functor.Core.html#455" class="Function">K.F₁</a> <a id="2925" href="Categories.Category.Construction.Properties.EilenbergMoore.html#2815" class="Bound">f</a><a id="2926" class="Symbol">))</a> <a id="2929" href="Categories.Category.html#700" class="Function Operator">]</a> <a id="2941" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">≈⟨</a> <a id="2944" href="Categories.Category.Core.html#1096" class="Function">𝒞.identityˡ</a> <a id="2956" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">⟩</a>
|
||
<a id="2964" class="Symbol">(</a><a id="2965" href="Categories.Functor.Core.html#455" class="Function">Gᵀ.F₁</a> <a id="2971" class="Symbol">(</a><a id="2972" href="Categories.Functor.Core.html#455" class="Function">K.F₁</a> <a id="2977" href="Categories.Category.Construction.Properties.EilenbergMoore.html#2815" class="Bound">f</a><a id="2978" class="Symbol">))</a> <a id="3005" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">≈⟨</a> <a id="3008" href="Relation.Binary.Structures.html#1577" class="Function">𝒞.Equiv.refl</a> <a id="3021" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">⟩</a>
|
||
<a id="3029" href="Categories.Functor.Core.html#455" class="Function">G.F₁</a> <a id="3034" href="Categories.Category.Construction.Properties.EilenbergMoore.html#2815" class="Bound">f</a> <a id="3070" href="Relation.Binary.Reasoning.Setoid.html#1162" class="Function">≈˘⟨</a> <a id="3074" href="Categories.Category.Core.html#1145" class="Function">𝒞.identityʳ</a> <a id="3086" href="Relation.Binary.Reasoning.Setoid.html#1162" class="Function">⟩</a>
|
||
<a id="3094" href="Categories.Category.Construction.Properties.EilenbergMoore.html#745" class="Bound">𝒞</a> <a id="3096" href="Categories.Category.html#700" class="Function Operator">[</a> <a id="3098" href="Categories.Functor.Core.html#455" class="Function">G.F₁</a> <a id="3103" href="Categories.Category.Construction.Properties.EilenbergMoore.html#2815" class="Bound">f</a> <a id="3105" href="Categories.Category.html#700" class="Function Operator">∘</a> <a id="3107" href="Categories.Category.Core.html#630" class="Function">𝒞.id</a> <a id="3112" href="Categories.Category.html#700" class="Function Operator">]</a> <a id="3134" href="Relation.Binary.Reasoning.Setoid.html#1162" class="Function">≈˘⟨</a> <a id="3138" href="Categories.Category.Core.html#2734" class="Function Operator">refl⟩∘⟨</a> <a id="3146" href="Categories.Morphism.HeterogeneousIdentity.html#1618" class="Function">hid-refl</a> <a id="3155" href="Categories.Category.Construction.Properties.EilenbergMoore.html#745" class="Bound">𝒞</a> <a id="3157" href="Relation.Binary.Reasoning.Setoid.html#1162" class="Function">⟩</a>
|
||
<a id="3165" href="Categories.Category.Construction.Properties.EilenbergMoore.html#745" class="Bound">𝒞</a> <a id="3167" href="Categories.Category.html#700" class="Function Operator">[</a> <a id="3169" href="Categories.Functor.Core.html#455" class="Function">G.F₁</a> <a id="3174" href="Categories.Category.Construction.Properties.EilenbergMoore.html#2815" class="Bound">f</a> <a id="3176" href="Categories.Category.html#700" class="Function Operator">∘</a> <a id="3178" class="Symbol">(</a><a id="3179" href="Categories.Morphism.HeterogeneousIdentity.html#1511" class="Function">hid</a> <a id="3183" href="Categories.Category.Construction.Properties.EilenbergMoore.html#745" class="Bound">𝒞</a> <a id="3185" href="Agda.Builtin.Equality.html#190" class="InductiveConstructor">≡.refl</a><a id="3191" class="Symbol">)</a> <a id="3193" href="Categories.Category.html#700" class="Function Operator">]</a> <a id="3205" href="Relation.Binary.Reasoning.Base.Single.html#2564" class="Function Operator">∎</a>
|
||
<a id="3211" class="Symbol">}</a>
|
||
</pre></body></html> |