mirror of
https://git8.cs.fau.de/theses/bsc-leon-vatthauer.git
synced 2024-05-31 07:28:34 +02:00
83 lines
No EOL
80 KiB
Markdown
83 lines
No EOL
80 KiB
Markdown
<!--
|
||
<pre class="Agda"><a id="14" class="Keyword">open</a> <a id="19" class="Keyword">import</a> <a id="26" href="Level.html" class="Module">Level</a>
|
||
<a id="32" class="Keyword">open</a> <a id="37" class="Keyword">import</a> <a id="44" href="Category.Ambient.html" class="Module">Category.Ambient</a> <a id="61" class="Keyword">using</a> <a id="67" class="Symbol">(</a><a id="68" href="Category.Ambient.html#1681" class="Record">Ambient</a><a id="75" class="Symbol">)</a>
|
||
<a id="77" class="Keyword">open</a> <a id="82" class="Keyword">import</a> <a id="89" href="Data.Product.html" class="Module">Data.Product</a> <a id="102" class="Keyword">using</a> <a id="108" class="Symbol">(</a><a id="109" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">_,_</a><a id="112" class="Symbol">)</a>
|
||
<a id="114" class="Keyword">open</a> <a id="119" class="Keyword">import</a> <a id="126" href="Categories.FreeObjects.Free.html" class="Module">Categories.FreeObjects.Free</a>
|
||
<a id="154" class="Keyword">open</a> <a id="159" class="Keyword">import</a> <a id="166" href="Categories.Category.Construction.Kleisli.html" class="Module">Categories.Category.Construction.Kleisli</a>
|
||
<a id="207" class="Keyword">open</a> <a id="212" class="Keyword">import</a> <a id="219" href="Categories.Category.Restriction.html" class="Module">Categories.Category.Restriction</a>
|
||
<a id="251" class="Keyword">import</a> <a id="258" href="Monad.Instance.K.html" class="Module">Monad.Instance.K</a> <a id="275" class="Symbol">as</a> <a id="278" class="Module">MIK</a>
|
||
<a id="282" class="Keyword">open</a> <a id="287" class="Keyword">import</a> <a id="294" href="Categories.Morphism.Properties.html" class="Module">Categories.Morphism.Properties</a>
|
||
|
||
</pre>-->
|
||
|
||
<pre class="Agda"><a id="343" class="Keyword">module</a> <a id="350" href="Monad.Instance.K.EquationalLifting.html" class="Module">Monad.Instance.K.EquationalLifting</a> <a id="385" class="Symbol">{</a><a id="386" href="Monad.Instance.K.EquationalLifting.html#386" class="Bound">o</a> <a id="388" href="Monad.Instance.K.EquationalLifting.html#388" class="Bound">ℓ</a> <a id="390" href="Monad.Instance.K.EquationalLifting.html#390" class="Bound">e</a><a id="391" class="Symbol">}</a> <a id="393" class="Symbol">(</a><a id="394" href="Monad.Instance.K.EquationalLifting.html#394" class="Bound">ambient</a> <a id="402" class="Symbol">:</a> <a id="404" href="Category.Ambient.html#1681" class="Record">Ambient</a> <a id="412" href="Monad.Instance.K.EquationalLifting.html#386" class="Bound">o</a> <a id="414" href="Monad.Instance.K.EquationalLifting.html#388" class="Bound">ℓ</a> <a id="416" href="Monad.Instance.K.EquationalLifting.html#390" class="Bound">e</a><a id="417" class="Symbol">)</a> <a id="419" class="Symbol">(</a><a id="420" href="Monad.Instance.K.EquationalLifting.html#420" class="Bound">MK</a> <a id="423" class="Symbol">:</a> <a id="425" href="Monad.Instance.K.html#1123" class="Record">MIK.MonadK</a> <a id="436" href="Monad.Instance.K.EquationalLifting.html#394" class="Bound">ambient</a><a id="443" class="Symbol">)</a> <a id="445" class="Keyword">where</a>
|
||
<a id="451" class="Keyword">open</a> <a id="456" href="Category.Ambient.html#1681" class="Module">Ambient</a> <a id="464" href="Monad.Instance.K.EquationalLifting.html#394" class="Bound">ambient</a>
|
||
<a id="472" class="Keyword">open</a> <a id="477" href="Monad.Instance.K.html" class="Module">MIK</a> <a id="481" href="Monad.Instance.K.EquationalLifting.html#394" class="Bound">ambient</a>
|
||
<a id="489" class="Keyword">open</a> <a id="494" href="Monad.Instance.K.html#1123" class="Module">MonadK</a> <a id="501" href="Monad.Instance.K.EquationalLifting.html#420" class="Bound">MK</a>
|
||
<a id="504" class="Keyword">open</a> <a id="509" class="Keyword">import</a> <a id="516" href="Monad.Instance.K.Strong.html" class="Module">Monad.Instance.K.Strong</a> <a id="540" href="Monad.Instance.K.EquationalLifting.html#394" class="Bound">ambient</a> <a id="548" href="Monad.Instance.K.EquationalLifting.html#420" class="Bound">MK</a>
|
||
<a id="551" class="Keyword">open</a> <a id="556" class="Keyword">import</a> <a id="563" href="Category.Construction.ElgotAlgebras.html" class="Module">Category.Construction.ElgotAlgebras</a> <a id="599" href="Categories.Category.Extensive.html#734" class="Function">cocartesian</a>
|
||
<a id="611" class="Keyword">open</a> <a id="616" class="Keyword">import</a> <a id="623" href="Algebra.Elgot.html" class="Module">Algebra.Elgot</a> <a id="637" href="Categories.Category.Extensive.html#734" class="Function">cocartesian</a>
|
||
<a id="649" class="Keyword">open</a> <a id="654" class="Keyword">import</a> <a id="661" href="Algebra.Elgot.Stable.html" class="Module">Algebra.Elgot.Stable</a> <a id="682" href="Category.Ambient.html#2762" class="Function">distributive</a> <a id="695" class="Keyword">using</a> <a id="701" class="Symbol">(</a><a id="702" href="Algebra.Elgot.Stable.html#2437" class="Record">IsStableFreeElgotAlgebra</a><a id="726" class="Symbol">)</a>
|
||
|
||
<a id="729" class="Keyword">open</a> <a id="734" href="Categories.Category.Core.html#2462" class="Module">HomReasoning</a>
|
||
<a id="747" class="Keyword">open</a> <a id="752" href="Categories.Category.Core.html#1530" class="Module">Equiv</a>
|
||
<a id="758" class="Keyword">open</a> <a id="763" href="Category.Ambient.html#9069" class="Module">M</a> <a id="765" href="Category.Ambient.html#1757" class="Function">C</a>
|
||
<a id="767" class="Keyword">open</a> <a id="772" href="Category.Ambient.html#9087" class="Module">MR</a> <a id="775" href="Category.Ambient.html#1757" class="Function">C</a>
|
||
<a id="777" class="Keyword">open</a> <a id="782" href="Monad.Instance.K.html#1775" class="Module">kleisliK</a> <a id="791" class="Keyword">using</a> <a id="797" class="Symbol">(</a><a id="798" href="Categories.Monad.Relative.html#895" class="Function">extend</a><a id="804" class="Symbol">)</a>
|
||
<a id="806" class="Keyword">open</a> <a id="811" href="Monad.Instance.K.html#1672" class="Module">monadK</a> <a id="818" class="Keyword">using</a> <a id="824" class="Symbol">(</a><a id="825" href="Categories.Monad.html#583" class="Function">μ</a><a id="826" class="Symbol">)</a>
|
||
<a id="828" class="Keyword">open</a> <a id="833" href="Categories.FreeObjects.Free.html#485" class="Module">FreeObject</a> <a id="844" class="Keyword">using</a> <a id="850" class="Symbol">(</a><a id="851" href="Categories.FreeObjects.Free.html#1017" class="Field">*-uniq</a><a id="857" class="Symbol">)</a>
|
||
<a id="859" class="Keyword">open</a> <a id="864" href="Algebra.Elgot.html#15964" class="Module">Elgot-Algebra</a> <a id="878" class="Keyword">using</a> <a id="884" class="Symbol">(</a><a id="885" href="Algebra.Elgot.html#2086" class="Function">#-Uniformity</a><a id="897" class="Symbol">;</a> <a id="899" href="Algebra.Elgot.html#2011" class="Function">#-Fixpoint</a><a id="909" class="Symbol">;</a> <a id="911" href="Algebra.Elgot.html#2331" class="Function">#-resp-≈</a><a id="919" class="Symbol">)</a>
|
||
<a id="921" class="Keyword">open</a> <a id="926" href="Monad.Instance.K.Strong.html#22135" class="Module">strongK</a> <a id="934" class="Keyword">using</a> <a id="940" class="Symbol">(</a><a id="941" href="Categories.Monad.Strong.html#1060" class="Function">strengthen</a><a id="951" class="Symbol">)</a>
|
||
|
||
<a id="954" class="Comment">-- some helper definitions to make our life easier</a>
|
||
<a id="1005" class="Keyword">private</a>
|
||
<a id="η"></a><a id="1015" href="Monad.Instance.K.EquationalLifting.html#1015" class="Function">η</a> <a id="1017" class="Symbol">=</a> <a id="1019" class="Symbol">λ</a> <a id="1021" href="Monad.Instance.K.EquationalLifting.html#1021" class="Bound">Z</a> <a id="1023" class="Symbol">→</a> <a id="1025" href="Categories.FreeObjects.Free.html#854" class="Field">FreeObject.η</a> <a id="1038" class="Symbol">(</a><a id="1039" href="Monad.Instance.K.html#1182" class="Field">freealgebras</a> <a id="1052" href="Monad.Instance.K.EquationalLifting.html#1021" class="Bound">Z</a><a id="1053" class="Symbol">)</a>
|
||
<a id="_♯"></a><a id="1057" href="Monad.Instance.K.EquationalLifting.html#1057" class="Function Operator">_♯</a> <a id="1060" class="Symbol">=</a> <a id="1062" class="Symbol">λ</a> <a id="1064" class="Symbol">{</a><a id="1065" href="Monad.Instance.K.EquationalLifting.html#1065" class="Bound">A</a> <a id="1067" href="Monad.Instance.K.EquationalLifting.html#1067" class="Bound">X</a> <a id="1069" href="Monad.Instance.K.EquationalLifting.html#1069" class="Bound">Y</a><a id="1070" class="Symbol">}</a> <a id="1072" href="Monad.Instance.K.EquationalLifting.html#1072" class="Bound">f</a> <a id="1074" class="Symbol">→</a> <a id="1076" href="Algebra.Elgot.Stable.html#2658" class="Field Operator">IsStableFreeElgotAlgebra.[_,_]♯</a> <a id="1108" class="Symbol">{</a><a id="1109" class="Argument">Y</a> <a id="1111" class="Symbol">=</a> <a id="1113" href="Monad.Instance.K.EquationalLifting.html#1067" class="Bound">X</a><a id="1114" class="Symbol">}</a> <a id="1116" class="Symbol">(</a><a id="1117" href="Monad.Instance.K.html#1228" class="Field">stable</a> <a id="1124" href="Monad.Instance.K.EquationalLifting.html#1067" class="Bound">X</a><a id="1125" class="Symbol">)</a> <a id="1127" class="Symbol">{</a><a id="1128" class="Argument">X</a> <a id="1130" class="Symbol">=</a> <a id="1132" href="Monad.Instance.K.EquationalLifting.html#1065" class="Bound">A</a><a id="1133" class="Symbol">}</a> <a id="1135" class="Symbol">(</a><a id="1136" href="Monad.Instance.K.html#1333" class="Function">algebras</a> <a id="1145" href="Monad.Instance.K.EquationalLifting.html#1069" class="Bound">Y</a><a id="1146" class="Symbol">)</a> <a id="1148" href="Monad.Instance.K.EquationalLifting.html#1072" class="Bound">f</a>
|
||
<a id="_#"></a><a id="1152" href="Monad.Instance.K.EquationalLifting.html#1152" class="Function Operator">_#</a> <a id="1155" class="Symbol">=</a> <a id="1157" class="Symbol">λ</a> <a id="1159" class="Symbol">{</a><a id="1160" href="Monad.Instance.K.EquationalLifting.html#1160" class="Bound">A</a><a id="1161" class="Symbol">}</a> <a id="1163" class="Symbol">{</a><a id="1164" href="Monad.Instance.K.EquationalLifting.html#1164" class="Bound">X</a><a id="1165" class="Symbol">}</a> <a id="1167" href="Monad.Instance.K.EquationalLifting.html#1167" class="Bound">f</a> <a id="1169" class="Symbol">→</a> <a id="1171" href="Algebra.Elgot.html#1938" class="Function Operator">Elgot-Algebra._#</a> <a id="1188" class="Symbol">(</a><a id="1189" href="Monad.Instance.K.html#1333" class="Function">algebras</a> <a id="1198" href="Monad.Instance.K.EquationalLifting.html#1160" class="Bound">A</a><a id="1199" class="Symbol">)</a> <a id="1201" class="Symbol">{</a><a id="1202" class="Argument">X</a> <a id="1204" class="Symbol">=</a> <a id="1206" href="Monad.Instance.K.EquationalLifting.html#1164" class="Bound">X</a><a id="1207" class="Symbol">}</a> <a id="1209" href="Monad.Instance.K.EquationalLifting.html#1167" class="Bound">f</a>
|
||
</pre>
|
||
# **K** is an equational lifting monad
|
||
|
||
<pre class="Agda"><a id="equationalLifting"></a><a id="1264" href="Monad.Instance.K.EquationalLifting.html#1264" class="Function">equationalLifting</a> <a id="1282" class="Symbol">:</a> <a id="1284" class="Symbol">∀</a> <a id="1286" class="Symbol">{</a><a id="1287" href="Monad.Instance.K.EquationalLifting.html#1287" class="Bound">X</a><a id="1288" class="Symbol">}</a> <a id="1290" class="Symbol">→</a> <a id="1292" href="Monad.Instance.K.Strong.html#3259" class="Function">τ</a> <a id="1294" class="Symbol">(</a><a id="1295" href="Categories.Functor.Core.html#797" class="Function">K.₀</a> <a id="1299" href="Monad.Instance.K.EquationalLifting.html#1287" class="Bound">X</a> <a id="1301" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="1303" href="Monad.Instance.K.EquationalLifting.html#1287" class="Bound">X</a><a id="1304" class="Symbol">)</a> <a id="1306" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="1308" href="Categories.Category.BinaryProducts.html#6931" class="Function">Δ</a> <a id="1310" class="Symbol">{</a><a id="1311" href="Categories.Functor.Core.html#797" class="Function">K.₀</a> <a id="1315" href="Monad.Instance.K.EquationalLifting.html#1287" class="Bound">X</a><a id="1316" class="Symbol">}</a> <a id="1318" href="Categories.Category.Core.html#595" class="Function Operator">≈</a> <a id="1320" href="Categories.Functor.Core.html#806" class="Function">K.₁</a> <a id="1324" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟨</a> <a id="1326" href="Monad.Instance.K.EquationalLifting.html#1015" class="Function">η</a> <a id="1328" href="Monad.Instance.K.EquationalLifting.html#1287" class="Bound">X</a> <a id="1330" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">,</a> <a id="1332" href="Category.Ambient.html#2115" class="Function">idC</a> <a id="1336" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟩</a>
|
||
<a id="1338" href="Monad.Instance.K.EquationalLifting.html#1264" class="Function">equationalLifting</a> <a id="1356" class="Symbol">{</a><a id="1357" href="Monad.Instance.K.EquationalLifting.html#1357" class="Bound">X</a><a id="1358" class="Symbol">}</a> <a id="1360" class="Symbol">=</a> <a id="1362" href="Categories.FreeObjects.Free.html#1017" class="Field">*-uniq</a> <a id="1369" class="Symbol">(</a><a id="1370" href="Monad.Instance.K.html#1182" class="Field">freealgebras</a> <a id="1383" class="Symbol">_)</a> <a id="1386" class="Symbol">(</a><a id="1387" href="Monad.Instance.K.EquationalLifting.html#1015" class="Function">η</a> <a id="1389" class="Symbol">_</a> <a id="1391" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="1393" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟨</a> <a id="1395" href="Monad.Instance.K.EquationalLifting.html#1015" class="Function">η</a> <a id="1397" href="Monad.Instance.K.EquationalLifting.html#1357" class="Bound">X</a> <a id="1399" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">,</a> <a id="1401" href="Category.Ambient.html#2115" class="Function">idC</a> <a id="1405" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟩</a><a id="1406" class="Symbol">)</a> <a id="1408" class="Symbol">(</a><a id="1409" class="Keyword">record</a> <a id="1416" class="Symbol">{</a> <a id="1418" href="Category.Construction.ElgotAlgebras.html#794" class="Field">h</a> <a id="1420" class="Symbol">=</a> <a id="1422" href="Monad.Instance.K.Strong.html#3259" class="Function">τ</a> <a id="1424" class="Symbol">(</a><a id="1425" href="Categories.Functor.Core.html#797" class="Function">K.₀</a> <a id="1429" href="Monad.Instance.K.EquationalLifting.html#1357" class="Bound">X</a> <a id="1431" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="1433" href="Monad.Instance.K.EquationalLifting.html#1357" class="Bound">X</a><a id="1434" class="Symbol">)</a> <a id="1436" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="1438" href="Categories.Category.BinaryProducts.html#6931" class="Function">Δ</a> <a id="1440" class="Symbol">;</a> <a id="1442" href="Category.Construction.ElgotAlgebras.html#812" class="Field">preserves</a> <a id="1452" class="Symbol">=</a> <a id="1454" href="Monad.Instance.K.EquationalLifting.html#1488" class="Function">preserves'</a> <a id="1465" class="Symbol">})</a> <a id="1468" href="Monad.Instance.K.EquationalLifting.html#4090" class="Function">commute</a>
|
||
<a id="1478" class="Keyword">where</a>
|
||
<a id="1488" href="Monad.Instance.K.EquationalLifting.html#1488" class="Function">preserves'</a> <a id="1499" class="Symbol">:</a> <a id="1501" class="Symbol">∀</a> <a id="1503" class="Symbol">{</a><a id="1504" href="Monad.Instance.K.EquationalLifting.html#1504" class="Bound">Z</a><a id="1505" class="Symbol">}</a> <a id="1507" class="Symbol">{</a><a id="1508" href="Monad.Instance.K.EquationalLifting.html#1508" class="Bound">f</a> <a id="1510" class="Symbol">:</a> <a id="1512" href="Monad.Instance.K.EquationalLifting.html#1504" class="Bound">Z</a> <a id="1514" href="Categories.Category.Core.html#575" class="Function Operator">⇒</a> <a id="1516" href="Categories.Functor.Core.html#797" class="Function">K.₀</a> <a id="1520" href="Monad.Instance.K.EquationalLifting.html#1357" class="Bound">X</a> <a id="1522" href="Categories.Category.Cocartesian.html#1549" class="Function Operator">+</a> <a id="1524" href="Monad.Instance.K.EquationalLifting.html#1504" class="Bound">Z</a><a id="1525" class="Symbol">}</a> <a id="1527" class="Symbol">→</a> <a id="1529" class="Symbol">(</a><a id="1530" href="Monad.Instance.K.Strong.html#3259" class="Function">τ</a> <a id="1532" class="Symbol">(</a><a id="1533" href="Categories.Functor.Core.html#797" class="Function">K.₀</a> <a id="1537" href="Monad.Instance.K.EquationalLifting.html#1357" class="Bound">X</a> <a id="1539" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="1541" href="Monad.Instance.K.EquationalLifting.html#1357" class="Bound">X</a><a id="1542" class="Symbol">)</a> <a id="1544" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="1546" href="Categories.Category.BinaryProducts.html#6931" class="Function">Δ</a><a id="1547" class="Symbol">)</a> <a id="1549" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="1551" href="Monad.Instance.K.EquationalLifting.html#1508" class="Bound">f</a> <a id="1553" href="Monad.Instance.K.EquationalLifting.html#1152" class="Function Operator">#</a> <a id="1555" href="Categories.Category.Core.html#595" class="Function Operator">≈</a> <a id="1557" class="Symbol">((</a><a id="1559" href="Monad.Instance.K.Strong.html#3259" class="Function">τ</a> <a id="1561" class="Symbol">(</a><a id="1562" href="Categories.Functor.Core.html#797" class="Function">K.₀</a> <a id="1566" href="Monad.Instance.K.EquationalLifting.html#1357" class="Bound">X</a> <a id="1568" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="1570" href="Monad.Instance.K.EquationalLifting.html#1357" class="Bound">X</a><a id="1571" class="Symbol">)</a> <a id="1573" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="1575" href="Categories.Category.BinaryProducts.html#6931" class="Function">Δ</a> <a id="1577" href="Categories.Category.Cocartesian.html#2133" class="Function Operator">+₁</a> <a id="1580" href="Category.Ambient.html#2115" class="Function">idC</a><a id="1583" class="Symbol">)</a> <a id="1585" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="1587" href="Monad.Instance.K.EquationalLifting.html#1508" class="Bound">f</a><a id="1588" class="Symbol">)</a> <a id="1590" href="Monad.Instance.K.EquationalLifting.html#1152" class="Function Operator">#</a>
|
||
<a id="1596" href="Monad.Instance.K.EquationalLifting.html#1488" class="Function">preserves'</a> <a id="1607" class="Symbol">{</a><a id="1608" href="Monad.Instance.K.EquationalLifting.html#1608" class="Bound">Z</a><a id="1609" class="Symbol">}</a> <a id="1611" class="Symbol">{</a><a id="1612" href="Monad.Instance.K.EquationalLifting.html#1612" class="Bound">f</a><a id="1613" class="Symbol">}</a> <a id="1615" class="Symbol">=</a> <a id="1617" href="Relation.Binary.Reasoning.Syntax.html#1510" class="Function Operator">begin</a>
|
||
<a id="1630" class="Symbol">(</a><a id="1631" href="Monad.Instance.K.Strong.html#3259" class="Function">τ</a> <a id="1633" class="Symbol">(</a><a id="1634" href="Categories.Functor.Core.html#797" class="Function">K.₀</a> <a id="1638" href="Monad.Instance.K.EquationalLifting.html#1357" class="Bound">X</a> <a id="1640" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="1642" href="Monad.Instance.K.EquationalLifting.html#1357" class="Bound">X</a><a id="1643" class="Symbol">)</a> <a id="1645" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="1647" href="Categories.Category.BinaryProducts.html#6931" class="Function">Δ</a><a id="1648" class="Symbol">)</a> <a id="1650" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="1652" href="Monad.Instance.K.EquationalLifting.html#1612" class="Bound">f</a> <a id="1654" href="Monad.Instance.K.EquationalLifting.html#1152" class="Function Operator">#</a> <a id="1656" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">≈⟨</a> <a id="1659" href="Categories.Morphism.Reasoning.Core.html#1914" class="Function">pullʳ</a> <a id="1665" href="Categories.Category.BinaryProducts.html#6982" class="Function">Δ∘</a> <a id="1668" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">⟩</a>
|
||
<a id="1677" href="Monad.Instance.K.Strong.html#3259" class="Function">τ</a> <a id="1679" class="Symbol">(</a><a id="1680" href="Categories.Functor.Core.html#797" class="Function">K.₀</a> <a id="1684" href="Monad.Instance.K.EquationalLifting.html#1357" class="Bound">X</a> <a id="1686" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="1688" href="Monad.Instance.K.EquationalLifting.html#1357" class="Bound">X</a><a id="1689" class="Symbol">)</a> <a id="1691" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="1693" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟨</a> <a id="1695" href="Monad.Instance.K.EquationalLifting.html#1612" class="Bound">f</a> <a id="1697" href="Monad.Instance.K.EquationalLifting.html#1152" class="Function Operator">#</a> <a id="1699" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">,</a> <a id="1701" href="Monad.Instance.K.EquationalLifting.html#1612" class="Bound">f</a> <a id="1703" href="Monad.Instance.K.EquationalLifting.html#1152" class="Function Operator">#</a> <a id="1705" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟩</a> <a id="1707" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">≈⟨</a> <a id="1710" href="Monad.Instance.K.EquationalLifting.html#1873" class="Function">helper₁</a> <a id="1718" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">⟩</a>
|
||
<a id="1726" class="Symbol">((</a><a id="1728" href="Monad.Instance.K.Strong.html#3259" class="Function">τ</a> <a id="1730" class="Symbol">_</a> <a id="1732" href="Categories.Category.Cocartesian.html#2133" class="Function Operator">+₁</a> <a id="1735" href="Category.Ambient.html#2115" class="Function">idC</a><a id="1738" class="Symbol">)</a> <a id="1740" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="1742" href="Categories.Category.Distributive.html#3168" class="Function">distributeˡ⁻¹</a> <a id="1756" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="1758" class="Symbol">(</a><a id="1759" href="Category.Ambient.html#2115" class="Function">idC</a> <a id="1763" href="Categories.Category.BinaryProducts.html#1465" class="Function Operator">⁂</a> <a id="1765" href="Monad.Instance.K.EquationalLifting.html#1612" class="Bound">f</a><a id="1766" class="Symbol">))</a><a id="1768" href="Monad.Instance.K.EquationalLifting.html#1152" class="Function Operator">#</a> <a id="1770" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="1772" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟨</a> <a id="1774" href="Monad.Instance.K.EquationalLifting.html#1612" class="Bound">f</a> <a id="1776" href="Monad.Instance.K.EquationalLifting.html#1152" class="Function Operator">#</a> <a id="1778" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">,</a> <a id="1780" href="Category.Ambient.html#2115" class="Function">idC</a> <a id="1784" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟩</a> <a id="1786" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">≈⟨</a> <a id="1789" href="Monad.Instance.K.EquationalLifting.html#2267" class="Function">helper₂</a> <a id="1797" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">⟩</a> <a id="1799" class="Comment">-- lemma20</a>
|
||
<a id="1816" class="Symbol">((</a><a id="1818" href="Monad.Instance.K.Strong.html#3259" class="Function">τ</a> <a id="1820" class="Symbol">(</a><a id="1821" href="Categories.Functor.Core.html#797" class="Function">K.₀</a> <a id="1825" href="Monad.Instance.K.EquationalLifting.html#1357" class="Bound">X</a> <a id="1827" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="1829" href="Monad.Instance.K.EquationalLifting.html#1357" class="Bound">X</a><a id="1830" class="Symbol">)</a> <a id="1832" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="1834" href="Categories.Category.BinaryProducts.html#6931" class="Function">Δ</a> <a id="1836" href="Categories.Category.Cocartesian.html#2133" class="Function Operator">+₁</a> <a id="1839" href="Category.Ambient.html#2115" class="Function">idC</a><a id="1842" class="Symbol">)</a> <a id="1844" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="1846" href="Monad.Instance.K.EquationalLifting.html#1612" class="Bound">f</a><a id="1847" class="Symbol">)</a> <a id="1849" href="Monad.Instance.K.EquationalLifting.html#1152" class="Function Operator">#</a> <a id="1851" href="Relation.Binary.Reasoning.Syntax.html#12283" class="Function Operator">∎</a>
|
||
<a id="1859" class="Keyword">where</a>
|
||
<a id="1873" href="Monad.Instance.K.EquationalLifting.html#1873" class="Function">helper₁</a> <a id="1881" class="Symbol">:</a> <a id="1883" href="Monad.Instance.K.Strong.html#3259" class="Function">τ</a> <a id="1885" class="Symbol">(</a><a id="1886" href="Categories.Functor.Core.html#797" class="Function">K.₀</a> <a id="1890" href="Monad.Instance.K.EquationalLifting.html#1357" class="Bound">X</a> <a id="1892" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="1894" href="Monad.Instance.K.EquationalLifting.html#1357" class="Bound">X</a><a id="1895" class="Symbol">)</a> <a id="1897" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="1899" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟨</a> <a id="1901" href="Monad.Instance.K.EquationalLifting.html#1612" class="Bound">f</a> <a id="1903" href="Monad.Instance.K.EquationalLifting.html#1152" class="Function Operator">#</a> <a id="1905" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">,</a> <a id="1907" href="Monad.Instance.K.EquationalLifting.html#1612" class="Bound">f</a> <a id="1909" href="Monad.Instance.K.EquationalLifting.html#1152" class="Function Operator">#</a> <a id="1911" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟩</a> <a id="1913" href="Categories.Category.Core.html#595" class="Function Operator">≈</a> <a id="1915" class="Symbol">((</a><a id="1917" href="Monad.Instance.K.Strong.html#3259" class="Function">τ</a> <a id="1919" class="Symbol">_</a> <a id="1921" href="Categories.Category.Cocartesian.html#2133" class="Function Operator">+₁</a> <a id="1924" href="Category.Ambient.html#2115" class="Function">idC</a><a id="1927" class="Symbol">)</a> <a id="1929" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="1931" href="Categories.Category.Distributive.html#3168" class="Function">distributeˡ⁻¹</a> <a id="1945" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="1947" class="Symbol">(</a><a id="1948" href="Category.Ambient.html#2115" class="Function">idC</a> <a id="1952" href="Categories.Category.BinaryProducts.html#1465" class="Function Operator">⁂</a> <a id="1954" href="Monad.Instance.K.EquationalLifting.html#1612" class="Bound">f</a><a id="1955" class="Symbol">))</a><a id="1957" href="Monad.Instance.K.EquationalLifting.html#1152" class="Function Operator">#</a> <a id="1959" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="1961" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟨</a> <a id="1963" href="Monad.Instance.K.EquationalLifting.html#1612" class="Bound">f</a> <a id="1965" href="Monad.Instance.K.EquationalLifting.html#1152" class="Function Operator">#</a> <a id="1967" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">,</a> <a id="1969" href="Category.Ambient.html#2115" class="Function">idC</a> <a id="1973" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟩</a>
|
||
<a id="1983" href="Monad.Instance.K.EquationalLifting.html#1873" class="Function">helper₁</a> <a id="1991" class="Symbol">=</a> <a id="1993" href="Relation.Binary.Reasoning.Syntax.html#1510" class="Function Operator">begin</a>
|
||
<a id="2010" href="Monad.Instance.K.Strong.html#3259" class="Function">τ</a> <a id="2012" class="Symbol">(</a><a id="2013" href="Categories.Functor.Core.html#797" class="Function">K.₀</a> <a id="2017" href="Monad.Instance.K.EquationalLifting.html#1357" class="Bound">X</a> <a id="2019" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="2021" href="Monad.Instance.K.EquationalLifting.html#1357" class="Bound">X</a><a id="2022" class="Symbol">)</a> <a id="2024" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="2026" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟨</a> <a id="2028" href="Monad.Instance.K.EquationalLifting.html#1612" class="Bound">f</a> <a id="2030" href="Monad.Instance.K.EquationalLifting.html#1152" class="Function Operator">#</a> <a id="2032" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">,</a> <a id="2034" href="Monad.Instance.K.EquationalLifting.html#1612" class="Bound">f</a> <a id="2036" href="Monad.Instance.K.EquationalLifting.html#1152" class="Function Operator">#</a> <a id="2038" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟩</a> <a id="2040" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">≈⟨</a> <a id="2043" href="Categories.Category.Core.html#2734" class="Function Operator">refl⟩∘⟨</a> <a id="2051" class="Symbol">((</a><a id="2053" href="Categories.Object.Product.Core.html#854" class="Function">⟨⟩-cong₂</a> <a id="2062" class="Symbol">(</a><a id="2063" href="Relation.Binary.Structures.html#1622" class="Function">sym</a> <a id="2067" href="Categories.Category.Core.html#1096" class="Function">identityˡ</a><a id="2076" class="Symbol">)</a> <a id="2078" class="Symbol">(</a><a id="2079" href="Relation.Binary.Structures.html#1622" class="Function">sym</a> <a id="2083" href="Categories.Category.Core.html#1145" class="Function">identityʳ</a><a id="2092" class="Symbol">))</a> <a id="2095" href="Categories.Category.Core.html#3061" class="Function Operator">○</a> <a id="2097" href="Relation.Binary.Structures.html#1622" class="Function">sym</a> <a id="2101" href="Categories.Category.BinaryProducts.html#2599" class="Function">⁂∘⟨⟩</a><a id="2105" class="Symbol">)</a> <a id="2107" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">⟩</a>
|
||
<a id="2120" href="Monad.Instance.K.Strong.html#3259" class="Function">τ</a> <a id="2122" class="Symbol">(</a><a id="2123" href="Categories.Functor.Core.html#797" class="Function">K.₀</a> <a id="2127" href="Monad.Instance.K.EquationalLifting.html#1357" class="Bound">X</a> <a id="2129" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="2131" href="Monad.Instance.K.EquationalLifting.html#1357" class="Bound">X</a><a id="2132" class="Symbol">)</a> <a id="2134" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="2136" class="Symbol">(</a><a id="2137" href="Category.Ambient.html#2115" class="Function">idC</a> <a id="2141" href="Categories.Category.BinaryProducts.html#1465" class="Function Operator">⁂</a> <a id="2143" href="Monad.Instance.K.EquationalLifting.html#1612" class="Bound">f</a> <a id="2145" href="Monad.Instance.K.EquationalLifting.html#1152" class="Function Operator">#</a><a id="2146" class="Symbol">)</a> <a id="2148" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="2150" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟨</a> <a id="2152" href="Monad.Instance.K.EquationalLifting.html#1612" class="Bound">f</a> <a id="2154" href="Monad.Instance.K.EquationalLifting.html#1152" class="Function Operator">#</a> <a id="2156" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">,</a> <a id="2158" href="Category.Ambient.html#2115" class="Function">idC</a> <a id="2162" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟩</a> <a id="2164" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">≈⟨</a> <a id="2167" href="Categories.Morphism.Reasoning.Core.html#2048" class="Function">pullˡ</a> <a id="2173" class="Symbol">(</a><a id="2174" href="Monad.Instance.K.Strong.html#5557" class="Function">τ-comm</a> <a id="2181" href="Monad.Instance.K.EquationalLifting.html#1612" class="Bound">f</a><a id="2182" class="Symbol">)</a> <a id="2184" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">⟩</a>
|
||
<a id="2197" class="Symbol">((</a><a id="2199" href="Monad.Instance.K.Strong.html#3259" class="Function">τ</a> <a id="2201" class="Symbol">_</a> <a id="2203" href="Categories.Category.Cocartesian.html#2133" class="Function Operator">+₁</a> <a id="2206" href="Category.Ambient.html#2115" class="Function">idC</a><a id="2209" class="Symbol">)</a> <a id="2211" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="2213" href="Categories.Category.Distributive.html#3168" class="Function">distributeˡ⁻¹</a> <a id="2227" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="2229" class="Symbol">(</a><a id="2230" href="Category.Ambient.html#2115" class="Function">idC</a> <a id="2234" href="Categories.Category.BinaryProducts.html#1465" class="Function Operator">⁂</a> <a id="2236" href="Monad.Instance.K.EquationalLifting.html#1612" class="Bound">f</a><a id="2237" class="Symbol">))</a><a id="2239" href="Monad.Instance.K.EquationalLifting.html#1152" class="Function Operator">#</a> <a id="2241" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="2243" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟨</a> <a id="2245" href="Monad.Instance.K.EquationalLifting.html#1612" class="Bound">f</a> <a id="2247" href="Monad.Instance.K.EquationalLifting.html#1152" class="Function Operator">#</a> <a id="2249" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">,</a> <a id="2251" href="Category.Ambient.html#2115" class="Function">idC</a> <a id="2255" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟩</a> <a id="2257" href="Relation.Binary.Reasoning.Syntax.html#12283" class="Function Operator">∎</a>
|
||
<a id="2267" href="Monad.Instance.K.EquationalLifting.html#2267" class="Function">helper₂</a> <a id="2275" class="Symbol">:</a> <a id="2277" class="Symbol">((</a><a id="2279" href="Monad.Instance.K.Strong.html#3259" class="Function">τ</a> <a id="2281" class="Symbol">_</a> <a id="2283" href="Categories.Category.Cocartesian.html#2133" class="Function Operator">+₁</a> <a id="2286" href="Category.Ambient.html#2115" class="Function">idC</a><a id="2289" class="Symbol">)</a> <a id="2291" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="2293" href="Categories.Category.Distributive.html#3168" class="Function">distributeˡ⁻¹</a> <a id="2307" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="2309" class="Symbol">(</a><a id="2310" href="Category.Ambient.html#2115" class="Function">idC</a> <a id="2314" href="Categories.Category.BinaryProducts.html#1465" class="Function Operator">⁂</a> <a id="2316" href="Monad.Instance.K.EquationalLifting.html#1612" class="Bound">f</a><a id="2317" class="Symbol">))</a><a id="2319" href="Monad.Instance.K.EquationalLifting.html#1152" class="Function Operator">#</a> <a id="2321" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="2323" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟨</a> <a id="2325" href="Monad.Instance.K.EquationalLifting.html#1612" class="Bound">f</a> <a id="2327" href="Monad.Instance.K.EquationalLifting.html#1152" class="Function Operator">#</a> <a id="2329" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">,</a> <a id="2331" href="Category.Ambient.html#2115" class="Function">idC</a> <a id="2335" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟩</a> <a id="2337" href="Categories.Category.Core.html#595" class="Function Operator">≈</a> <a id="2339" class="Symbol">((</a><a id="2341" href="Monad.Instance.K.Strong.html#3259" class="Function">τ</a> <a id="2343" class="Symbol">(</a><a id="2344" href="Categories.Functor.Core.html#797" class="Function">K.₀</a> <a id="2348" href="Monad.Instance.K.EquationalLifting.html#1357" class="Bound">X</a> <a id="2350" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="2352" href="Monad.Instance.K.EquationalLifting.html#1357" class="Bound">X</a><a id="2353" class="Symbol">)</a> <a id="2355" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="2357" href="Categories.Category.BinaryProducts.html#6931" class="Function">Δ</a> <a id="2359" href="Categories.Category.Cocartesian.html#2133" class="Function Operator">+₁</a> <a id="2362" href="Category.Ambient.html#2115" class="Function">idC</a><a id="2365" class="Symbol">)</a> <a id="2367" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="2369" href="Monad.Instance.K.EquationalLifting.html#1612" class="Bound">f</a><a id="2370" class="Symbol">)</a> <a id="2372" href="Monad.Instance.K.EquationalLifting.html#1152" class="Function Operator">#</a>
|
||
<a id="2382" href="Monad.Instance.K.EquationalLifting.html#2267" class="Function">helper₂</a> <a id="2390" class="Symbol">=</a> <a id="2392" href="Relation.Binary.Structures.html#1622" class="Function">sym</a> <a id="2396" class="Symbol">(</a><a id="2397" href="Algebra.Elgot.html#2086" class="Function">#-Uniformity</a> <a id="2410" class="Symbol">(</a><a id="2411" href="Monad.Instance.K.html#1333" class="Function">algebras</a> <a id="2420" class="Symbol">_)</a> <a id="2423" class="Symbol">(</a><a id="2424" href="Relation.Binary.Reasoning.Syntax.html#1510" class="Function Operator">begin</a>
|
||
<a id="2441" class="Symbol">(</a><a id="2442" href="Category.Ambient.html#2115" class="Function">idC</a> <a id="2446" href="Categories.Category.Cocartesian.html#2133" class="Function Operator">+₁</a> <a id="2449" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟨</a> <a id="2451" href="Monad.Instance.K.EquationalLifting.html#1612" class="Bound">f</a> <a id="2453" href="Monad.Instance.K.EquationalLifting.html#1152" class="Function Operator">#</a> <a id="2455" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">,</a> <a id="2457" href="Category.Ambient.html#2115" class="Function">idC</a> <a id="2461" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟩</a><a id="2462" class="Symbol">)</a> <a id="2464" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="2466" class="Symbol">(</a><a id="2467" href="Monad.Instance.K.Strong.html#3259" class="Function">τ</a> <a id="2469" class="Symbol">(</a><a id="2470" href="Categories.Functor.Core.html#797" class="Function">K.₀</a> <a id="2474" href="Monad.Instance.K.EquationalLifting.html#1357" class="Bound">X</a> <a id="2476" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="2478" href="Monad.Instance.K.EquationalLifting.html#1357" class="Bound">X</a><a id="2479" class="Symbol">)</a> <a id="2481" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="2483" href="Categories.Category.BinaryProducts.html#6931" class="Function">Δ</a> <a id="2485" href="Categories.Category.Cocartesian.html#2133" class="Function Operator">+₁</a> <a id="2488" href="Category.Ambient.html#2115" class="Function">idC</a><a id="2491" class="Symbol">)</a> <a id="2493" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="2495" href="Monad.Instance.K.EquationalLifting.html#1612" class="Bound">f</a> <a id="2497" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">≈⟨</a> <a id="2500" href="Categories.Morphism.Reasoning.Core.html#2048" class="Function">pullˡ</a> <a id="2506" href="Categories.Category.Cocartesian.html#2699" class="Function">+₁∘+₁</a> <a id="2512" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">⟩</a>
|
||
<a id="2525" class="Symbol">(</a><a id="2526" href="Category.Ambient.html#2115" class="Function">idC</a> <a id="2530" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="2532" href="Monad.Instance.K.Strong.html#3259" class="Function">τ</a> <a id="2534" class="Symbol">(</a><a id="2535" href="Categories.Functor.Core.html#797" class="Function">K.₀</a> <a id="2539" href="Monad.Instance.K.EquationalLifting.html#1357" class="Bound">X</a> <a id="2541" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="2543" href="Monad.Instance.K.EquationalLifting.html#1357" class="Bound">X</a><a id="2544" class="Symbol">)</a> <a id="2546" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="2548" href="Categories.Category.BinaryProducts.html#6931" class="Function">Δ</a> <a id="2550" href="Categories.Category.Cocartesian.html#2133" class="Function Operator">+₁</a> <a id="2553" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟨</a> <a id="2555" href="Monad.Instance.K.EquationalLifting.html#1612" class="Bound">f</a> <a id="2557" href="Monad.Instance.K.EquationalLifting.html#1152" class="Function Operator">#</a> <a id="2559" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">,</a> <a id="2561" href="Category.Ambient.html#2115" class="Function">idC</a> <a id="2565" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟩</a> <a id="2567" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="2569" href="Category.Ambient.html#2115" class="Function">idC</a><a id="2572" class="Symbol">)</a> <a id="2574" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="2576" href="Monad.Instance.K.EquationalLifting.html#1612" class="Bound">f</a> <a id="2578" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">≈⟨</a> <a id="2581" class="Symbol">(</a><a id="2582" href="Categories.Category.Cocartesian.html#2622" class="Function">+₁-cong₂</a> <a id="2591" href="Categories.Category.Core.html#1096" class="Function">identityˡ</a> <a id="2601" href="Categories.Morphism.Reasoning.Core.html#1202" class="Function">id-comm</a><a id="2608" class="Symbol">)</a> <a id="2610" href="Categories.Category.Core.html#2837" class="Function Operator">⟩∘⟨refl</a> <a id="2618" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">⟩</a>
|
||
<a id="2631" class="Symbol">(</a><a id="2632" href="Monad.Instance.K.Strong.html#3259" class="Function">τ</a> <a id="2634" class="Symbol">(</a><a id="2635" href="Categories.Functor.Core.html#797" class="Function">K.₀</a> <a id="2639" href="Monad.Instance.K.EquationalLifting.html#1357" class="Bound">X</a> <a id="2641" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="2643" href="Monad.Instance.K.EquationalLifting.html#1357" class="Bound">X</a><a id="2644" class="Symbol">)</a> <a id="2646" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="2648" href="Categories.Category.BinaryProducts.html#6931" class="Function">Δ</a> <a id="2650" href="Categories.Category.Cocartesian.html#2133" class="Function Operator">+₁</a> <a id="2653" href="Category.Ambient.html#2115" class="Function">idC</a> <a id="2657" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="2659" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟨</a> <a id="2661" href="Monad.Instance.K.EquationalLifting.html#1612" class="Bound">f</a> <a id="2663" href="Monad.Instance.K.EquationalLifting.html#1152" class="Function Operator">#</a> <a id="2665" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">,</a> <a id="2667" href="Category.Ambient.html#2115" class="Function">idC</a> <a id="2671" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟩</a><a id="2672" class="Symbol">)</a> <a id="2674" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="2676" href="Monad.Instance.K.EquationalLifting.html#1612" class="Bound">f</a> <a id="2678" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">≈⟨</a> <a id="2681" class="Symbol">(</a><a id="2682" href="Relation.Binary.Structures.html#1622" class="Function">sym</a> <a id="2686" href="Categories.Category.Cocartesian.html#2699" class="Function">+₁∘+₁</a><a id="2691" class="Symbol">)</a> <a id="2693" href="Categories.Category.Core.html#2837" class="Function Operator">⟩∘⟨refl</a> <a id="2701" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">⟩</a>
|
||
<a id="2714" class="Symbol">((</a><a id="2716" href="Monad.Instance.K.Strong.html#3259" class="Function">τ</a> <a id="2718" class="Symbol">_</a> <a id="2720" href="Categories.Category.Cocartesian.html#2133" class="Function Operator">+₁</a> <a id="2723" href="Category.Ambient.html#2115" class="Function">idC</a><a id="2726" class="Symbol">)</a> <a id="2728" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="2730" class="Symbol">(</a><a id="2731" href="Categories.Category.BinaryProducts.html#6931" class="Function">Δ</a> <a id="2733" href="Categories.Category.Cocartesian.html#2133" class="Function Operator">+₁</a> <a id="2736" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟨</a> <a id="2738" href="Monad.Instance.K.EquationalLifting.html#1612" class="Bound">f</a> <a id="2740" href="Monad.Instance.K.EquationalLifting.html#1152" class="Function Operator">#</a> <a id="2742" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">,</a> <a id="2744" href="Category.Ambient.html#2115" class="Function">idC</a> <a id="2748" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟩</a><a id="2749" class="Symbol">))</a> <a id="2752" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="2754" href="Monad.Instance.K.EquationalLifting.html#1612" class="Bound">f</a> <a id="2756" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">≈⟨</a> <a id="2759" href="Categories.Category.Core.html#715" class="Function">assoc</a> <a id="2765" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">⟩</a>
|
||
<a id="2778" class="Symbol">(</a><a id="2779" href="Monad.Instance.K.Strong.html#3259" class="Function">τ</a> <a id="2781" class="Symbol">_</a> <a id="2783" href="Categories.Category.Cocartesian.html#2133" class="Function Operator">+₁</a> <a id="2786" href="Category.Ambient.html#2115" class="Function">idC</a><a id="2789" class="Symbol">)</a> <a id="2791" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="2793" class="Symbol">(</a><a id="2794" href="Categories.Category.BinaryProducts.html#6931" class="Function">Δ</a> <a id="2796" href="Categories.Category.Cocartesian.html#2133" class="Function Operator">+₁</a> <a id="2799" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟨</a> <a id="2801" href="Monad.Instance.K.EquationalLifting.html#1612" class="Bound">f</a> <a id="2803" href="Monad.Instance.K.EquationalLifting.html#1152" class="Function Operator">#</a> <a id="2805" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">,</a> <a id="2807" href="Category.Ambient.html#2115" class="Function">idC</a> <a id="2811" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟩</a><a id="2812" class="Symbol">)</a> <a id="2814" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="2816" href="Monad.Instance.K.EquationalLifting.html#1612" class="Bound">f</a> <a id="2818" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">≈⟨</a> <a id="2821" href="Categories.Category.Core.html#2734" class="Function Operator">refl⟩∘⟨</a> <a id="2829" href="Monad.Instance.K.EquationalLifting.html#3137" class="Function">distrib</a> <a id="2837" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">⟩</a>
|
||
<a id="2850" class="Symbol">(</a><a id="2851" href="Monad.Instance.K.Strong.html#3259" class="Function">τ</a> <a id="2853" class="Symbol">_</a> <a id="2855" href="Categories.Category.Cocartesian.html#2133" class="Function Operator">+₁</a> <a id="2858" href="Category.Ambient.html#2115" class="Function">idC</a><a id="2861" class="Symbol">)</a> <a id="2863" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="2865" href="Categories.Category.Distributive.html#3168" class="Function">distributeˡ⁻¹</a> <a id="2879" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="2881" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟨</a> <a id="2883" href="Monad.Instance.K.EquationalLifting.html#1612" class="Bound">f</a> <a id="2885" href="Monad.Instance.K.EquationalLifting.html#1152" class="Function Operator">#</a> <a id="2887" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">,</a> <a id="2889" href="Monad.Instance.K.EquationalLifting.html#1612" class="Bound">f</a> <a id="2891" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟩</a> <a id="2893" href="Relation.Binary.Reasoning.Syntax.html#7400" class="Function">≈˘⟨</a> <a id="2897" href="Categories.Category.Core.html#2734" class="Function Operator">refl⟩∘⟨</a> <a id="2905" href="Categories.Category.Core.html#2734" class="Function Operator">refl⟩∘⟨</a> <a id="2913" href="Categories.Object.Product.Core.html#854" class="Function">⟨⟩-cong₂</a> <a id="2922" href="Categories.Category.Core.html#1096" class="Function">identityˡ</a> <a id="2932" href="Categories.Category.Core.html#1145" class="Function">identityʳ</a> <a id="2942" href="Relation.Binary.Reasoning.Syntax.html#7400" class="Function">⟩</a>
|
||
<a id="2955" class="Symbol">(</a><a id="2956" href="Monad.Instance.K.Strong.html#3259" class="Function">τ</a> <a id="2958" class="Symbol">_</a> <a id="2960" href="Categories.Category.Cocartesian.html#2133" class="Function Operator">+₁</a> <a id="2963" href="Category.Ambient.html#2115" class="Function">idC</a><a id="2966" class="Symbol">)</a> <a id="2968" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="2970" href="Categories.Category.Distributive.html#3168" class="Function">distributeˡ⁻¹</a> <a id="2984" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="2986" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟨</a> <a id="2988" href="Category.Ambient.html#2115" class="Function">idC</a> <a id="2992" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="2994" href="Monad.Instance.K.EquationalLifting.html#1612" class="Bound">f</a> <a id="2996" href="Monad.Instance.K.EquationalLifting.html#1152" class="Function Operator">#</a> <a id="2998" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">,</a> <a id="3000" href="Monad.Instance.K.EquationalLifting.html#1612" class="Bound">f</a> <a id="3002" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="3004" href="Category.Ambient.html#2115" class="Function">idC</a> <a id="3008" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟩</a> <a id="3010" href="Relation.Binary.Reasoning.Syntax.html#7400" class="Function">≈˘⟨</a> <a id="3014" href="Categories.Morphism.Reasoning.Core.html#1914" class="Function">pullʳ</a> <a id="3020" class="Symbol">(</a><a id="3021" href="Categories.Morphism.Reasoning.Core.html#1914" class="Function">pullʳ</a> <a id="3027" href="Categories.Category.BinaryProducts.html#2599" class="Function">⁂∘⟨⟩</a><a id="3031" class="Symbol">)</a> <a id="3033" href="Relation.Binary.Reasoning.Syntax.html#7400" class="Function">⟩</a>
|
||
<a id="3046" class="Symbol">((</a><a id="3048" href="Monad.Instance.K.Strong.html#3259" class="Function">τ</a> <a id="3050" class="Symbol">_</a> <a id="3052" href="Categories.Category.Cocartesian.html#2133" class="Function Operator">+₁</a> <a id="3055" href="Category.Ambient.html#2115" class="Function">idC</a><a id="3058" class="Symbol">)</a> <a id="3060" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="3062" href="Categories.Category.Distributive.html#3168" class="Function">distributeˡ⁻¹</a> <a id="3076" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="3078" class="Symbol">(</a><a id="3079" href="Category.Ambient.html#2115" class="Function">idC</a> <a id="3083" href="Categories.Category.BinaryProducts.html#1465" class="Function Operator">⁂</a> <a id="3085" href="Monad.Instance.K.EquationalLifting.html#1612" class="Bound">f</a><a id="3086" class="Symbol">))</a> <a id="3089" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="3091" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟨</a> <a id="3093" href="Monad.Instance.K.EquationalLifting.html#1612" class="Bound">f</a> <a id="3095" href="Monad.Instance.K.EquationalLifting.html#1152" class="Function Operator">#</a> <a id="3097" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">,</a> <a id="3099" href="Category.Ambient.html#2115" class="Function">idC</a> <a id="3103" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟩</a> <a id="3105" href="Relation.Binary.Reasoning.Syntax.html#12283" class="Function Operator">∎</a><a id="3106" class="Symbol">))</a>
|
||
<a id="3119" class="Keyword">where</a>
|
||
<a id="3137" href="Monad.Instance.K.EquationalLifting.html#3137" class="Function">distrib</a> <a id="3145" class="Symbol">:</a> <a id="3147" class="Symbol">(</a><a id="3148" href="Categories.Category.BinaryProducts.html#6931" class="Function">Δ</a> <a id="3150" href="Categories.Category.Cocartesian.html#2133" class="Function Operator">+₁</a> <a id="3153" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟨</a> <a id="3155" href="Monad.Instance.K.EquationalLifting.html#1612" class="Bound">f</a> <a id="3157" href="Monad.Instance.K.EquationalLifting.html#1152" class="Function Operator">#</a> <a id="3159" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">,</a> <a id="3161" href="Category.Ambient.html#2115" class="Function">idC</a> <a id="3165" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟩</a><a id="3166" class="Symbol">)</a> <a id="3168" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="3170" href="Monad.Instance.K.EquationalLifting.html#1612" class="Bound">f</a> <a id="3172" href="Categories.Category.Core.html#595" class="Function Operator">≈</a> <a id="3174" href="Categories.Category.Distributive.html#3168" class="Function">distributeˡ⁻¹</a> <a id="3188" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="3190" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟨</a> <a id="3192" href="Monad.Instance.K.EquationalLifting.html#1612" class="Bound">f</a> <a id="3194" href="Monad.Instance.K.EquationalLifting.html#1152" class="Function Operator">#</a> <a id="3196" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">,</a> <a id="3198" href="Monad.Instance.K.EquationalLifting.html#1612" class="Bound">f</a> <a id="3200" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟩</a>
|
||
<a id="3214" href="Monad.Instance.K.EquationalLifting.html#3137" class="Function">distrib</a> <a id="3222" class="Symbol">=</a> <a id="3224" href="Categories.Morphism.Properties.html#818" class="Function">Iso⇒Mono</a> <a id="3233" href="Category.Ambient.html#1757" class="Function">C</a> <a id="3235" class="Symbol">(</a><a id="3236" href="Categories.Morphism.html#1895" class="Field">IsIso.iso</a> <a id="3246" href="Categories.Category.Distributive.html#1042" class="Function">isIsoˡ</a><a id="3252" class="Symbol">)</a> <a id="3254" class="Symbol">((</a><a id="3256" href="Categories.Category.BinaryProducts.html#6931" class="Function">Δ</a> <a id="3258" href="Categories.Category.Cocartesian.html#2133" class="Function Operator">+₁</a> <a id="3261" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟨</a> <a id="3263" href="Monad.Instance.K.EquationalLifting.html#1612" class="Bound">f</a> <a id="3265" href="Monad.Instance.K.EquationalLifting.html#1152" class="Function Operator">#</a> <a id="3267" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">,</a> <a id="3269" href="Category.Ambient.html#2115" class="Function">idC</a> <a id="3273" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟩</a><a id="3274" class="Symbol">)</a> <a id="3276" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="3278" href="Monad.Instance.K.EquationalLifting.html#1612" class="Bound">f</a><a id="3279" class="Symbol">)</a> <a id="3281" class="Symbol">(</a><a id="3282" href="Categories.Category.Distributive.html#3168" class="Function">distributeˡ⁻¹</a> <a id="3296" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="3298" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟨</a> <a id="3300" href="Monad.Instance.K.EquationalLifting.html#1612" class="Bound">f</a> <a id="3302" href="Monad.Instance.K.EquationalLifting.html#1152" class="Function Operator">#</a> <a id="3304" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">,</a> <a id="3306" href="Monad.Instance.K.EquationalLifting.html#1612" class="Bound">f</a> <a id="3308" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟩</a><a id="3309" class="Symbol">)</a> <a id="3311" class="Symbol">(</a><a id="3312" href="Relation.Binary.Reasoning.Syntax.html#1510" class="Function Operator">begin</a>
|
||
<a id="3333" href="Categories.Category.Distributive.html#931" class="Function">distributeˡ</a> <a id="3345" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="3347" class="Symbol">(</a><a id="3348" href="Categories.Category.BinaryProducts.html#6931" class="Function">Δ</a> <a id="3350" href="Categories.Category.Cocartesian.html#2133" class="Function Operator">+₁</a> <a id="3353" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟨</a> <a id="3355" href="Monad.Instance.K.EquationalLifting.html#1612" class="Bound">f</a> <a id="3357" href="Monad.Instance.K.EquationalLifting.html#1152" class="Function Operator">#</a> <a id="3359" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">,</a> <a id="3361" href="Category.Ambient.html#2115" class="Function">idC</a> <a id="3365" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟩</a><a id="3366" class="Symbol">)</a> <a id="3368" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="3370" href="Monad.Instance.K.EquationalLifting.html#1612" class="Bound">f</a> <a id="3372" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">≈⟨</a> <a id="3375" href="Categories.Morphism.Reasoning.Core.html#2048" class="Function">pullˡ</a> <a id="3381" href="Categories.Category.Cocartesian.html#2662" class="Function">[]∘+₁</a> <a id="3387" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">⟩</a>
|
||
<a id="3404" href="Categories.Object.Coproduct.html#532" class="Function Operator">[</a> <a id="3406" class="Symbol">(</a><a id="3407" href="Category.Ambient.html#2115" class="Function">idC</a> <a id="3411" href="Categories.Category.BinaryProducts.html#1465" class="Function Operator">⁂</a> <a id="3413" href="Categories.Object.Coproduct.html#492" class="Function">i₁</a><a id="3415" class="Symbol">)</a> <a id="3417" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="3419" href="Categories.Category.BinaryProducts.html#6931" class="Function">Δ</a> <a id="3421" href="Categories.Object.Coproduct.html#532" class="Function Operator">,</a> <a id="3423" class="Symbol">(</a><a id="3424" href="Category.Ambient.html#2115" class="Function">idC</a> <a id="3428" href="Categories.Category.BinaryProducts.html#1465" class="Function Operator">⁂</a> <a id="3430" href="Categories.Object.Coproduct.html#512" class="Function">i₂</a><a id="3432" class="Symbol">)</a> <a id="3434" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="3436" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟨</a> <a id="3438" href="Monad.Instance.K.EquationalLifting.html#1612" class="Bound">f</a> <a id="3440" href="Monad.Instance.K.EquationalLifting.html#1152" class="Function Operator">#</a> <a id="3442" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">,</a> <a id="3444" href="Category.Ambient.html#2115" class="Function">idC</a> <a id="3448" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟩</a> <a id="3450" href="Categories.Object.Coproduct.html#532" class="Function Operator">]</a> <a id="3452" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="3454" href="Monad.Instance.K.EquationalLifting.html#1612" class="Bound">f</a> <a id="3456" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">≈⟨</a> <a id="3459" class="Symbol">(</a><a id="3460" href="Categories.Object.Coproduct.html#816" class="Function">[]-cong₂</a> <a id="3469" href="Categories.Category.BinaryProducts.html#7146" class="Function">⁂∘Δ</a> <a id="3473" href="Categories.Category.BinaryProducts.html#2599" class="Function">⁂∘⟨⟩</a><a id="3477" class="Symbol">)</a> <a id="3479" href="Categories.Category.Core.html#2837" class="Function Operator">⟩∘⟨refl</a> <a id="3487" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">⟩</a>
|
||
<a id="3504" href="Categories.Object.Coproduct.html#532" class="Function Operator">[</a> <a id="3506" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟨</a> <a id="3508" href="Category.Ambient.html#2115" class="Function">idC</a> <a id="3512" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">,</a> <a id="3514" href="Categories.Object.Coproduct.html#492" class="Function">i₁</a> <a id="3517" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟩</a> <a id="3519" href="Categories.Object.Coproduct.html#532" class="Function Operator">,</a> <a id="3521" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟨</a> <a id="3523" href="Category.Ambient.html#2115" class="Function">idC</a> <a id="3527" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="3529" href="Monad.Instance.K.EquationalLifting.html#1612" class="Bound">f</a> <a id="3531" href="Monad.Instance.K.EquationalLifting.html#1152" class="Function Operator">#</a> <a id="3533" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">,</a> <a id="3535" href="Categories.Object.Coproduct.html#512" class="Function">i₂</a> <a id="3538" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="3540" href="Category.Ambient.html#2115" class="Function">idC</a> <a id="3544" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟩</a> <a id="3546" href="Categories.Object.Coproduct.html#532" class="Function Operator">]</a> <a id="3548" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="3550" href="Monad.Instance.K.EquationalLifting.html#1612" class="Bound">f</a> <a id="3552" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">≈⟨</a> <a id="3555" class="Symbol">(</a><a id="3556" href="Category.Ambient.html#2218" class="Function">[]-unique</a>
|
||
<a id="3635" class="Symbol">(</a><a id="3636" href="Categories.Category.BinaryProducts.html#2975" class="Function">⟨⟩∘</a> <a id="3640" href="Categories.Category.Core.html#3061" class="Function Operator">○</a> <a id="3642" class="Symbol">(</a><a id="3643" href="Categories.Object.Product.Core.html#854" class="Function">⟨⟩-cong₂</a> <a id="3652" href="Categories.Object.Coproduct.html#569" class="Function">inject₁</a> <a id="3660" href="Categories.Category.Core.html#1096" class="Function">identityˡ</a><a id="3669" class="Symbol">))</a>
|
||
<a id="3741" class="Symbol">(</a><a id="3742" href="Categories.Category.BinaryProducts.html#2975" class="Function">⟨⟩∘</a> <a id="3746" href="Categories.Category.Core.html#3061" class="Function Operator">○</a> <a id="3748" class="Symbol">(</a><a id="3749" href="Categories.Object.Product.Core.html#854" class="Function">⟨⟩-cong₂</a> <a id="3758" class="Symbol">(</a><a id="3759" href="Categories.Object.Coproduct.html#602" class="Function">inject₂</a> <a id="3767" href="Categories.Category.Core.html#3061" class="Function Operator">○</a> <a id="3769" href="Relation.Binary.Structures.html#1622" class="Function">sym</a> <a id="3773" href="Categories.Category.Core.html#1096" class="Function">identityˡ</a><a id="3782" class="Symbol">)</a> <a id="3784" href="Categories.Morphism.Reasoning.Core.html#1309" class="Function">id-comm-sym</a><a id="3795" class="Symbol">)))</a> <a id="3799" href="Categories.Category.Core.html#2837" class="Function Operator">⟩∘⟨refl</a> <a id="3807" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">⟩</a>
|
||
<a id="3824" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟨</a> <a id="3826" href="Categories.Object.Coproduct.html#532" class="Function Operator">[</a> <a id="3828" href="Category.Ambient.html#2115" class="Function">idC</a> <a id="3832" href="Categories.Object.Coproduct.html#532" class="Function Operator">,</a> <a id="3834" href="Monad.Instance.K.EquationalLifting.html#1612" class="Bound">f</a> <a id="3836" href="Monad.Instance.K.EquationalLifting.html#1152" class="Function Operator">#</a> <a id="3838" href="Categories.Object.Coproduct.html#532" class="Function Operator">]</a> <a id="3840" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">,</a> <a id="3842" href="Category.Ambient.html#2115" class="Function">idC</a> <a id="3846" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟩</a> <a id="3848" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="3850" href="Monad.Instance.K.EquationalLifting.html#1612" class="Bound">f</a> <a id="3852" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">≈⟨</a> <a id="3855" href="Categories.Category.BinaryProducts.html#2975" class="Function">⟨⟩∘</a> <a id="3859" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">⟩</a>
|
||
<a id="3876" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟨</a> <a id="3878" href="Categories.Object.Coproduct.html#532" class="Function Operator">[</a> <a id="3880" href="Category.Ambient.html#2115" class="Function">idC</a> <a id="3884" href="Categories.Object.Coproduct.html#532" class="Function Operator">,</a> <a id="3886" href="Monad.Instance.K.EquationalLifting.html#1612" class="Bound">f</a> <a id="3888" href="Monad.Instance.K.EquationalLifting.html#1152" class="Function Operator">#</a> <a id="3890" href="Categories.Object.Coproduct.html#532" class="Function Operator">]</a> <a id="3892" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="3894" href="Monad.Instance.K.EquationalLifting.html#1612" class="Bound">f</a> <a id="3896" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">,</a> <a id="3898" href="Category.Ambient.html#2115" class="Function">idC</a> <a id="3902" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="3904" href="Monad.Instance.K.EquationalLifting.html#1612" class="Bound">f</a> <a id="3906" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟩</a> <a id="3908" href="Relation.Binary.Reasoning.Syntax.html#7400" class="Function">≈˘⟨</a> <a id="3912" href="Categories.Object.Product.Core.html#854" class="Function">⟨⟩-cong₂</a> <a id="3921" class="Symbol">(</a><a id="3922" href="Algebra.Elgot.html#2011" class="Function">#-Fixpoint</a> <a id="3933" class="Symbol">(</a><a id="3934" href="Monad.Instance.K.html#1333" class="Function">algebras</a> <a id="3943" class="Symbol">_))</a> <a id="3947" class="Symbol">(</a><a id="3948" href="Relation.Binary.Structures.html#1622" class="Function">sym</a> <a id="3952" href="Categories.Category.Core.html#1096" class="Function">identityˡ</a><a id="3961" class="Symbol">)</a> <a id="3963" href="Relation.Binary.Reasoning.Syntax.html#7400" class="Function">⟩</a>
|
||
<a id="3980" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟨</a> <a id="3982" href="Monad.Instance.K.EquationalLifting.html#1612" class="Bound">f</a> <a id="3984" href="Monad.Instance.K.EquationalLifting.html#1152" class="Function Operator">#</a> <a id="3986" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">,</a> <a id="3988" href="Monad.Instance.K.EquationalLifting.html#1612" class="Bound">f</a> <a id="3990" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟩</a> <a id="3992" href="Relation.Binary.Reasoning.Syntax.html#7400" class="Function">≈˘⟨</a> <a id="3996" href="Categories.Morphism.Reasoning.Core.html#6851" class="Function">cancelˡ</a> <a id="4004" class="Symbol">(</a><a id="4005" href="Categories.Morphism.html#1612" class="Function">IsIso.isoʳ</a> <a id="4016" href="Categories.Category.Distributive.html#1042" class="Function">isIsoˡ</a><a id="4022" class="Symbol">)</a> <a id="4024" href="Relation.Binary.Reasoning.Syntax.html#7400" class="Function">⟩</a>
|
||
<a id="4041" href="Categories.Category.Distributive.html#931" class="Function">distributeˡ</a> <a id="4053" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="4055" href="Categories.Category.Distributive.html#3168" class="Function">distributeˡ⁻¹</a> <a id="4069" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="4071" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟨</a> <a id="4073" href="Monad.Instance.K.EquationalLifting.html#1612" class="Bound">f</a> <a id="4075" href="Monad.Instance.K.EquationalLifting.html#1152" class="Function Operator">#</a> <a id="4077" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">,</a> <a id="4079" href="Monad.Instance.K.EquationalLifting.html#1612" class="Bound">f</a> <a id="4081" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟩</a> <a id="4083" href="Relation.Binary.Reasoning.Syntax.html#12283" class="Function Operator">∎</a><a id="4084" class="Symbol">)</a>
|
||
<a id="4090" href="Monad.Instance.K.EquationalLifting.html#4090" class="Function">commute</a> <a id="4098" class="Symbol">:</a> <a id="4100" class="Symbol">(</a><a id="4101" href="Monad.Instance.K.Strong.html#3259" class="Function">τ</a> <a id="4103" class="Symbol">(</a><a id="4104" href="Categories.Functor.Core.html#797" class="Function">K.₀</a> <a id="4108" href="Monad.Instance.K.EquationalLifting.html#1357" class="Bound">X</a> <a id="4110" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="4112" href="Monad.Instance.K.EquationalLifting.html#1357" class="Bound">X</a><a id="4113" class="Symbol">)</a> <a id="4115" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="4117" href="Categories.Category.BinaryProducts.html#6931" class="Function">Δ</a><a id="4118" class="Symbol">)</a> <a id="4120" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="4122" href="Monad.Instance.K.EquationalLifting.html#1015" class="Function">η</a> <a id="4124" class="Symbol">_</a> <a id="4126" href="Categories.Category.Core.html#595" class="Function Operator">≈</a> <a id="4128" href="Monad.Instance.K.EquationalLifting.html#1015" class="Function">η</a> <a id="4130" class="Symbol">_</a> <a id="4132" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="4134" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟨</a> <a id="4136" href="Monad.Instance.K.EquationalLifting.html#1015" class="Function">η</a> <a id="4138" href="Monad.Instance.K.EquationalLifting.html#1357" class="Bound">X</a> <a id="4140" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">,</a> <a id="4142" href="Category.Ambient.html#2115" class="Function">idC</a> <a id="4146" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟩</a>
|
||
<a id="4152" href="Monad.Instance.K.EquationalLifting.html#4090" class="Function">commute</a> <a id="4160" class="Symbol">=</a> <a id="4162" href="Relation.Binary.Reasoning.Syntax.html#1510" class="Function Operator">begin</a>
|
||
<a id="4175" class="Symbol">(</a><a id="4176" href="Monad.Instance.K.Strong.html#3259" class="Function">τ</a> <a id="4178" class="Symbol">(</a><a id="4179" href="Categories.Functor.Core.html#797" class="Function">K.₀</a> <a id="4183" href="Monad.Instance.K.EquationalLifting.html#1357" class="Bound">X</a> <a id="4185" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="4187" href="Monad.Instance.K.EquationalLifting.html#1357" class="Bound">X</a><a id="4188" class="Symbol">)</a> <a id="4190" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="4192" href="Categories.Category.BinaryProducts.html#6931" class="Function">Δ</a><a id="4193" class="Symbol">)</a> <a id="4195" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="4197" href="Monad.Instance.K.EquationalLifting.html#1015" class="Function">η</a> <a id="4199" class="Symbol">_</a> <a id="4201" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">≈⟨</a> <a id="4204" href="Categories.Morphism.Reasoning.Core.html#1914" class="Function">pullʳ</a> <a id="4210" href="Categories.Category.BinaryProducts.html#6982" class="Function">Δ∘</a> <a id="4213" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">⟩</a>
|
||
<a id="4222" href="Monad.Instance.K.Strong.html#3259" class="Function">τ</a> <a id="4224" class="Symbol">(</a><a id="4225" href="Categories.Functor.Core.html#797" class="Function">K.₀</a> <a id="4229" href="Monad.Instance.K.EquationalLifting.html#1357" class="Bound">X</a> <a id="4231" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="4233" href="Monad.Instance.K.EquationalLifting.html#1357" class="Bound">X</a><a id="4234" class="Symbol">)</a> <a id="4236" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="4238" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟨</a> <a id="4240" href="Monad.Instance.K.EquationalLifting.html#1015" class="Function">η</a> <a id="4242" href="Monad.Instance.K.EquationalLifting.html#1357" class="Bound">X</a> <a id="4244" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">,</a> <a id="4246" href="Monad.Instance.K.EquationalLifting.html#1015" class="Function">η</a> <a id="4248" href="Monad.Instance.K.EquationalLifting.html#1357" class="Bound">X</a> <a id="4250" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟩</a> <a id="4252" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">≈⟨</a> <a id="4255" href="Categories.Category.Core.html#2734" class="Function Operator">refl⟩∘⟨</a> <a id="4263" class="Symbol">(</a><a id="4264" href="Categories.Object.Product.Core.html#854" class="Function">⟨⟩-cong₂</a> <a id="4273" class="Symbol">(</a><a id="4274" href="Relation.Binary.Structures.html#1622" class="Function">sym</a> <a id="4278" href="Categories.Category.Core.html#1096" class="Function">identityˡ</a><a id="4287" class="Symbol">)</a> <a id="4289" class="Symbol">(</a><a id="4290" href="Relation.Binary.Structures.html#1622" class="Function">sym</a> <a id="4294" href="Categories.Category.Core.html#1145" class="Function">identityʳ</a><a id="4303" class="Symbol">)</a> <a id="4305" href="Categories.Category.Core.html#3061" class="Function Operator">○</a> <a id="4307" href="Relation.Binary.Structures.html#1622" class="Function">sym</a> <a id="4311" href="Categories.Category.BinaryProducts.html#2599" class="Function">⁂∘⟨⟩</a><a id="4315" class="Symbol">)</a> <a id="4317" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">⟩</a>
|
||
<a id="4326" href="Monad.Instance.K.Strong.html#3259" class="Function">τ</a> <a id="4328" class="Symbol">(</a><a id="4329" href="Categories.Functor.Core.html#797" class="Function">K.₀</a> <a id="4333" href="Monad.Instance.K.EquationalLifting.html#1357" class="Bound">X</a> <a id="4335" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="4337" href="Monad.Instance.K.EquationalLifting.html#1357" class="Bound">X</a><a id="4338" class="Symbol">)</a> <a id="4340" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="4342" class="Symbol">(</a><a id="4343" href="Category.Ambient.html#2115" class="Function">idC</a> <a id="4347" href="Categories.Category.BinaryProducts.html#1465" class="Function Operator">⁂</a> <a id="4349" href="Monad.Instance.K.EquationalLifting.html#1015" class="Function">η</a> <a id="4351" href="Monad.Instance.K.EquationalLifting.html#1357" class="Bound">X</a><a id="4352" class="Symbol">)</a> <a id="4354" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="4356" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟨</a> <a id="4358" href="Monad.Instance.K.EquationalLifting.html#1015" class="Function">η</a> <a id="4360" href="Monad.Instance.K.EquationalLifting.html#1357" class="Bound">X</a> <a id="4362" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">,</a> <a id="4364" href="Category.Ambient.html#2115" class="Function">idC</a> <a id="4368" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟩</a> <a id="4370" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">≈⟨</a> <a id="4373" href="Categories.Morphism.Reasoning.Core.html#2048" class="Function">pullˡ</a> <a id="4379" class="Symbol">(</a><a id="4380" href="Monad.Instance.K.Strong.html#3312" class="Function">τ-η</a> <a id="4384" class="Symbol">_)</a> <a id="4387" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">⟩</a>
|
||
<a id="4396" href="Monad.Instance.K.EquationalLifting.html#1015" class="Function">η</a> <a id="4398" class="Symbol">_</a> <a id="4400" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="4402" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟨</a> <a id="4404" href="Monad.Instance.K.EquationalLifting.html#1015" class="Function">η</a> <a id="4406" href="Monad.Instance.K.EquationalLifting.html#1357" class="Bound">X</a> <a id="4408" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">,</a> <a id="4410" href="Category.Ambient.html#2115" class="Function">idC</a> <a id="4414" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟩</a> <a id="4416" href="Relation.Binary.Reasoning.Syntax.html#12283" class="Function Operator">∎</a>
|
||
</pre> |