mirror of
https://git8.cs.fau.de/theses/bsc-leon-vatthauer.git
synced 2024-05-31 07:28:34 +02:00
88 lines
33 KiB
HTML
88 lines
33 KiB
HTML
|
<!DOCTYPE html>
|
|||
|
<html xmlns="http://www.w3.org/1999/xhtml" lang="" xml:lang="">
|
|||
|
<head>
|
|||
|
<meta charset="utf-8" />
|
|||
|
<meta name="generator" content="pandoc" />
|
|||
|
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes" />
|
|||
|
<title>Monad.Instance.Maybe.EquationalLifting</title>
|
|||
|
<style>
|
|||
|
code{white-space: pre-wrap;}
|
|||
|
span.smallcaps{font-variant: small-caps;}
|
|||
|
div.columns{display: flex; gap: min(4vw, 1.5em);}
|
|||
|
div.column{flex: auto; overflow-x: auto;}
|
|||
|
div.hanging-indent{margin-left: 1.5em; text-indent: -1.5em;}
|
|||
|
/* The extra [class] is a hack that increases specificity enough to
|
|||
|
override a similar rule in reveal.js */
|
|||
|
ul.task-list[class]{list-style: none;}
|
|||
|
ul.task-list li input[type="checkbox"] {
|
|||
|
font-size: inherit;
|
|||
|
width: 0.8em;
|
|||
|
margin: 0 0.8em 0.2em -1.6em;
|
|||
|
vertical-align: middle;
|
|||
|
}
|
|||
|
</style>
|
|||
|
<link rel="stylesheet" href="Agda.css" />
|
|||
|
<!--[if lt IE 9]>
|
|||
|
<script src="//cdnjs.cloudflare.com/ajax/libs/html5shiv/3.7.3/html5shiv-printshiv.min.js"></script>
|
|||
|
<![endif]-->
|
|||
|
</head>
|
|||
|
<body>
|
|||
|
<!--
|
|||
|
<pre class="Agda"><a id="15" class="Keyword">open</a> <a id="20" class="Keyword">import</a> <a id="27" href="Level.html" class="Module">Level</a>
|
|||
|
<a id="33" class="Keyword">open</a> <a id="38" class="Keyword">import</a> <a id="45" href="Categories.Category.Core.html" class="Module">Categories.Category.Core</a>
|
|||
|
<a id="70" class="Keyword">open</a> <a id="75" class="Keyword">import</a> <a id="82" href="Categories.Category.Cocartesian.html" class="Module">Categories.Category.Cocartesian</a>
|
|||
|
<a id="114" class="Keyword">open</a> <a id="119" class="Keyword">import</a> <a id="126" href="Categories.Category.Cartesian.html" class="Module">Categories.Category.Cartesian</a>
|
|||
|
<a id="156" class="Keyword">open</a> <a id="161" class="Keyword">import</a> <a id="168" href="Categories.Category.BinaryProducts.html" class="Module">Categories.Category.BinaryProducts</a>
|
|||
|
<a id="203" class="Keyword">open</a> <a id="208" class="Keyword">import</a> <a id="215" href="Categories.Category.Cartesian.Monoidal.html" class="Module">Categories.Category.Cartesian.Monoidal</a>
|
|||
|
<a id="254" class="Keyword">open</a> <a id="259" class="Keyword">import</a> <a id="266" href="Categories.Category.Cartesian.SymmetricMonoidal.html" class="Module">Categories.Category.Cartesian.SymmetricMonoidal</a>
|
|||
|
<a id="314" class="Keyword">open</a> <a id="319" class="Keyword">import</a> <a id="326" href="Categories.Category.Distributive.html" class="Module">Categories.Category.Distributive</a>
|
|||
|
<a id="359" class="Keyword">open</a> <a id="364" class="Keyword">import</a> <a id="371" href="Categories.Functor.html" class="Module">Categories.Functor</a> <a id="390" class="Keyword">hiding</a> <a id="397" class="Symbol">(</a><a id="398" href="Categories.Functor.html#349" class="Function">id</a><a id="400" class="Symbol">)</a>
|
|||
|
<a id="402" class="Keyword">open</a> <a id="407" class="Keyword">import</a> <a id="414" href="Categories.Object.Terminal.html" class="Module">Categories.Object.Terminal</a>
|
|||
|
<a id="441" class="Keyword">open</a> <a id="446" class="Keyword">import</a> <a id="453" href="Categories.Monad.html" class="Module">Categories.Monad</a>
|
|||
|
<a id="470" class="Keyword">open</a> <a id="475" class="Keyword">import</a> <a id="482" href="Categories.Monad.Strong.html" class="Module">Categories.Monad.Strong</a>
|
|||
|
<a id="506" class="Keyword">open</a> <a id="511" class="Keyword">import</a> <a id="518" href="Categories.Monad.Commutative.html" class="Module">Categories.Monad.Commutative</a>
|
|||
|
<a id="547" class="Keyword">open</a> <a id="552" class="Keyword">import</a> <a id="559" href="Categories.NaturalTransformation.html" class="Module">Categories.NaturalTransformation</a> <a id="592" class="Keyword">hiding</a> <a id="599" class="Symbol">(</a><a id="600" href="Categories.NaturalTransformation.Core.html#2132" class="Function">id</a><a id="602" class="Symbol">)</a>
|
|||
|
|
|||
|
<a id="605" class="Keyword">import</a> <a id="612" href="Categories.Morphism.html" class="Module">Categories.Morphism</a> <a id="632" class="Symbol">as</a> <a id="635" class="Module">M</a>
|
|||
|
<a id="637" class="Keyword">import</a> <a id="644" href="Categories.Morphism.Reasoning.html" class="Module">Categories.Morphism.Reasoning</a> <a id="674" class="Symbol">as</a> <a id="677" class="Module">MR</a>
|
|||
|
<a id="680" class="Keyword">import</a> <a id="687" href="Categories.Morphism.Properties.html" class="Module">Categories.Morphism.Properties</a> <a id="718" class="Symbol">as</a> <a id="721" class="Module">MP</a>
|
|||
|
</pre>-->
|
|||
|
<h1 id="the-maybe-monad">The maybe monad</h1>
|
|||
|
<pre class="Agda"><a id="760" class="Keyword">module</a> <a id="767" href="Monad.Instance.Maybe.EquationalLifting.html" class="Module">Monad.Instance.Maybe.EquationalLifting</a> <a id="806" class="Symbol">{</a><a id="807" href="Monad.Instance.Maybe.EquationalLifting.html#807" class="Bound">o</a> <a id="809" href="Monad.Instance.Maybe.EquationalLifting.html#809" class="Bound">ℓ</a> <a id="811" href="Monad.Instance.Maybe.EquationalLifting.html#811" class="Bound">e</a><a id="812" class="Symbol">}</a> <a id="814" class="Symbol">{</a><a id="815" href="Monad.Instance.Maybe.EquationalLifting.html#815" class="Bound">C</a> <a id="817" class="Symbol">:</a> <a id="819" href="Categories.Category.Core.html#442" class="Record">Category</a> <a id="828" href="Monad.Instance.Maybe.EquationalLifting.html#807" class="Bound">o</a> <a id="830" href="Monad.Instance.Maybe.EquationalLifting.html#809" class="Bound">ℓ</a> <a id="832" href="Monad.Instance.Maybe.EquationalLifting.html#811" class="Bound">e</a><a id="833" class="Symbol">}</a> <a id="835" class="Symbol">(</a><a id="836" href="Monad.Instance.Maybe.EquationalLifting.html#836" class="Bound">distributive</a> <a id="849" class="Symbol">:</a> <a id="851" href="Categories.Category.Distributive.html#712" class="Record">Distributive</a> <a id="864" href="Monad.Instance.Maybe.EquationalLifting.html#815" class="Bound">C</a><a id="865" class="Symbol">)</a> <a id="867" class="Keyword">where</a>
|
|||
|
<a id="875" class="Keyword">open</a> <a id="880" href="Categories.Category.Core.html#442" class="Module">Category</a> <a id="889" href="Monad.Instance.Maybe.EquationalLifting.html#815" class="Bound">C</a>
|
|||
|
<a id="893" class="Keyword">open</a> <a id="898" href="Categories.Morphism.html" class="Module">M</a> <a id="900" href="Monad.Instance.Maybe.EquationalLifting.html#815" class="Bound">C</a>
|
|||
|
<a id="904" class="Keyword">open</a> <a id="909" href="Categories.Morphism.Reasoning.html" class="Module">MR</a> <a id="912" href="Monad.Instance.Maybe.EquationalLifting.html#815" class="Bound">C</a>
|
|||
|
<a id="916" class="Keyword">open</a> <a id="921" href="Categories.Morphism.Properties.html" class="Module">MP</a> <a id="924" href="Monad.Instance.Maybe.EquationalLifting.html#815" class="Bound">C</a>
|
|||
|
<a id="928" class="Keyword">open</a> <a id="933" href="Categories.Category.Core.html#2462" class="Module">HomReasoning</a>
|
|||
|
<a id="948" class="Keyword">open</a> <a id="953" href="Categories.Category.Core.html#1530" class="Module">Equiv</a>
|
|||
|
<a id="961" class="Keyword">open</a> <a id="966" href="Categories.Category.Distributive.html#712" class="Module">Distributive</a> <a id="979" href="Monad.Instance.Maybe.EquationalLifting.html#836" class="Bound">distributive</a>
|
|||
|
<a id="994" class="Keyword">open</a> <a id="999" class="Keyword">import</a> <a id="1006" href="Categories.Category.Distributive.Properties.html" class="Module">Categories.Category.Distributive.Properties</a> <a id="1050" href="Monad.Instance.Maybe.EquationalLifting.html#836" class="Bound">distributive</a>
|
|||
|
<a id="1065" class="Keyword">open</a> <a id="1070" href="Categories.Category.Cocartesian.html#3385" class="Module">Cocartesian</a> <a id="1082" href="Categories.Category.Distributive.html#793" class="Field">cocartesian</a>
|
|||
|
<a id="1096" class="Keyword">open</a> <a id="1101" href="Categories.Category.Cartesian.html#727" class="Module">Cartesian</a> <a id="1111" href="Categories.Category.Distributive.html#765" class="Field">cartesian</a> <a id="1121" class="Keyword">using</a> <a id="1127" class="Symbol">(</a><a id="1128" href="Categories.Category.Cartesian.html#777" class="Field">terminal</a><a id="1136" class="Symbol">;</a> <a id="1138" href="Categories.Category.Cartesian.html#801" class="Field">products</a><a id="1146" class="Symbol">)</a>
|
|||
|
<a id="1150" class="Keyword">open</a> <a id="1155" href="Categories.Category.BinaryProducts.html#848" class="Module">BinaryProducts</a> <a id="1170" href="Categories.Category.Cartesian.html#801" class="Function">products</a> <a id="1179" class="Keyword">renaming</a> <a id="1188" class="Symbol">(</a><a id="1189" href="Categories.Object.Product.Core.html#671" class="Function">unique</a> <a id="1196" class="Symbol">to</a> <a id="1199" class="Function">⟨⟩-unique</a><a id="1208" class="Symbol">)</a>
|
|||
|
<a id="1212" class="Keyword">open</a> <a id="1217" href="Categories.Object.Terminal.html#860" class="Module">Terminal</a> <a id="1226" href="Categories.Category.Cartesian.html#777" class="Function">terminal</a>
|
|||
|
<a id="1237" class="Keyword">open</a> <a id="1242" href="Categories.Category.Cartesian.Monoidal.html#1139" class="Module">CartesianMonoidal</a> <a id="1260" href="Categories.Category.Distributive.html#765" class="Field">cartesian</a> <a id="1270" class="Keyword">using</a> <a id="1276" class="Symbol">(</a><a id="1277" href="Categories.Category.Cartesian.Monoidal.html#5400" class="Function">monoidal</a><a id="1285" class="Symbol">)</a>
|
|||
|
|
|||
|
<a id="equationalLifting"></a><a id="1290" href="Monad.Instance.Maybe.EquationalLifting.html#1290" class="Function">equationalLifting</a> <a id="1308" class="Symbol">:</a> <a id="1310" class="Symbol">∀</a> <a id="1312" class="Symbol">{</a><a id="1313" href="Monad.Instance.Maybe.EquationalLifting.html#1313" class="Bound">X</a><a id="1314" class="Symbol">}</a> <a id="1316" class="Symbol">→</a> <a id="1318" class="Symbol">((</a><a id="1320" href="Categories.Category.Core.html#630" class="Function">id</a> <a id="1323" href="Categories.Category.Cocartesian.html#2133" class="Function Operator">+₁</a> <a id="1326" href="Categories.Object.Terminal.html#577" class="Function">!</a><a id="1327" class="Symbol">)</a> <a id="1329" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="1331" href="Categories.Category.Distributive.html#3168" class="Function">distributeˡ⁻¹</a><a id="1344" class="Symbol">)</a> <a id="1346" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="1348" href="Categories.Category.BinaryProducts.html#6931" class="Function">Δ</a> <a id="1350" class="Symbol">{</a><a id="1351" href="Monad.Instance.Maybe.EquationalLifting.html#1313" class="Bound">X</a> <a id="1353" href="Categories.Category.Cocartesian.html#1549" class="Function Operator">+</a> <a id="1355" href="Categories.Object.Terminal.html#905" class="Function">⊤</a><a id="1356" class="Symbol">}</a> <a id="1358" href="Categories.Category.Core.html#595" class="Function Operator">≈</a> <a id="1360" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟨</a> <a id="1362" href="Categories.Object.Coproduct.html#492" class="Function">i₁</a> <a id="1365" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">,</a> <a id="1367" href="Categories.Category.Core.html#630" class="Function">id</a> <a id="1370" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟩</a> <a id="1372" href="Categories.Category.Cocartesian.html#2133" class="Function Operator">+₁</a> <a id="1375" href="Categories.Category.Core.html#630" class="Function">id</a>
|
|||
|
<a id="1380" href="Monad.Instance.Maybe.EquationalLifting.html#1290" class="Function">equationalLifting</a> <a id="1398" class="Symbol">=</a> <a id="1400" href="Relation.Binary.Structures.html#1622" class="Function">sym</a> <a id="1404" class="Symbol">(</a><a id="1405" href="Categories.Category.Cocartesian.html#1714" class="Function">+-unique</a> <a id="1414" href="Monad.Instance.Maybe.EquationalLifting.html#1439" class="Function">inj₁</a> <a id="1419" href="Monad.Instance.Maybe.EquationalLifting.html#1967" class="Function">inj₂</a><a id="1423" class="Symbol">)</a>
|
|||
|
<a id="1429" class="Keyword">where</a>
|
|||
|
<a id="1439" href="Monad.Instance.Maybe.EquationalLifting.html#1439" class="Function">inj₁</a> <a id="1444" class="Symbol">:</a> <a id="1446" class="Symbol">(((</a><a id="1449" href="Categories.Category.Core.html#630" class="Function">id</a> <a id="1452" href="Categories.Category.Cocartesian.html#2133" class="Function Operator">+₁</a> <a id="1455" href="Categories.Object.Terminal.html#577" class="Function">!</a><a id="1456" class="Symbol">)</a> <a id="1458" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="1460" href="Categories.Category.Distributive.html#3168" class="Function">distributeˡ⁻¹</a><a id="1473" class="Symbol">)</a> <a id="1475" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="1477" href="Categories.Category.BinaryProducts.html#6931" class="Function">Δ</a><a id="1478" class="Symbol">)</a> <a id="1480" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="1482" href="Categories.Object.Coproduct.html#492" class="Function">i₁</a> <a id="1485" href="Categories.Category.Core.html#595" class="Function Operator">≈</a> <a id="1487" href="Categories.Object.Coproduct.html#492" class="Function">i₁</a> <a id="1490" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="1492" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟨</a> <a id="1494" href="Categories.Object.Coproduct.html#492" class="Function">i₁</a> <a id="1497" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">,</a> <a id="1499" href="Categories.Category.Core.html#630" class="Function">id</a> <a id="1502" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟩</a>
|
|||
|
<a id="1508" href="Monad.Instance.Maybe.EquationalLifting.html#1439" class="Function">inj₁</a> <a id="1513" class="Symbol">=</a> <a id="1515" href="Relation.Binary.Reasoning.Syntax.html#1510" class="Function Operator">begin</a>
|
|||
|
<a id="1528" class="Symbol">(((</a><a id="1531" href="Categories.Category.Core.html#630" class="Function">id</a> <a id="1534" href="Categories.Category.Cocartesian.html#2133" class="Function Operator">+₁</a> <a id="1537" href="Categories.Object.Terminal.html#577" class="Function">!</a><a id="1538" class="Symbol">)</a> <a id="1540" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="1542" href="Categories.Category.Distributive.html#3168" class="Function">distributeˡ⁻¹</a><a id="1555" class="Symbol">)</a> <a id="1557" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="1559" href="Categories.Category.BinaryProducts.html#6931" class="Function">Δ</a><a id="1560" class="Symbol">)</a> <a id="1562" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="1564" href="Categories.Object.Coproduct.html#492" class="Function">i₁</a> <a id="1582" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">≈⟨</a> <a id="1585" href="Categories.Morphism.Reasoning.Core.html#1914" class="Function">pullʳ</a> <a id="1591" href="Categories.Category.BinaryProducts.html#6982" class="Function">Δ∘</a> <a id="1594" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">⟩</a>
|
|||
|
<a id="1603" class="Symbol">((</a><a id="1605" href="Categories.Category.Core.html#630" class="Function">id</a> <a id="1608" href="Categories.Category.Cocartesian.html#2133" class="Function Operator">+₁</a> <a id="1611" href="Categories.Object.Terminal.html#577" class="Function">!</a><a id="1612" class="Symbol">)</a> <a id="1614" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="1616" href="Categories.Category.Distributive.html#3168" class="Function">distributeˡ⁻¹</a><a id="1629" class="Symbol">)</a> <a id="1631" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="1633" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟨</a> <a id="1635" href="Categories.Object.Coproduct.html#492" class="Function">i₁</a> <a id="1638" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">,</a> <a id="1640" href="Categories.Object.Coproduct.html#492" class="Function">i₁</a> <a id="1643" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟩</a> <a id="1657" href="Relation.Binary.Reasoning.Syntax.html#7400" class="Function">≈˘⟨</a> <a id="1661" href="Categories.Category.Core.html#2734" class="Function Operator">refl⟩∘⟨</a> <a id="1669" class="Symbol">(</a><a id="1670" href="Categories.Category.BinaryProducts.html#2599" class="Function">⁂∘⟨⟩</a> <a id="1675" href="Categories.Category.Core.html#3061" class="Function Operator">○</a> <a id="1677" href="Categories.Object.Product.Core.html#854" class="Function">⟨⟩-cong₂</a> <a id="1686" href="Categories.Category.Core.html#1096" class="Function">identityˡ</a> <a id="1696" href="Categories.Category.Core.html#1145" class="Function">identityʳ</a><a id="1705" class="Symbol">)</a> <a id="1707" href="Relation.Binary.Reasoning.Syntax.html#7400" class="Function">⟩</a>
|
|||
|
<a id="1716" class="Symbol">((</a><a id="1718" href="Categories.Category.Core.html#630" class="Function">id</a> <a id="1721" href="Categories.Category.Cocartesian.html#2133" class="Function Operator">+₁</a> <a id="1724" href="Categories.Object.Terminal.html#577" class="Function">!</a><a id="1725" class="Symbol">)</a> <a id="1727" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="1729" href="Categories.Category.Distributive.html#3168" class="Function">distributeˡ⁻¹</a><a id="1742" class="Symbol">)</a> <a id="1744" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="1746" class="Symbol">(</a><a id="1747" href="Categories.Category.Core.html#630" class="Function">id</a> <a id="1750" href="Categories.Category.BinaryProducts.html#1465" class="Function Operator">⁂</a> <a id="1752" href="Categories.Object.Coproduct.html#492" class="Function">i₁</a><a id="1754" class="Symbol">)</a> <a id="1756" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="1758" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟨</a> <a id="1760" href="Categories.Object.Coproduct.html#492" class="Function">i₁</a> <a id="1763" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">,</a> <a id="1765" href="Categories.Category.Core.html#630" class="Function">id</a> <a id="1768" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟩</a> <a id="1770" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">≈⟨</a> <a id="1773" href="Categories.Morphism.Reasoning.Core.html#1914" class="Function">pullʳ</a> <a id="1779" class="Symbol">(</a><a id="1780" href="Categories.Morphism.Reasoning.Core.html#2048" class="Function">pullˡ</a> <a id="1786" href="Categories.Category.Distributive.Properties.html#827" class="Function">distributeˡ⁻¹-i₁</a><a id="1802" class="Symbol">)</a> <a id="1804" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">⟩</a>
|
|||
|
<a id="1813" class="Symbol">(</a><a id="1814" href="Categories.Category.Core.html#630" class="Function">id</a> <a id="1817" href="Categories.Category.Cocartesian.html#2133" class="Function Operator">+₁</a> <a id="1820" href="Categories.Object.Terminal.html#577" class="Function">!</a><a id="1821" class="Symbol">)</a> <a id="1823" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="1825" href="Categories.Object.Coproduct.html#492" class="Function">i₁</a> <a id="1828" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="1830" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟨</a> <a id="1832" href="Categories.Object.Coproduct.html#492" class="Function">i₁</a> <a id="1835" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">,</a> <a id="1837" href="Categories.Category.Core.html#630" class="Function">id</a> <a id="1840" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟩</a> <a id="1867" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">≈⟨</a> <a id="1870" href="Categories.Morphism.Reasoning.Core.html#2048" class="Function">pullˡ</a> <a id="1876" class="Symbol">(</a><a id="1877" href="Categories.Object.Coproduct.html#569" class="Function">inject₁</a> <a id="1885" href="Categories.Category.Core.html#3061" class="Function Operator">○</a> <a id="1887" href="Categories.Category.Core.html#1145" class="Function">identityʳ</a><a id="1896" class="Symbol">)</a> <a id="1898" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">⟩</a>
|
|||
|
<a id="1907" href="Categories.Object.Coproduct.html#492" class="Function">i₁</a> <a id="1910" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="1912" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟨</a> <a id="1914" href="Categories.Object.Coproduct.html#492" class="Function">i₁</a> <a id="1917" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">,</a> <a id="1919" href="Categories.Category.Core.html#630" class="Function">id</a> <a id="1922" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟩</a> <a id="1961" href="Relation.Binary.Reasoning.Syntax.html#12283" class="Function Operator">∎</a>
|
|||
|
<a id="1967" href="Monad.Instance.Maybe.EquationalLifting.html#1967" class="Function">inj₂</a> <a id="1972" class="Symbol">:</a> <a id="1974" class="Symbol">(((</a><a id="1977" href="Categories.Category.Core.html#630" class="Function">id</a> <a id="1980" href="Categories.Category.Cocartesian.html#2133" class="Function Operator">+₁</a> <a id="1983" href="Categories.Object.Terminal.html#577" class="Function">!</a><a id="1984" class="Symbol">)</a> <a id="1986" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="1988" href="Categories.Category.Distributive.html#3168" class="Function">distributeˡ⁻¹</a><a id="2001" class="Symbol">)</a> <a id="2003" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="2005" href="Categories.Category.BinaryProducts.html#6931" class="Function">Δ</a><a id="2006" class="Symbol">)</a> <a id="2008" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="2010" href="Categories.Object.Coproduct.html#512" class="Function">i₂</a> <a id="2013" href="Categories.Category.Core.html#595" class="Function Operator">≈</a> <a id="2015" href="Categories.Object.Coproduct.html#512" class="Function">i₂</a> <a id="2018" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="2020" href="Categories.Category.Core.html#630" class="Function">id</a>
|
|||
|
<a id="2027" href="Monad.Instance.Maybe.EquationalLifting.html#1967" class="Function">inj₂</a> <a id="2032" class="Symbol">=</a> <a id="2034" href="Relation.Binary.Reasoning.Syntax.html#1510" class="Function Operator">begin</a>
|
|||
|
<a id="2047" class="Symbol">(((</a><a id="2050" href="Categories.Category.Core.html#630" class="Function">id</a> <a id="2053" href="Categories.Category.Cocartesian.html#2133" class="Function Operator">+₁</a> <a id="2056" href="Categories.Object.Terminal.html#577" class="Function">!</a><a id="2057" class="Symbol">)</a> <a id="2059" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="2061" href="Categories.Category.Distributive.html#3168" class="Function">distributeˡ⁻¹</a><a id="2074" class="Symbol">)</a> <a id="2076" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="2078" href="Categories.Category.BinaryProducts.html#6931" class="Function">Δ</a><a id="2079" class="Symbol">)</a> <a id="2081" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="2083" href="Categories.Object.Coproduct.html#512" class="Function">i₂</a> <a id="2101" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">≈⟨</a> <a id="2104" href="Categories.Morphism.Reasoning.Core.html#1914" class="Function">pullʳ</a> <a id="2110" href="Categories.Category.BinaryProducts.html#6982" class="Function">Δ∘</a> <a id="2113" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">⟩</a>
|
|||
|
<a id="2122" class="Symbol">((</a><a id="2124" href="Categories.Category.Core.html#630" class="Function">id</a> <a id="2127" href="Categories.Category.Cocartesian.html#2133" class="Function Operator">+₁</a> <a id="2130" href="Categories.Object.Terminal.html#577" class="Function">!</a><a id="2131" class="Symbol">)</a> <a id="2133" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="2135" href="Categories.Category.Distributive.html#3168" class="Function">distributeˡ⁻¹</a><a id="2148" class="Symbol">)</a> <a id="2150" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="2152" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟨</a> <a id="2154" href="Categories.Object.Coproduct.html#512" class="Function">i₂</a> <a id="2157" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">,</a> <a id="2159" href="Categories.Object.Coproduct.html#512" class="Function">i₂</a> <a id="2162" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟩</a> <a id="2176" href="Relation.Binary.Reasoning.Syntax.html#7400" class="Function">≈˘⟨</a> <a id="2180" href="Categories.Category.Core.html#2734" class="Function Operator">refl⟩∘⟨</a> <a id="2188" class="Symbol">(</a><a id="2189" href="Categories.Category.BinaryProducts.html#2599" class="Function">⁂∘⟨⟩</a> <a id="2194" href="Categories.Category.Core.html#3061" class="Function Operator">○</a> <a id="2196" href="Categories.Object.Product.Core.html#854" class="Function">⟨⟩-cong₂</a> <a id="2205" href="Categories.Category.Core.html#1096" class="Function">identityˡ</a> <a id="2215" href="Categories.Category.Core.html#1145" class="Function">identityʳ</a><a id="2224" class="Symbol">)</a> <a id="2226" href="Relation.Binary.Reasoning.Syntax.html#7400" class="Function">⟩</a>
|
|||
|
<a id="2235" class="Symbol">((</a><a id="2237" href="Categories.Category.Core.html#630" class="Function">id</a> <a id="2240" href="Categories.Category.Cocartesian.html#2133" class="Function Operator">+₁</a> <a id="2243" href="Categories.Object.Terminal.html#577" class="Function">!</a><a id="2244" class="Symbol">)</a> <a id="2246" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="2248" href="Categories.Category.Distributive.html#3168" class="Function">distributeˡ⁻¹</a><a id="2261" class="Symbol">)</a> <a id="2263" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="2265" class="Symbol">(</a><a id="2266" href="Categories.Category.Core.html#630" class="Function">id</a> <a id="2269" href="Categories.Category.BinaryProducts.html#1465" class="Function Operator">⁂</a> <a id="2271" href="Categories.Object.Coproduct.html#512" class="Function">i₂</a><a id="2273" class="Symbol">)</a> <a id="2275" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="2277" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟨</a> <a id="2279" href="Categories.Object.Coproduct.html#512" class="Function">i₂</a> <a id="2282" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">,</a> <a id="2284" href="Categories.Category.Core.html#630" class="Function">id</a> <a id="2287" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟩</a> <a id="2289" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">≈⟨</a> <a id="2292" href="Categories.Morphism.Reasoning.Core.html#1914" class="Function">pullʳ</a> <a id="2298" class="Symbol">(</a><a id="2299" href="Categories.Morphism.Reasoning.Core.html#2048" class="Function">pullˡ</a> <a id="2305" href="Categories.Category.Distributive.Properties.html#977" class="Function">distributeˡ⁻¹-i₂</a><a id="2321" class="Symbol">)</a> <a id="2323" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">⟩</a>
|
|||
|
<a id="2332" class="Symbol">(</a><a id="2333" href="Categories.Category.Core.html#630" class="Function">id</a> <a id="2336" href="Categories.Category.Cocartesian.html#2133" class="Function Operator">+₁</a> <a id="2339" href="Categories.Object.Terminal.html#577" class="Function">!</a><a id="2340" class="Symbol">)</a> <a id="2342" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="2344" href="Categories.Object.Coproduct.html#512" class="Function">i₂</a> <a id="2347" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="2349" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟨</a> <a id="2351" href="Categories.Object.Coproduct.html#512" class="Function">i₂</a> <a id="2354" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">,</a> <a id="2356" href="Categories.Category.Core.html#630" class="Function">id</a> <a id="2359" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟩</a> <a id="2386" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">≈⟨</a> <a id="2389" href="Categories.Morphism.Reasoning.Core.html#2048" class="Function">pullˡ</a> <a id="2395" href="Categories.Object.Coproduct.html#602" class="Function">inject₂</a> <a id="2403" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">⟩</a>
|
|||
|
<a id="2412" class="Symbol">(</a><a id="2413" href="Categories.Object.Coproduct.html#512" class="Function">i₂</a> <a id="2416" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="2418" href="Categories.Object.Terminal.html#577" class="Function">!</a><a id="2419" class="Symbol">)</a> <a id="2421" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="2423" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟨</a> <a id="2425" href="Categories.Object.Coproduct.html#512" class="Function">i₂</a> <a id="2428" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">,</a> <a id="2430" href="Categories.Category.Core.html#630" class="Function">id</a> <a id="2433" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟩</a> <a id="2466" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">≈⟨</a> <a id="2469" href="Categories.Morphism.Reasoning.Core.html#1914" class="Function">pullʳ</a> <a id="2475" class="Symbol">(</a><a id="2476" href="Relation.Binary.Structures.html#1622" class="Function">sym</a> <a id="2480" class="Symbol">(</a><a id="2481" href="Categories.Object.Terminal.html#605" class="Function">!-unique</a> <a id="2490" class="Symbol">(</a><a id="2491" href="Categories.Object.Terminal.html#577" class="Function">!</a> <a id="2493" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="2495" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟨</a> <a id="2497" href="Categories.Object.Coproduct.html#512" class="Function">i₂</a> <a id="2500" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">,</a> <a id="2502" href="Categories.Category.Core.html#630" class="Function">id</a> <a id="2505" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟩</a><a id="2506" class="Symbol">)))</a> <a id="2510" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">⟩</a>
|
|||
|
<a id="2519" href="Categories.Object.Coproduct.html#512" class="Function">i₂</a> <a id="2522" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="2524" href="Categories.Object.Terminal.html#577" class="Function">!</a> <a id="2573" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">≈⟨</a> <a id="2576" href="Categories.Category.Core.html#2734" class="Function Operator">refl⟩∘⟨</a> <a id="2584" class="Symbol">(</a><a id="2585" href="Categories.Object.Terminal.html#605" class="Function">!-unique</a> <a id="2594" href="Categories.Category.Core.html#630" class="Function">id</a><a id="2596" class="Symbol">)</a> <a id="2598" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">⟩</a>
|
|||
|
<a id="2607" href="Categories.Object.Coproduct.html#512" class="Function">i₂</a> <a id="2610" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="2612" href="Categories.Category.Core.html#630" class="Function">id</a> <a id="2661" href="Relation.Binary.Reasoning.Syntax.html#12283" class="Function Operator">∎</a>
|
|||
|
</pre>
|
|||
|
</body>
|
|||
|
</html>
|