mirror of
https://git8.cs.fau.de/theses/bsc-leon-vatthauer.git
synced 2024-05-31 07:28:34 +02:00
263 lines
144 KiB
HTML
263 lines
144 KiB
HTML
|
<!DOCTYPE HTML>
|
|||
|
<html><head><meta charset="utf-8"><title>Categories.Adjoint.Equivalents</title><link rel="stylesheet" href="Agda.css"></head><body><pre class="Agda"><a id="1" class="Symbol">{-#</a> <a id="5" class="Keyword">OPTIONS</a> <a id="13" class="Pragma">--without-K</a> <a id="25" class="Pragma">--safe</a> <a id="32" class="Symbol">#-}</a>
|
|||
|
<a id="36" class="Keyword">module</a> <a id="43" href="Categories.Adjoint.Equivalents.html" class="Module">Categories.Adjoint.Equivalents</a> <a id="74" class="Keyword">where</a>
|
|||
|
|
|||
|
<a id="81" class="Comment">-- Theorems about equivalent formulations to Adjoint</a>
|
|||
|
<a id="134" class="Comment">-- (though some have caveats)</a>
|
|||
|
|
|||
|
<a id="165" class="Keyword">open</a> <a id="170" class="Keyword">import</a> <a id="177" href="Level.html" class="Module">Level</a>
|
|||
|
|
|||
|
<a id="184" class="Keyword">open</a> <a id="189" class="Keyword">import</a> <a id="196" href="Data.Product.html" class="Module">Data.Product</a> <a id="209" class="Keyword">using</a> <a id="215" class="Symbol">(</a><a id="216" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">_,_</a><a id="219" class="Symbol">;</a> <a id="221" href="Data.Product.Base.html#1618" class="Function Operator">_×_</a><a id="224" class="Symbol">)</a>
|
|||
|
<a id="226" class="Keyword">open</a> <a id="231" class="Keyword">import</a> <a id="238" href="Function.html" class="Module">Function</a> <a id="247" class="Keyword">using</a> <a id="253" class="Symbol">(</a><a id="254" href="Function.Base.html#1974" class="Function Operator">_$_</a><a id="257" class="Symbol">)</a> <a id="259" class="Keyword">renaming</a> <a id="268" class="Symbol">(</a><a id="269" href="Function.Base.html#1115" class="Function Operator">_∘_</a> <a id="273" class="Symbol">to</a> <a id="276" class="Function Operator">_∙_</a><a id="279" class="Symbol">)</a>
|
|||
|
<a id="281" class="Keyword">open</a> <a id="286" class="Keyword">import</a> <a id="293" href="Function.Bundles.html" class="Module">Function.Bundles</a> <a id="310" class="Keyword">using</a> <a id="316" class="Symbol">(</a><a id="317" href="Function.Bundles.html#4752" class="Record">Equivalence</a><a id="328" class="Symbol">;</a> <a id="330" href="Function.Bundles.html#5375" class="Record">LeftInverse</a><a id="341" class="Symbol">;</a> <a id="343" href="Function.Bundles.html#2043" class="Record">Func</a><a id="347" class="Symbol">;</a> <a id="349" href="Function.Bundles.html#15133" class="Function Operator">_⟨$⟩_</a><a id="354" class="Symbol">)</a>
|
|||
|
<a id="356" class="Keyword">open</a> <a id="361" class="Keyword">import</a> <a id="368" href="Relation.Binary.html" class="Module">Relation.Binary</a> <a id="384" class="Keyword">using</a> <a id="390" class="Symbol">(</a><a id="391" href="Relation.Binary.Core.html#896" class="Function">Rel</a><a id="394" class="Symbol">;</a> <a id="396" href="Relation.Binary.Structures.html#1550" class="Record">IsEquivalence</a><a id="409" class="Symbol">;</a> <a id="411" href="Relation.Binary.Bundles.html#1080" class="Record">Setoid</a><a id="417" class="Symbol">)</a>
|
|||
|
|
|||
|
<a id="420" class="Comment">-- be explicit in imports to 'see' where the information comes from</a>
|
|||
|
<a id="488" class="Keyword">open</a> <a id="493" class="Keyword">import</a> <a id="500" href="Categories.Adjoint.html" class="Module">Categories.Adjoint</a> <a id="519" class="Keyword">using</a> <a id="525" class="Symbol">(</a><a id="526" href="Categories.Adjoint.html#1260" class="Record">Adjoint</a><a id="533" class="Symbol">;</a> <a id="535" href="Categories.Adjoint.html#7818" class="Function Operator">_⊣_</a><a id="538" class="Symbol">)</a>
|
|||
|
<a id="540" class="Keyword">open</a> <a id="545" class="Keyword">import</a> <a id="552" href="Categories.Category.Core.html" class="Module">Categories.Category.Core</a> <a id="577" class="Keyword">using</a> <a id="583" class="Symbol">(</a><a id="584" href="Categories.Category.Core.html#442" class="Record">Category</a><a id="592" class="Symbol">)</a>
|
|||
|
<a id="594" class="Keyword">open</a> <a id="599" class="Keyword">import</a> <a id="606" href="Categories.Category.Product.html" class="Module">Categories.Category.Product</a> <a id="634" class="Keyword">using</a> <a id="640" class="Symbol">(</a><a id="641" href="Categories.Category.Product.html#745" class="Function">Product</a><a id="648" class="Symbol">;</a> <a id="650" href="Categories.Category.Product.html#1962" class="Function Operator">_⁂_</a><a id="653" class="Symbol">)</a>
|
|||
|
<a id="655" class="Keyword">open</a> <a id="660" class="Keyword">import</a> <a id="667" href="Categories.Category.Instance.Setoids.html" class="Module">Categories.Category.Instance.Setoids</a> <a id="704" class="Keyword">using</a> <a id="710" class="Symbol">(</a><a id="711" href="Categories.Category.Instance.Setoids.html#555" class="Function">Setoids</a><a id="718" class="Symbol">)</a>
|
|||
|
<a id="720" class="Keyword">open</a> <a id="725" class="Keyword">import</a> <a id="732" href="Categories.Morphism.html" class="Module">Categories.Morphism</a> <a id="752" class="Keyword">using</a> <a id="758" class="Symbol">(</a><a id="759" href="Categories.Morphism.html#1528" class="Record">Iso</a><a id="762" class="Symbol">)</a>
|
|||
|
<a id="764" class="Keyword">open</a> <a id="769" class="Keyword">import</a> <a id="776" href="Categories.Functor.html" class="Module">Categories.Functor</a> <a id="795" class="Keyword">using</a> <a id="801" class="Symbol">(</a><a id="802" href="Categories.Functor.Core.html#248" class="Record">Functor</a><a id="809" class="Symbol">;</a> <a id="811" href="Categories.Functor.html#747" class="Function Operator">_∘F_</a><a id="815" class="Symbol">)</a> <a id="817" class="Keyword">renaming</a> <a id="826" class="Symbol">(</a><a id="827" href="Categories.Functor.html#349" class="Function">id</a> <a id="830" class="Symbol">to</a> <a id="833" class="Function">idF</a><a id="836" class="Symbol">)</a>
|
|||
|
<a id="838" class="Keyword">open</a> <a id="843" class="Keyword">import</a> <a id="850" href="Categories.Functor.Bifunctor.html" class="Module">Categories.Functor.Bifunctor</a> <a id="879" class="Keyword">using</a> <a id="885" class="Symbol">(</a><a id="886" href="Categories.Functor.Bifunctor.html#441" class="Function">Bifunctor</a><a id="895" class="Symbol">)</a>
|
|||
|
<a id="897" class="Keyword">open</a> <a id="902" class="Keyword">import</a> <a id="909" href="Categories.Functor.Hom.html" class="Module">Categories.Functor.Hom</a> <a id="932" class="Keyword">using</a> <a id="938" class="Symbol">(</a><a id="939" href="Categories.Functor.Hom.html#1578" class="Function Operator">Hom[_][-,-]</a><a id="950" class="Symbol">)</a>
|
|||
|
<a id="952" class="Keyword">open</a> <a id="957" class="Keyword">import</a> <a id="964" href="Categories.Functor.Construction.LiftSetoids.html" class="Module">Categories.Functor.Construction.LiftSetoids</a>
|
|||
|
<a id="1008" class="Keyword">open</a> <a id="1013" class="Keyword">import</a> <a id="1020" href="Categories.NaturalTransformation.html" class="Module">Categories.NaturalTransformation</a> <a id="1053" class="Keyword">using</a> <a id="1059" class="Symbol">(</a><a id="1060" href="Categories.NaturalTransformation.Core.html#466" class="Record">NaturalTransformation</a><a id="1081" class="Symbol">;</a> <a id="1083" href="Categories.NaturalTransformation.Core.html#1750" class="Function">ntHelper</a><a id="1091" class="Symbol">;</a> <a id="1093" href="Categories.NaturalTransformation.Core.html#2919" class="Function Operator">_∘ₕ_</a><a id="1097" class="Symbol">;</a> <a id="1099" href="Categories.NaturalTransformation.Core.html#2439" class="Function Operator">_∘ᵥ_</a><a id="1103" class="Symbol">;</a> <a id="1105" href="Categories.NaturalTransformation.Core.html#3439" class="Function Operator">_∘ˡ_</a><a id="1109" class="Symbol">;</a> <a id="1111" href="Categories.NaturalTransformation.Core.html#3784" class="Function Operator">_∘ʳ_</a><a id="1115" class="Symbol">)</a>
|
|||
|
<a id="1119" class="Keyword">renaming</a> <a id="1128" class="Symbol">(</a><a id="1129" href="Categories.NaturalTransformation.Core.html#2132" class="Function">id</a> <a id="1132" class="Symbol">to</a> <a id="1135" class="Function">idN</a><a id="1138" class="Symbol">)</a>
|
|||
|
<a id="1140" class="Keyword">open</a> <a id="1145" class="Keyword">import</a> <a id="1152" href="Categories.NaturalTransformation.NaturalIsomorphism.html" class="Module">Categories.NaturalTransformation.NaturalIsomorphism</a>
|
|||
|
<a id="1206" class="Keyword">using</a> <a id="1212" class="Symbol">(</a><a id="1213" href="Categories.NaturalTransformation.NaturalIsomorphism.html#651" class="Record">NaturalIsomorphism</a><a id="1231" class="Symbol">;</a> <a id="1233" href="Categories.NaturalTransformation.NaturalIsomorphism.html#6216" class="Function">unitorˡ</a><a id="1240" class="Symbol">;</a> <a id="1242" href="Categories.NaturalTransformation.NaturalIsomorphism.html#6312" class="Function">unitorʳ</a><a id="1249" class="Symbol">;</a> <a id="1251" href="Categories.NaturalTransformation.NaturalIsomorphism.html#7073" class="Function">associator</a><a id="1261" class="Symbol">;</a> <a id="1263" href="Categories.NaturalTransformation.NaturalIsomorphism.html#3600" class="Function Operator">_≃_</a><a id="1266" class="Symbol">)</a>
|
|||
|
<a id="1268" class="Keyword">import</a> <a id="1275" href="Categories.Morphism.Reasoning.html" class="Module">Categories.Morphism.Reasoning</a> <a id="1305" class="Symbol">as</a> <a id="1308" class="Module">MR</a>
|
|||
|
|
|||
|
<a id="1312" class="Keyword">private</a>
|
|||
|
<a id="1322" class="Keyword">variable</a>
|
|||
|
<a id="1335" href="Categories.Adjoint.Equivalents.html#1335" class="Generalizable">o</a> <a id="1337" href="Categories.Adjoint.Equivalents.html#1337" class="Generalizable">o′</a> <a id="1340" href="Categories.Adjoint.Equivalents.html#1340" class="Generalizable">o″</a> <a id="1343" href="Categories.Adjoint.Equivalents.html#1343" class="Generalizable">ℓ</a> <a id="1345" href="Categories.Adjoint.Equivalents.html#1345" class="Generalizable">ℓ′</a> <a id="1348" href="Categories.Adjoint.Equivalents.html#1348" class="Generalizable">ℓ″</a> <a id="1351" href="Categories.Adjoint.Equivalents.html#1351" class="Generalizable">e</a> <a id="1353" href="Categories.Adjoint.Equivalents.html#1353" class="Generalizable">e′</a> <a id="1356" href="Categories.Adjoint.Equivalents.html#1356" class="Generalizable">e″</a> <a id="1359" class="Symbol">:</a> <a id="1361" href="Agda.Primitive.html#742" class="Postulate">Level</a>
|
|||
|
<a id="1371" href="Categories.Adjoint.Equivalents.html#1371" class="Generalizable">C</a> <a id="1373" href="Categories.Adjoint.Equivalents.html#1373" class="Generalizable">D</a> <a id="1375" href="Categories.Adjoint.Equivalents.html#1375" class="Generalizable">E</a> <a id="1377" class="Symbol">:</a> <a id="1379" href="Categories.Category.Core.html#442" class="Record">Category</a> <a id="1388" href="Categories.Adjoint.Equivalents.html#1335" class="Generalizable">o</a> <a id="1390" href="Categories.Adjoint.Equivalents.html#1343" class="Generalizable">ℓ</a> <a id="1392" href="Categories.Adjoint.Equivalents.html#1351" class="Generalizable">e</a>
|
|||
|
|
|||
|
<a id="1395" class="Comment">-- a special case of the natural isomorphism in which homsets in C and D have the same</a>
|
|||
|
<a id="1482" class="Comment">-- universe level. therefore there is no need to lift Setoids to the same level.</a>
|
|||
|
<a id="1563" class="Comment">-- this is helpful when combining with Yoneda lemma.</a>
|
|||
|
<a id="1616" class="Keyword">module</a> <a id="1623" href="Categories.Adjoint.Equivalents.html#1623" class="Module">_</a> <a id="1625" class="Symbol">{</a><a id="1626" href="Categories.Adjoint.Equivalents.html#1626" class="Bound">C</a> <a id="1628" class="Symbol">:</a> <a id="1630" href="Categories.Category.Core.html#442" class="Record">Category</a> <a id="1639" href="Categories.Adjoint.Equivalents.html#1335" class="Generalizable">o</a> <a id="1641" href="Categories.Adjoint.Equivalents.html#1343" class="Generalizable">ℓ</a> <a id="1643" href="Categories.Adjoint.Equivalents.html#1351" class="Generalizable">e</a><a id="1644" class="Symbol">}</a> <a id="1646" class="Symbol">{</a><a id="1647" href="Categories.Adjoint.Equivalents.html#1647" class="Bound">D</a> <a id="1649" class="Symbol">:</a> <a id="1651" href="Categories.Category.Core.html#442" class="Record">Category</a> <a id="1660" href="Categories.Adjoint.Equivalents.html#1337" class="Generalizable">o′</a> <a id="1663" href="Categories.Adjoint.Equivalents.html#1343" class="Generalizable">ℓ</a> <a id="1665" href="Categories.Adjoint.Equivalents.html#1351" class="Generalizable">e</a><a id="1666" class="Symbol">}</a> <a id="1668" class="Symbol">{</a><a id="1669" href="Categories.Adjoint.Equivalents.html#1669" class="Bound">L</a> <a id="1671" class="Symbol">:</a> <a id="1673" href="Categories.Functor.Core.html#248" class="Record">Functor</a> <a id="1681" href="Categories.Adjoint.Equivalents.html#1626" class="Bound">C</a> <a id="1683" href="Categories.Adjoint.Equivalents.html#1647" class="Bound">D</a><a id="1684" class="Symbol">}</a> <a id="1686" class="Symbol">{</a><a id="1687" href="Categories.Adjoint.Equivalents.html#1687" class="Bound">R</a> <a id="1689" class="Symbol">:</a> <a id="1691" href="Categories.Functor.Core.html#248" class="Record">Functor</a> <a id="1699" href="Categories.Adjoint.Equivalents.html#1647" class="Bound">D</a> <a id="1701" href="Categories.Adjoint.Equivalents.html#1626" class="Bound">C</a><a id="1702" class="Symbol">}</a> <a id="1704" class="Keyword">where</a>
|
|||
|
<a id="1712" class="Keyword">private</a>
|
|||
|
<a id="1724" class="Keyword">module</a> <a id="1731" href="Categories.Adjoint.Equivalents.html#1731" class="Module">C</a> <a id="1733" class="Symbol">=</a> <a id="1735" href="Categories.Category.Core.html#442" class="Module">Category</a> <a id="1744" href="Categories.Adjoint.Equivalents.html#1626" class="Bound">C</a>
|
|||
|
<a id="1750" class="Keyword">module</a> <a id="1757" href="Categories.Adjoint.Equivalents.html#1757" class="Module">D</a> <a id="1759" class="Symbol">=</a> <a id="1761" href="Categories.Category.Core.html#442" class="Module">Category</a> <a id="1770" href="Categories.Adjoint.Equivalents.html#1647" class="Bound">D</a>
|
|||
|
<a id="1776" class="Keyword">module</a> <a id="1783" href="Categories.Adjoint.Equivalents.html#1783" class="Module">L</a> <a id="1785" class="Symbol">=</a> <a id="1787" href="Categories.Functor.Core.html#248" class="Module">Functor</a> <a id="1795" href="Categories.Adjoint.Equivalents.html#1669" class="Bound">L</a>
|
|||
|
<a id="1801" class="Keyword">module</a> <a id="1808" href="Categories.Adjoint.Equivalents.html#1808" class="Module">R</a> <a id="1810" class="Symbol">=</a> <a id="1812" href="Categories.Functor.Core.html#248" class="Module">Functor</a> <a id="1820" href="Categories.Adjoint.Equivalents.html#1687" class="Bound">R</a>
|
|||
|
|
|||
|
<a id="1825" class="Keyword">module</a> <a id="1832" href="Categories.Adjoint.Equivalents.html#1832" class="Module">_</a> <a id="1834" class="Symbol">(</a><a id="1835" href="Categories.Adjoint.Equivalents.html#1835" class="Bound">adjoint</a> <a id="1843" class="Symbol">:</a> <a id="1845" href="Categories.Adjoint.Equivalents.html#1669" class="Bound">L</a> <a id="1847" href="Categories.Adjoint.html#7818" class="Function Operator">⊣</a> <a id="1849" href="Categories.Adjoint.Equivalents.html#1687" class="Bound">R</a><a id="1850" class="Symbol">)</a> <a id="1852" class="Keyword">where</a>
|
|||
|
<a id="1862" class="Keyword">open</a> <a id="1867" href="Categories.Adjoint.html#1260" class="Module">Adjoint</a> <a id="1875" href="Categories.Adjoint.Equivalents.html#1835" class="Bound">adjoint</a>
|
|||
|
|
|||
|
<a id="1888" class="Comment">-- in this case, the hom functors are naturally isomorphism directly</a>
|
|||
|
<a id="1961" href="Categories.Adjoint.Equivalents.html#1961" class="Function">Hom-NI′</a> <a id="1969" class="Symbol">:</a> <a id="1971" href="Categories.NaturalTransformation.NaturalIsomorphism.html#651" class="Record">NaturalIsomorphism</a> <a id="1990" href="Categories.Adjoint.html#3049" class="Function">Hom[L-,-]</a> <a id="2000" href="Categories.Adjoint.html#3139" class="Function">Hom[-,R-]</a>
|
|||
|
<a id="2014" href="Categories.Adjoint.Equivalents.html#1961" class="Function">Hom-NI′</a> <a id="2022" class="Symbol">=</a> <a id="2024" class="Keyword">record</a>
|
|||
|
<a id="2037" class="Symbol">{</a> <a id="2039" href="Categories.NaturalTransformation.NaturalIsomorphism.html#891" class="Field">F⇒G</a> <a id="2043" class="Symbol">=</a> <a id="2045" href="Categories.NaturalTransformation.Core.html#1750" class="Function">ntHelper</a> <a id="2054" class="Keyword">record</a>
|
|||
|
<a id="2069" class="Symbol">{</a> <a id="2071" href="Categories.NaturalTransformation.Core.html#1637" class="Field">η</a> <a id="2079" class="Symbol">=</a> <a id="2081" class="Symbol">λ</a> <a id="2083" href="Categories.Adjoint.Equivalents.html#2083" class="Bound">_</a> <a id="2085" class="Symbol">→</a> <a id="2087" class="Keyword">record</a> <a id="2094" class="Symbol">{</a> <a id="2096" href="Function.Bundles.html#2094" class="Field">to</a> <a id="2099" class="Symbol">=</a> <a id="2101" href="Function.Bundles.html#7394" class="Function">Hom-inverse.to</a> <a id="2116" class="Symbol">;</a> <a id="2118" href="Function.Bundles.html#2113" class="Field">cong</a> <a id="2123" class="Symbol">=</a> <a id="2125" href="Function.Bundles.html#7442" class="Function">Hom-inverse.to-cong</a> <a id="2145" class="Symbol">}</a>
|
|||
|
<a id="2155" class="Symbol">;</a> <a id="2157" href="Categories.NaturalTransformation.Core.html#1681" class="Field">commute</a> <a id="2165" class="Symbol">=</a> <a id="2167" class="Symbol">λ</a> <a id="2169" href="Categories.Adjoint.Equivalents.html#2169" class="Bound">_</a> <a id="2171" class="Symbol">→</a> <a id="2173" href="Categories.Adjoint.html#4238" class="Function">Ladjunct-comm</a> <a id="2187" href="Relation.Binary.Structures.html#1596" class="Function">D.Equiv.refl</a>
|
|||
|
<a id="2208" class="Symbol">}</a>
|
|||
|
<a id="2216" class="Symbol">;</a> <a id="2218" href="Categories.NaturalTransformation.NaturalIsomorphism.html#927" class="Field">F⇐G</a> <a id="2222" class="Symbol">=</a> <a id="2224" href="Categories.NaturalTransformation.Core.html#1750" class="Function">ntHelper</a> <a id="2233" class="Keyword">record</a>
|
|||
|
<a id="2248" class="Symbol">{</a> <a id="2250" href="Categories.NaturalTransformation.Core.html#1637" class="Field">η</a> <a id="2258" class="Symbol">=</a> <a id="2260" class="Symbol">λ</a> <a id="2262" href="Categories.Adjoint.Equivalents.html#2262" class="Bound">_</a> <a id="2264" class="Symbol">→</a> <a id="2266" class="Keyword">record</a> <a id="2273" class="Symbol">{</a> <a id="2275" href="Function.Bundles.html#2094" class="Field">to</a> <a id="2278" class="Symbol">=</a> <a id="2280" href="Function.Bundles.html#7418" class="Function">Hom-inverse.from</a> <a id="2297" class="Symbol">;</a> <a id="2299" href="Function.Bundles.html#2113" class="Field">cong</a> <a id="2304" class="Symbol">=</a> <a id="2306" href="Function.Bundles.html#7483" class="Function">Hom-inverse.from-cong</a> <a id="2328" class="Symbol">}</a>
|
|||
|
<a id="2338" class="Symbol">;</a> <a id="2340" href="Categories.NaturalTransformation.Core.html#1681" class="Field">commute</a> <a id="2348" class="Symbol">=</a> <a id="2350" class="Symbol">λ</a> <a id="2352" href="Categories.Adjoint.Equivalents.html#2352" class="Bound">_</a> <a id="2354" class="Symbol">→</a> <a id="2356" href="Categories.Adjoint.html#5393" class="Function">Radjunct-comm</a> <a id="2370" href="Relation.Binary.Structures.html#1596" class="Function">C.Equiv.refl</a>
|
|||
|
<a id="2391" class="Symbol">}</a>
|
|||
|
<a id="2399" class="Symbol">;</a> <a id="2401" href="Categories.NaturalTransformation.NaturalIsomorphism.html#1051" class="Field">iso</a> <a id="2405" class="Symbol">=</a> <a id="2407" class="Symbol">λ</a> <a id="2409" href="Categories.Adjoint.Equivalents.html#2409" class="Bound">_</a> <a id="2411" class="Symbol">→</a> <a id="2413" class="Keyword">record</a>
|
|||
|
<a id="2428" class="Symbol">{</a> <a id="2430" href="Categories.Morphism.html#1586" class="Field">isoˡ</a> <a id="2435" class="Symbol">=</a> <a id="2437" href="Categories.Adjoint.html#2026" class="Function">RLadjunct≈id</a>
|
|||
|
<a id="2458" class="Symbol">;</a> <a id="2460" href="Categories.Morphism.html#1612" class="Field">isoʳ</a> <a id="2465" class="Symbol">=</a> <a id="2467" href="Categories.Adjoint.html#2533" class="Function">LRadjunct≈id</a>
|
|||
|
<a id="2488" class="Symbol">}</a>
|
|||
|
<a id="2496" class="Symbol">}</a>
|
|||
|
|
|||
|
<a id="2501" class="Comment">-- now goes from natural isomorphism back to adjoint.</a>
|
|||
|
<a id="2557" class="Comment">-- for simplicity, just construct the case in which homsetoids of C and D</a>
|
|||
|
<a id="2633" class="Comment">-- are compatible.</a>
|
|||
|
|
|||
|
<a id="2655" class="Keyword">private</a>
|
|||
|
<a id="2667" href="Categories.Adjoint.Equivalents.html#2667" class="Function">Hom[L-,-]</a> <a id="2677" class="Symbol">:</a> <a id="2679" href="Categories.Functor.Bifunctor.html#441" class="Function">Bifunctor</a> <a id="2689" href="Categories.Category.Core.html#3132" class="Function">C.op</a> <a id="2694" href="Categories.Adjoint.Equivalents.html#1647" class="Bound">D</a> <a id="2696" class="Symbol">(</a><a id="2697" href="Categories.Category.Instance.Setoids.html#555" class="Function">Setoids</a> <a id="2705" class="Symbol">_</a> <a id="2707" class="Symbol">_)</a>
|
|||
|
<a id="2714" href="Categories.Adjoint.Equivalents.html#2667" class="Function">Hom[L-,-]</a> <a id="2724" class="Symbol">=</a> <a id="2726" href="Categories.Functor.Hom.html#1578" class="Function Operator">Hom[</a> <a id="2731" href="Categories.Adjoint.Equivalents.html#1647" class="Bound">D</a> <a id="2733" href="Categories.Functor.Hom.html#1578" class="Function Operator">][-,-]</a> <a id="2740" href="Categories.Functor.html#747" class="Function Operator">∘F</a> <a id="2743" class="Symbol">(</a><a id="2744" href="Categories.Functor.Core.html#816" class="Function">L.op</a> <a id="2749" href="Categories.Category.Product.html#1962" class="Function Operator">⁂</a> <a id="2751" href="Categories.Adjoint.Equivalents.html#833" class="Function">idF</a><a id="2754" class="Symbol">)</a>
|
|||
|
|
|||
|
<a id="2761" href="Categories.Adjoint.Equivalents.html#2761" class="Function">Hom[-,R-]</a> <a id="2771" class="Symbol">:</a> <a id="2773" href="Categories.Functor.Bifunctor.html#441" class="Function">Bifunctor</a> <a id="2783" href="Categories.Category.Core.html#3132" class="Function">C.op</a> <a id="2788" href="Categories.Adjoint.Equivalents.html#1647" class="Bound">D</a> <a id="2790" class="Symbol">(</a><a id="2791" href="Categories.Category.Instance.Setoids.html#555" class="Function">Setoids</a> <a id="2799" class="Symbol">_</a> <a id="2801" class="Symbol">_)</a>
|
|||
|
<a id="2808" href="Categories.Adjoint.Equivalents.html#2761" class="Function">Hom[-,R-]</a> <a id="2818" class="Symbol">=</a> <a id="2820" href="Categories.Functor.Hom.html#1578" class="Function Operator">Hom[</a> <a id="2825" href="Categories.Adjoint.Equivalents.html#1626" class="Bound">C</a> <a id="2827" href="Categories.Functor.Hom.html#1578" class="Function Operator">][-,-]</a> <a id="2834" href="Categories.Functor.html#747" class="Function Operator">∘F</a> <a id="2837" class="Symbol">(</a><a id="2838" href="Categories.Adjoint.Equivalents.html#833" class="Function">idF</a> <a id="2842" href="Categories.Category.Product.html#1962" class="Function Operator">⁂</a> <a id="2844" href="Categories.Adjoint.Equivalents.html#1687" class="Bound">R</a><a id="2845" class="Symbol">)</a>
|
|||
|
|
|||
|
<a id="2850" class="Keyword">module</a> <a id="2857" href="Categories.Adjoint.Equivalents.html#2857" class="Module">_</a> <a id="2859" class="Symbol">(</a><a id="2860" href="Categories.Adjoint.Equivalents.html#2860" class="Bound">Hni</a> <a id="2864" class="Symbol">:</a> <a id="2866" href="Categories.NaturalTransformation.NaturalIsomorphism.html#651" class="Record">NaturalIsomorphism</a> <a id="2885" href="Categories.Adjoint.Equivalents.html#2667" class="Function">Hom[L-,-]</a> <a id="2895" href="Categories.Adjoint.Equivalents.html#2761" class="Function">Hom[-,R-]</a><a id="2904" class="Symbol">)</a> <a id="2906" class="Keyword">where</a>
|
|||
|
<a id="2916" class="Keyword">open</a> <a id="2921" href="Categories.NaturalTransformation.NaturalIsomorphism.html#651" class="Module">NaturalIsomorphism</a> <a id="2940" href="Categories.Adjoint.Equivalents.html#2860" class="Bound">Hni</a>
|
|||
|
<a id="2948" class="Keyword">open</a> <a id="2953" href="Categories.NaturalTransformation.Core.html#466" class="Module">NaturalTransformation</a>
|
|||
|
<a id="2979" class="Keyword">open</a> <a id="2984" href="Categories.Functor.Core.html#248" class="Module">Functor</a>
|
|||
|
<a id="2996" class="Keyword">open</a> <a id="3001" href="Function.Bundles.html#2043" class="Module">Func</a>
|
|||
|
|
|||
|
<a id="3011" class="Keyword">private</a>
|
|||
|
<a id="3025" href="Categories.Adjoint.Equivalents.html#3025" class="Function">unitη</a> <a id="3031" class="Symbol">:</a> <a id="3033" class="Symbol">∀</a> <a id="3035" href="Categories.Adjoint.Equivalents.html#3035" class="Bound">X</a> <a id="3037" class="Symbol">→</a> <a id="3039" href="Function.Bundles.html#2043" class="Record">Func</a> <a id="3044" class="Symbol">(</a><a id="3045" href="Categories.Functor.Core.html#432" class="Field">F₀</a> <a id="3048" href="Categories.Adjoint.Equivalents.html#2667" class="Function">Hom[L-,-]</a> <a id="3058" class="Symbol">(</a><a id="3059" href="Categories.Adjoint.Equivalents.html#3035" class="Bound">X</a> <a id="3061" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="3063" href="Categories.Functor.Core.html#432" class="Function">L.F₀</a> <a id="3068" href="Categories.Adjoint.Equivalents.html#3035" class="Bound">X</a><a id="3069" class="Symbol">))</a> <a id="3072" class="Symbol">(</a><a id="3073" href="Categories.Functor.Core.html#432" class="Field">F₀</a> <a id="3076" href="Categories.Adjoint.Equivalents.html#2761" class="Function">Hom[-,R-]</a> <a id="3086" class="Symbol">(</a><a id="3087" href="Categories.Adjoint.Equivalents.html#3035" class="Bound">X</a> <a id="3089" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="3091" href="Categories.Functor.Core.html#432" class="Function">L.F₀</a> <a id="3096" href="Categories.Adjoint.Equivalents.html#3035" class="Bound">X</a><a id="3097" class="Symbol">))</a>
|
|||
|
<a id="3106" href="Categories.Adjoint.Equivalents.html#3025" class="Function">unitη</a> <a id="3112" href="Categories.Adjoint.Equivalents.html#3112" class="Bound">X</a> <a id="3114" class="Symbol">=</a> <a id="3116" href="Categories.NaturalTransformation.Core.html#783" class="Function">⇒.η</a> <a id="3120" class="Symbol">(</a><a id="3121" href="Categories.Adjoint.Equivalents.html#3112" class="Bound">X</a> <a id="3123" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="3125" href="Categories.Functor.Core.html#432" class="Function">L.F₀</a> <a id="3130" href="Categories.Adjoint.Equivalents.html#3112" class="Bound">X</a><a id="3131" class="Symbol">)</a>
|
|||
|
|
|||
|
<a id="3140" href="Categories.Adjoint.Equivalents.html#3140" class="Function">unit</a> <a id="3145" class="Symbol">:</a> <a id="3147" href="Categories.NaturalTransformation.Core.html#466" class="Record">NaturalTransformation</a> <a id="3169" href="Categories.Adjoint.Equivalents.html#833" class="Function">idF</a> <a id="3173" class="Symbol">(</a><a id="3174" href="Categories.Adjoint.Equivalents.html#1687" class="Bound">R</a> <a id="3176" href="Categories.Functor.html#747" class="Function Operator">∘F</a> <a id="3179" href="Categories.Adjoint.Equivalents.html#1669" class="Bound">L</a><a id="3180" class="Symbol">)</a>
|
|||
|
<a id="3188" href="Categories.Adjoint.Equivalents.html#3140" class="Function">unit</a> <a id="3193" class="Symbol">=</a> <a id="3195" href="Categories.NaturalTransformation.Core.html#1750" class="Function">ntHelper</a> <a id="3204" class="Keyword">record</a>
|
|||
|
<a id="3219" class="Symbol">{</a> <a id="3221" href="Categories.NaturalTransformation.Core.html#1637" class="Field">η</a> <a id="3229" class="Symbol">=</a> <a id="3231" class="Symbol">λ</a> <a id="3233" href="Categories.Adjoint.Equivalents.html#3233" class="Bound">X</a> <a id="3235" class="Symbol">→</a> <a id="3237" href="Categories.Adjoint.Equivalents.html#3025" class="Function">unitη</a> <a id="3243" href="Categories.Adjoint.Equivalents.html#3233" class="Bound">X</a> <a id="3245" href="Function.Bundles.html#15133" class="Function Operator">⟨$⟩</a> <a id="3249" href="Categories.Category.Core.html#630" class="Function">D.id</a>
|
|||
|
<a id="3262" class="Symbol">;</a> <a id="3264" href="Categories.NaturalTransformation.Core.html#1681" class="Field">commute</a> <a id="3272" class="Symbol">=</a> <a id="3274" class="Symbol">λ</a> <a id="3276" class="Symbol">{</a><a id="3277" href="Categories.Adjoint.Equivalents.html#3277" class="Bound">X</a><a id="3278" class="Symbol">}</a> <a id="3280" class="Symbol">{</a><a id="3281" href="Categories.Adjoint.Equivalents.html#3281" class="Bound">Y</a><a id="3282" class="Symbol">}</a> <a id="3284" href="Categories.Adjoint.Equivalents.html#3284" class="Bound">f</a> <a id="3286" class="Symbol">→</a> <a id="3288" href="Relation.Binary.Reasoning.Syntax.html#1510" class="Function Operator">begin</a>
|
|||
|
<a id="3304" class="Symbol">(</a><a id="3305" href="Categories.Adjoint.Equivalents.html#3025" class="Function">unitη</a> <a id="3311" href="Categories.Adjoint.Equivalents.html#3281" class="Bound">Y</a> <a id="3313" href="Function.Bundles.html#15133" class="Function Operator">⟨$⟩</a> <a id="3317" href="Categories.Category.Core.html#630" class="Function">D.id</a><a id="3321" class="Symbol">)</a> <a id="3323" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="3325" href="Categories.Adjoint.Equivalents.html#3284" class="Bound">f</a> <a id="3355" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">≈⟨</a> <a id="3358" href="Categories.Morphism.Reasoning.Core.html#3063" class="Function">introˡ</a> <a id="3365" href="Categories.Functor.Core.html#511" class="Field">R.identity</a> <a id="3376" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">⟩</a>
|
|||
|
<a id="3388" href="Categories.Functor.Core.html#455" class="Field">R.F₁</a> <a id="3393" href="Categories.Category.Core.html#630" class="Function">D.id</a> <a id="3398" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="3400" class="Symbol">(</a><a id="3401" href="Categories.Adjoint.Equivalents.html#3025" class="Function">unitη</a> <a id="3407" href="Categories.Adjoint.Equivalents.html#3281" class="Bound">Y</a> <a id="3410" href="Function.Bundles.html#15133" class="Function Operator">⟨$⟩</a> <a id="3414" href="Categories.Category.Core.html#630" class="Function">D.id</a><a id="3418" class="Symbol">)</a> <a id="3420" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="3422" href="Categories.Adjoint.Equivalents.html#3284" class="Bound">f</a> <a id="3439" href="Relation.Binary.Reasoning.Syntax.html#7400" class="Function">≈˘⟨</a> <a id="3443" href="Categories.NaturalTransformation.Core.html#827" class="Function">⇒.commute</a> <a id="3453" class="Symbol">(</a><a id="3454" href="Categories.Adjoint.Equivalents.html#3284" class="Bound">f</a> <a id="3456" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="3458" href="Categories.Category.Core.html#630" class="Function">D.id</a><a id="3462" class="Symbol">)</a> <a id="3464" href="Relation.Binary.Reasoning.Syntax.html#7400" class="Function">⟩</a>
|
|||
|
<a id="3476" href="Categories.NaturalTransformation.Core.html#783" class="Function">⇒.η</a> <a id="3480" class="Symbol">(</a><a id="3481" href="Categories.Adjoint.Equivalents.html#3277" class="Bound">X</a> <a id="3483" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="3485" href="Categories.Functor.Core.html#432" class="Function">L.F₀</a> <a id="3490" href="Categories.Adjoint.Equivalents.html#3281" class="Bound">Y</a><a id="3491" class="Symbol">)</a> <a id="3493" href="Function.Bundles.html#15133" class="Function Operator">⟨$⟩</a> <a id="3497" class="Symbol">(</a><a id="3498" href="Categories.Category.Core.html#630" class="Function">D.id</a> <a id="3503" href="Categories.Category.Core.html#656" class="Function Operator">D.∘</a> <a id="3507" href="Categories.Category.Core.html#630" class="Function">D.id</a> <a id="3512" href="Categories.Category.Core.html#656" class="Function Operator">D.∘</a> <a id="3516" href="Categories.Functor.Core.html#455" class="Function">L.F₁</a> <a id="3521" href="Categories.Adjoint.Equivalents.html#3284" class="Bound">f</a><a id="3522" class="Symbol">)</a> <a id="3527" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">≈⟨</a> <a id="3530" href="Function.Bundles.html#2113" class="Field">cong</a> <a id="3535" class="Symbol">(</a><a id="3536" href="Categories.NaturalTransformation.Core.html#783" class="Function">⇒.η</a> <a id="3540" class="Symbol">(</a><a id="3541" href="Categories.Adjoint.Equivalents.html#3277" class="Bound">X</a> <a id="3543" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="3545" href="Categories.Functor.Core.html#432" class="Function">L.F₀</a> <a id="3550" href="Categories.Adjoint.Equivalents.html#3281" class="Bound">Y</a><a id="3551" class="Symbol">))</a> <a id="3554" class="Symbol">(</a><a id="3555" href="Relation.Binary.Structures.html#1648" class="Function">D.Equiv.trans</a> <a id="3569" href="Categories.Category.Core.html#1096" class="Function">D.identityˡ</a> <a id="3581" href="Categories.Category.Core.html#1096" class="Function">D.identityˡ</a><a id="3592" class="Symbol">)</a> <a id="3594" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">⟩</a>
|
|||
|
<a id="3606" href="Categories.NaturalTransformation.Core.html#783" class="Function">⇒.η</a> <a id="3610" class="Symbol">(</a><a id="3611" href="Categories.Adjoint.Equivalents.html#3277" class="Bound">X</a> <a id="3613" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="3615" href="Categories.Functor.Core.html#432" class="Function">L.F₀</a> <a id="3620" href="Categories.Adjoint.Equivalents.html#3281" class="Bound">Y</a><a id="3621" class="Symbol">)</a> <a id="3623" href="Function.Bundles.html#15133" class="Function Operator">⟨$⟩</a> <a id="3627" href="Categories.Functor.Core.html#455" class="Function">L.F₁</a> <a id="3632" href="Categories.Adjoint.Equivalents.html#3284" class="Bound">f</a> <a id="3657" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">≈⟨</a> <a id="3660" href="Function.Bundles.html#2113" class="Field">cong</a> <a id="3665" class="Symbol">(</a><a id="3666" href="Categories.NaturalTransformation.Core.html#783" class="Function">⇒.η</a> <a id="3670" class="Symbol">(</a><a id="3671" href="Categories.Adjoint.Equivalents.html#3277" class="Bound">X</a> <a id="3673" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="3675" href="Categories.Functor.Core.html#432" class="Function">L.F₀</a> <a id="3680" href="Categories.Adjoint.Equivalents.html#3281" class="Bound">Y</a><a id="3681" class="Symbol">))</a> <a id="3684" class="Symbol">(</a><a id="3685" href="Categories.Morphism.Reasoning.Core.html#2899" class="Function">MR.introʳ</a> <a id="3695" href="Categories.Adjoint.Equivalents.html#1647" class="Bound">D</a> <a id="3697" class="Symbol">(</a><a id="3698" href="Categories.Morphism.Reasoning.Core.html#2786" class="Function">MR.elimʳ</a> <a id="3707" href="Categories.Adjoint.Equivalents.html#1647" class="Bound">D</a> <a id="3709" href="Categories.Functor.Core.html#511" class="Function">L.identity</a><a id="3719" class="Symbol">))</a> <a id="3722" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">⟩</a>
|
|||
|
<a id="3734" href="Categories.NaturalTransformation.Core.html#783" class="Function">⇒.η</a> <a id="3738" class="Symbol">(</a><a id="3739" href="Categories.Adjoint.Equivalents.html#3277" class="Bound">X</a> <a id="3741" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="3743" href="Categories.Functor.Core.html#432" class="Function">L.F₀</a> <a id="3748" href="Categories.Adjoint.Equivalents.html#3281" class="Bound">Y</a><a id="3749" class="Symbol">)</a> <a id="3751" href="Function.Bundles.html#15133" class="Function Operator">⟨$⟩</a> <a id="3755" class="Symbol">(</a><a id="3756" href="Categories.Functor.Core.html#455" class="Function">L.F₁</a> <a id="3761" href="Categories.Adjoint.Equivalents.html#3284" class="Bound">f</a> <a id="3763" href="Categories.Category.Core.html#656" class="Function Operator">D.∘</a> <a id="3767" href="Categories.Category.Core.html#630" class="Function">D.id</a> <a id="3772" href="Categories.Category.Core.html#656" class="Function Operator">D.∘</a> <a id="3776" href="Categories.Functor.Core.html#455" class="Function">L.F₁</a> <a id="3781" href="Categories.Category.Core.html#630" class="Function">id</a><a id="3783" class="Symbol">)</a> <a id="3785" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">≈⟨</a> <a id="3788" href="Categories.NaturalTransformation.Core.html#827" class="Function">⇒.commute</a> <a id="3798" class="Symbol">(</a><a id="3799" href="Categories.Category.Core.html#630" class="Function">C.id</a> <a id="3804" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="3806" href="Categories.Functor.Core.html#455" class="Function">L.F₁</a> <a id="3811" href="Categories.Adjoint.Equivalents.html#3284" class="Bound">f</a><a id="3812" class="Symbol">)</a> <a id="3814" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">⟩</a>
|
|||
|
<a id="3826" href="Categories.Functor.Core.html#455" class="Field">R.F₁</a> <a id="3831" class="Symbol">(</a><a id="3832" href="Categories.Functor.Core.html#455" class="Function">L.F₁</a> <a id="3837" href="Categories.Adjoint.Equivalents.html#3284" class="Bound">f</a><a id="3838" class="Symbol">)</a> <a id="3840" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="3842" class="Symbol">(</a><a id="3843" href="Categories.Adjoint.Equivalents.html#3025" class="Function">unitη</a> <a id="3849" href="Categories.Adjoint.Equivalents.html#3277" class="Bound">X</a> <a id="3851" href="Function.Bundles.html#15133" class="Function Operator">⟨$⟩</a> <a id="3855" href="Categories.Category.Core.html#630" class="Function">D.id</a><a id="3859" class="Symbol">)</a> <a id="3861" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="3863" href="Categories.Category.Core.html#630" class="Function">id</a> <a id="3877" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">≈⟨</a> <a id="3880" href="Categories.Category.Core.html#2734" class="Function Operator">refl⟩∘⟨</a> <a id="3888" href="Categories.Category.Core.html#1145" class="Function">identityʳ</a> <a id="3898" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">⟩</a>
|
|||
|
<a id="3910" href="Categories.Functor.Core.html#455" class="Field">R.F₁</a> <a id="3915" class="Symbol">(</a><a id="3916" href="Categories.Functor.Core.html#455" class="Function">L.F₁</a> <a id="3921" href="Categories.Adjoint.Equivalents.html#3284" class="Bound">f</a><a id="3922" class="Symbol">)</a> <a id="3924" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="3926" class="Symbol">(</a><a id="3927" href="Categories.Adjoint.Equivalents.html#3025" class="Function">unitη</a> <a id="3933" href="Categories.Adjoint.Equivalents.html#3277" class="Bound">X</a> <a id="3935" href="Function.Bundles.html#15133" class="Function Operator">⟨$⟩</a> <a id="3939" href="Categories.Category.Core.html#630" class="Function">D.id</a><a id="3943" class="Symbol">)</a> <a id="3961" href="Relation.Binary.Reasoning.Syntax.html#12283" class="Function Operator">∎</a>
|
|||
|
<a id="3971" class="Symbol">}</a>
|
|||
|
<a id="3981" class="Keyword">where</a> <a id="3987" class="Keyword">open</a> <a id="3992" href="Categories.Adjoint.Equivalents.html#1731" class="Module">C</a>
|
|||
|
<a id="4008" class="Keyword">open</a> <a id="4013" href="Categories.Category.Core.html#2462" class="Module">HomReasoning</a>
|
|||
|
<a id="4040" class="Keyword">open</a> <a id="4045" href="Categories.Morphism.Reasoning.html" class="Module">MR</a> <a id="4048" href="Categories.Adjoint.Equivalents.html#1626" class="Bound">C</a>
|
|||
|
|
|||
|
<a id="4057" href="Categories.Adjoint.Equivalents.html#4057" class="Function">counitη</a> <a id="4065" class="Symbol">:</a> <a id="4067" class="Symbol">∀</a> <a id="4069" href="Categories.Adjoint.Equivalents.html#4069" class="Bound">X</a> <a id="4071" class="Symbol">→</a> <a id="4073" href="Function.Bundles.html#2043" class="Record">Func</a> <a id="4078" class="Symbol">(</a><a id="4079" href="Categories.Functor.Core.html#432" class="Field">F₀</a> <a id="4082" href="Categories.Adjoint.Equivalents.html#2761" class="Function">Hom[-,R-]</a> <a id="4092" class="Symbol">(</a><a id="4093" href="Categories.Functor.Core.html#432" class="Field">R.F₀</a> <a id="4098" href="Categories.Adjoint.Equivalents.html#4069" class="Bound">X</a> <a id="4100" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="4102" href="Categories.Adjoint.Equivalents.html#4069" class="Bound">X</a><a id="4103" class="Symbol">))</a> <a id="4106" class="Symbol">(</a><a id="4107" href="Categories.Functor.Core.html#432" class="Field">F₀</a> <a id="4110" href="Categories.Adjoint.Equivalents.html#2667" class="Function">Hom[L-,-]</a> <a id="4120" class="Symbol">(</a><a id="4121" href="Categories.Functor.Core.html#432" class="Field">R.F₀</a> <a id="4126" href="Categories.Adjoint.Equivalents.html#4069" class="Bound">X</a> <a id="4128" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="4130" href="Categories.Adjoint.Equivalents.html#4069" class="Bound">X</a><a id="4131" class="Symbol">))</a>
|
|||
|
<a id="4140" href="Categories.Adjoint.Equivalents.html#4057" class="Function">counitη</a> <a id="4148" href="Categories.Adjoint.Equivalents.html#4148" class="Bound">X</a> <a id="4150" class="Symbol">=</a> <a id="4152" href="Categories.NaturalTransformation.Core.html#783" class="Function">⇐.η</a> <a id="4156" class="Symbol">(</a><a id="4157" href="Categories.Functor.Core.html#432" class="Field">R.F₀</a> <a id="4162" href="Categories.Adjoint.Equivalents.html#4148" class="Bound">X</a> <a id="4164" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="4166" href="Categories.Adjoint.Equivalents.html#4148" class="Bound">X</a><a id="4167" class="Symbol">)</a>
|
|||
|
|
|||
|
<a id="4176" href="Categories.Adjoint.Equivalents.html#4176" class="Function">counit</a> <a id="4183" class="Symbol">:</a> <a id="4185" href="Categories.NaturalTransformation.Core.html#466" class="Record">NaturalTransformation</a> <a id="4207" class="Symbol">(</a><a id="4208" href="Categories.Adjoint.Equivalents.html#1669" class="Bound">L</a> <a id="4210" href="Categories.Functor.html#747" class="Function Operator">∘F</a> <a id="4213" href="Categories.Adjoint.Equivalents.html#1687" class="Bound">R</a><a id="4214" class="Symbol">)</a> <a id="4216" href="Categories.Adjoint.Equivalents.html#833" class="Function">idF</a>
|
|||
|
<a id="4226" href="Categories.Adjoint.Equivalents.html#4176" class="Function">counit</a> <a id="4233" class="Symbol">=</a> <a id="4235" href="Categories.NaturalTransformation.Core.html#1750" class="Function">ntHelper</a> <a id="4244" class="Keyword">record</a>
|
|||
|
<a id="4259" class="Symbol">{</a> <a id="4261" href="Categories.NaturalTransformation.Core.html#1637" class="Field">η</a> <a id="4269" class="Symbol">=</a> <a id="4271" class="Symbol">λ</a> <a id="4273" href="Categories.Adjoint.Equivalents.html#4273" class="Bound">X</a> <a id="4275" class="Symbol">→</a> <a id="4277" href="Categories.Adjoint.Equivalents.html#4057" class="Function">counitη</a> <a id="4285" href="Categories.Adjoint.Equivalents.html#4273" class="Bound">X</a> <a id="4287" href="Function.Bundles.html#15133" class="Function Operator">⟨$⟩</a> <a id="4291" href="Categories.Category.Core.html#630" class="Function">C.id</a>
|
|||
|
<a id="4304" class="Symbol">;</a> <a id="4306" href="Categories.NaturalTransformation.Core.html#1681" class="Field">commute</a> <a id="4314" class="Symbol">=</a> <a id="4316" class="Symbol">λ</a> <a id="4318" class="Symbol">{</a><a id="4319" href="Categories.Adjoint.Equivalents.html#4319" class="Bound">X</a><a id="4320" class="Symbol">}</a> <a id="4322" class="Symbol">{</a><a id="4323" href="Categories.Adjoint.Equivalents.html#4323" class="Bound">Y</a><a id="4324" class="Symbol">}</a> <a id="4326" href="Categories.Adjoint.Equivalents.html#4326" class="Bound">f</a> <a id="4328" class="Symbol">→</a> <a id="4330" href="Relation.Binary.Reasoning.Syntax.html#1510" class="Function Operator">begin</a>
|
|||
|
<a id="4346" class="Symbol">(</a><a id="4347" href="Categories.Adjoint.Equivalents.html#4057" class="Function">counitη</a> <a id="4355" href="Categories.Adjoint.Equivalents.html#4323" class="Bound">Y</a> <a id="4357" href="Function.Bundles.html#15133" class="Function Operator">⟨$⟩</a> <a id="4361" href="Categories.Category.Core.html#630" class="Function">C.id</a><a id="4365" class="Symbol">)</a> <a id="4367" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="4369" href="Categories.Functor.Core.html#455" class="Function">L.F₁</a> <a id="4374" class="Symbol">(</a><a id="4375" href="Categories.Functor.Core.html#455" class="Field">R.F₁</a> <a id="4380" href="Categories.Adjoint.Equivalents.html#4326" class="Bound">f</a><a id="4381" class="Symbol">)</a> <a id="4397" href="Relation.Binary.Reasoning.Syntax.html#7400" class="Function">≈˘⟨</a> <a id="4401" href="Categories.Category.Core.html#1096" class="Function">identityˡ</a> <a id="4411" href="Relation.Binary.Reasoning.Syntax.html#7400" class="Function">⟩</a>
|
|||
|
<a id="4423" href="Categories.Category.Core.html#630" class="Function">id</a> <a id="4426" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="4428" class="Symbol">(</a><a id="4429" href="Categories.Adjoint.Equivalents.html#4057" class="Function">counitη</a> <a id="4437" href="Categories.Adjoint.Equivalents.html#4323" class="Bound">Y</a> <a id="4439" href="Function.Bundles.html#15133" class="Function Operator">⟨$⟩</a> <a id="4443" href="Categories.Category.Core.html#630" class="Function">C.id</a><a id="4447" class="Symbol">)</a> <a id="4449" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="4451" href="Categories.Functor.Core.html#455" class="Function">L.F₁</a> <a id="4456" class="Symbol">(</a><a id="4457" href="Categories.Functor.Core.html#455" class="Field">R.F₁</a> <a id="4462" href="Categories.Adjoint.Equivalents.html#4326" class="Bound">f</a><a id="4463" class="Symbol">)</a> <a id="4474" href="Relation.Binary.Reasoning.Syntax.html#7400" class="Function">≈˘⟨</a> <a id="4478" href="Categories.NaturalTransformation.Core.html#827" class="Function">⇐.commute</a> <a id="4488" class="Symbol">(</a><a id="4489" href="Categories.Functor.Core.html#455" class="Field">R.F₁</a> <a id="4494" href="Categories.Adjoint.Equivalents.html#4326" class="Bound">f</a> <a id="4496" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="4498" href="Categories.Category.Core.html#630" class="Function">D.id</a><a id="4502" class="Symbol">)</a> <a id="4504" href="Relation.Binary.Reasoning.Syntax.html#7400" class="Function">⟩</a>
|
|||
|
<a id="4516" href="Categories.NaturalTransformation.Core.html#783" class="Function">⇐.η</a> <a id="4520" class="Symbol">(</a><a id="4521" href="Categories.Functor.Core.html#432" class="Field">R.F₀</a> <a id="4526" href="Categories.Adjoint.Equivalents.html#4319" class="Bound">X</a> <a id="4528" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="4530" href="Categories.Adjoint.Equivalents.html#4323" class="Bound">Y</a><a id="4531" class="Symbol">)</a> <a id="4533" href="Function.Bundles.html#15133" class="Function Operator">⟨$⟩</a> <a id="4537" class="Symbol">(</a><a id="4538" href="Categories.Functor.Core.html#455" class="Field">R.F₁</a> <a id="4543" href="Categories.Category.Core.html#630" class="Function">id</a> <a id="4546" href="Categories.Category.Core.html#656" class="Function Operator">C.∘</a> <a id="4550" href="Categories.Category.Core.html#630" class="Function">C.id</a> <a id="4555" href="Categories.Category.Core.html#656" class="Function Operator">C.∘</a> <a id="4559" href="Categories.Functor.Core.html#455" class="Field">R.F₁</a> <a id="4564" href="Categories.Adjoint.Equivalents.html#4326" class="Bound">f</a><a id="4565" class="Symbol">)</a> <a id="4567" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">≈⟨</a> <a id="4570" href="Function.Bundles.html#2113" class="Field">cong</a> <a id="4575" class="Symbol">(</a><a id="4576" href="Categories.NaturalTransformation.Core.html#783" class="Function">⇐.η</a> <a id="4580" class="Symbol">(</a><a id="4581" href="Categories.Functor.Core.html#432" class="Field">R.F₀</a> <a id="4586" href="Categories.Adjoint.Equivalents.html#4319" class="Bound">X</a> <a id="4588" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="4590" href="Categories.Adjoint.Equivalents.html#4323" class="Bound">Y</a><a id="4591" class="Symbol">))</a> <a id="4594" class="Symbol">(</a><a id="4595" href="Relation.Binary.Structures.html#1648" class="Function">C.Equiv.trans</a> <a id="4609" class="Symbol">(</a><a id="4610" href="Categories.Morphism.Reasoning.Core.html#2948" class="Function">MR.elimˡ</a> <a id="4619" href="Categories.Adjoint.Equivalents.html#1626" class="Bound">C</a> <a id="4621" href="Categories.Functor.Core.html#511" class="Field">R.identity</a><a id="4631" class="Symbol">)</a> <a id="4633" href="Categories.Category.Core.html#1096" class="Function">C.identityˡ</a><a id="4644" class="Symbol">)</a> <a id="4646" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">⟩</a>
|
|||
|
<a id="4658" href="Categories.NaturalTransformation.Core.html#783" class="Function">⇐.η</a> <a id="4662" class="Symbol">(</a><a id="4663" href="Categories.Functor.Core.html#432" class="Field">R.F₀</a> <a id="4668" href="Categories.Adjoint.Equivalents.html#4319" class="Bound">X</a> <a id="4670" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="4672" href="Categories.Adjoint.Equivalents.html#4323" class="Bound">Y</a><a id="4673" class="Symbol">)</a> <a id="4675" href="Function.Bundles.html#15133" class="Function Operator">⟨$⟩</a> <a id="4679" href="Categories.Functor.Core.html#455" class="Field">R.F₁</a> <a id="4684" href="Categories.Adjoint.Equivalents.html#4326" class="Bound">f</a> <a id="4709" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">≈⟨</a> <a id="4712" href="Function.Bundles.html#2113" class="Field">cong</a> <a id="4717" class="Symbol">(</a><a id="4718" href="Categories.NaturalTransformation.Core.html#783" class="Function">⇐.η</a> <a id="4722" class="Symbol">(</a><a id="4723" href="Categories.Functor.Core.html#432" class="Field">R.F₀</a> <a id="4728" href="Categories.Adjoint.Equivalents.html#4319" class="Bound">X</a> <a id="4730" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="4732" href="Categories.Adjoint.Equivalents.html#4323" class="Bound">Y</a><a id="4733" class="Symbol">))</a> <a id="4736" class="Symbol">(</a><a id="4737" href="Categories.Morphism.Reasoning.Core.html#2899" class="Function">MR.introʳ</a> <a id="4747" href="Categories.Adjoint.Equivalents.html#1626" class="Bound">C</a> <a id="4749" href="Categories.Category.Core.html#1096" class="Function">C.identityˡ</a><a id="4760" class="Symbol">)</a> <a id="4762" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">⟩</a>
|
|||
|
<a id="4774" href="Categories.NaturalTransformation.Core.html#783" class="Function">⇐.η</a> <a id="4778" class="Symbol">(</a><a id="4779" href="Categories.Functor.Core.html#432" class="Field">R.F₀</a> <a id="4784" href="Categories.Adjoint.Equivalents.html#4319" class="Bound">X</a> <a id="4786" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="4788" href="Categories.Adjoint.Equivalents.html#4323" class="Bound">Y</a><a id="4789" class="Symbol">)</a> <a id="4791" href="Function.Bundles.html#15133" class="Function Operator">⟨$⟩</a> <a id="4795" class="Symbol">(</a><a id="4796" href="Categories.Functor.Core.html#455" class="Field">R.F₁</a> <a id="4801" href="Categories.Adjoint.Equivalents.html#4326" class="Bound">f</a> <a id="4803" href="Categories.Category.Core.html#656" class="Function Operator">C.∘</a> <a id="4807" href="Categories.Category.Core.html#630" class="Function">C.id</a> <a id="4812" href="Categories.Category.Core.html#656" class="Function Operator">C.∘</a> <a id="4816" href="Categories.Category.Core.html#630" class="Function">C.id</a><a id="4820" class="Symbol">)</a> <a id="4825" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">≈⟨</a> <a id="4828" href="Categories.NaturalTransformation.Core.html#827" class="Function">⇐.commute</a> <a id="4838" class="Symbol">(</a><a id="4839" href="Categories.Category.Core.html#630" class="Function">C.id</a> <a id="4844" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="4846" href="Categories.Adjoint.Equivalents.html#4326" class="Bound">f</a><a id="4847" class="Symbol">)</a> <a id="4849" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">⟩</a>
|
|||
|
<a id="4861" href="Categories.Adjoint.Equivalents.html#4326" class="Bound">f</a> <a id="4863" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="4865" class="Symbol">(</a><a id="4866" href="Categories.Adjoint.Equivalents.html#4057" class="Function">counitη</a> <a id="4874" href="Categories.Adjoint.Equivalents.html#4319" class="Bound">X</a> <a id="4876" href="Function.Bundles.html#15133" class="Function Operator">⟨$⟩</a> <a id="4880" href="Categories.Category.Core.html#630" class="Function">C.id</a><a id="4884" class="Symbol">)</a> <a id="4886" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="4888" href="Categories.Functor.Core.html#455" class="Function">L.F₁</a> <a id="4893" href="Categories.Category.Core.html#630" class="Function">C.id</a> <a id="4912" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">≈⟨</a> <a id="4915" href="Categories.Category.Core.html#2734" class="Function Operator">refl⟩∘⟨</a> <a id="4923" href="Categories.Morphism.Reasoning.Core.html#2786" class="Function">elimʳ</a> <a id="4929" href="Categories.Functor.Core.html#511" class="Function">L.identity</a> <a id="4940" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">⟩</a>
|
|||
|
<a id="4952" href="Categories.Adjoint.Equivalents.html#4326" class="Bound">f</a> <a id="4954" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="4956" class="Symbol">(</a><a id="4957" href="Categories.Adjoint.Equivalents.html#4057" class="Function">counitη</a> <a id="4965" href="Categories.Adjoint.Equivalents.html#4319" class="Bound">X</a> <a id="4967" href="Function.Bundles.html#15133" class="Function Operator">⟨$⟩</a> <a id="4971" href="Categories.Category.Core.html#630" class="Function">C.id</a><a id="4975" class="Symbol">)</a> <a id="5003" href="Relation.Binary.Reasoning.Syntax.html#12283" class="Function Operator">∎</a>
|
|||
|
<a id="5013" class="Symbol">}</a>
|
|||
|
<a id="5023" class="Keyword">where</a> <a id="5029" class="Keyword">open</a> <a id="5034" href="Categories.Adjoint.Equivalents.html#1757" class="Module">D</a>
|
|||
|
<a id="5050" class="Keyword">open</a> <a id="5055" href="Categories.Category.Core.html#2462" class="Module">HomReasoning</a>
|
|||
|
<a id="5082" class="Keyword">open</a> <a id="5087" href="Categories.Morphism.Reasoning.html" class="Module">MR</a> <a id="5090" href="Categories.Adjoint.Equivalents.html#1647" class="Bound">D</a>
|
|||
|
|
|||
|
<a id="5097" href="Categories.Adjoint.Equivalents.html#5097" class="Function">Hom-NI⇒Adjoint</a> <a id="5112" class="Symbol">:</a> <a id="5114" href="Categories.Adjoint.Equivalents.html#1669" class="Bound">L</a> <a id="5116" href="Categories.Adjoint.html#7818" class="Function Operator">⊣</a> <a id="5118" href="Categories.Adjoint.Equivalents.html#1687" class="Bound">R</a>
|
|||
|
<a id="5124" href="Categories.Adjoint.Equivalents.html#5097" class="Function">Hom-NI⇒Adjoint</a> <a id="5139" class="Symbol">=</a> <a id="5141" class="Keyword">record</a>
|
|||
|
<a id="5154" class="Symbol">{</a> <a id="5156" href="Categories.Adjoint.html#1473" class="Field">unit</a> <a id="5163" class="Symbol">=</a> <a id="5165" href="Categories.Adjoint.Equivalents.html#3140" class="Function">unit</a>
|
|||
|
<a id="5176" class="Symbol">;</a> <a id="5178" href="Categories.Adjoint.html#1521" class="Field">counit</a> <a id="5185" class="Symbol">=</a> <a id="5187" href="Categories.Adjoint.Equivalents.html#4176" class="Function">counit</a>
|
|||
|
<a id="5200" class="Symbol">;</a> <a id="5202" href="Categories.Adjoint.html#1669" class="Field">zig</a> <a id="5209" class="Symbol">=</a> <a id="5211" class="Symbol">λ</a> <a id="5213" class="Symbol">{</a><a id="5214" href="Categories.Adjoint.Equivalents.html#5214" class="Bound">A</a><a id="5215" class="Symbol">}</a> <a id="5217" class="Symbol">→</a>
|
|||
|
<a id="5227" class="Keyword">let</a> <a id="5231" class="Keyword">open</a> <a id="5236" href="Categories.Adjoint.Equivalents.html#1757" class="Module">D</a>
|
|||
|
<a id="5250" class="Keyword">open</a> <a id="5255" href="Categories.Category.Core.html#2462" class="Module">HomReasoning</a>
|
|||
|
<a id="5280" class="Keyword">open</a> <a id="5285" href="Categories.Category.Core.html#1530" class="Module">Equiv</a>
|
|||
|
<a id="5303" class="Keyword">open</a> <a id="5308" href="Categories.Morphism.Reasoning.html" class="Module">MR</a> <a id="5311" href="Categories.Adjoint.Equivalents.html#1647" class="Bound">D</a>
|
|||
|
<a id="5321" class="Keyword">in</a> <a id="5324" href="Relation.Binary.Reasoning.Syntax.html#1510" class="Function Operator">begin</a>
|
|||
|
<a id="5340" href="Categories.NaturalTransformation.Core.html#783" class="Field">η</a> <a id="5342" href="Categories.Adjoint.Equivalents.html#4176" class="Function">counit</a> <a id="5349" class="Symbol">(</a><a id="5350" href="Categories.Functor.Core.html#432" class="Function">L.F₀</a> <a id="5355" href="Categories.Adjoint.Equivalents.html#5214" class="Bound">A</a><a id="5356" class="Symbol">)</a> <a id="5358" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="5360" href="Categories.Functor.Core.html#455" class="Function">L.F₁</a> <a id="5365" class="Symbol">(</a><a id="5366" href="Categories.NaturalTransformation.Core.html#783" class="Field">η</a> <a id="5368" href="Categories.Adjoint.Equivalents.html#3140" class="Function">unit</a> <a id="5373" href="Categories.Adjoint.Equivalents.html#5214" class="Bound">A</a><a id="5374" class="Symbol">)</a> <a id="5381" href="Relation.Binary.Reasoning.Syntax.html#7400" class="Function">≈˘⟨</a> <a id="5385" href="Categories.Category.Core.html#1096" class="Function">identityˡ</a> <a id="5395" href="Relation.Binary.Reasoning.Syntax.html#7400" class="Function">⟩</a>
|
|||
|
<a id="5407" href="Categories.Category.Core.html#630" class="Function">id</a> <a id="5410" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="5412" href="Categories.NaturalTransformation.Core.html#783" class="Field">η</a> <a id="5414" href="Categories.Adjoint.Equivalents.html#4176" class="Function">counit</a> <a id="5421" class="Symbol">(</a><a id="5422" href="Categories.Functor.Core.html#432" class="Function">L.F₀</a> <a id="5427" href="Categories.Adjoint.Equivalents.html#5214" class="Bound">A</a><a id="5428" class="Symbol">)</a> <a id="5430" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="5432" href="Categories.Functor.Core.html#455" class="Function">L.F₁</a> <a id="5437" class="Symbol">(</a><a id="5438" href="Categories.NaturalTransformation.Core.html#783" class="Field">η</a> <a id="5440" href="Categories.Adjoint.Equivalents.html#3140" class="Function">unit</a> <a id="5445" href="Categories.Adjoint.Equivalents.html#5214" class="Bound">A</a><a id="5446" class="Symbol">)</a> <a id="5448" href="Relation.Binary.Reasoning.Syntax.html#7400" class="Function">≈˘⟨</a> <a id="5452" href="Categories.NaturalTransformation.Core.html#827" class="Function">⇐.commute</a> <a id="5462" class="Symbol">(</a><a id="5463" href="Categories.NaturalTransformation.Core.html#783" class="Field">η</a> <a id="5465" href="Categories.Adjoint.Equivalents.html#3140" class="Function">unit</a> <a id="5470" href="Categories.Adjoint.Equivalents.html#5214" class="Bound">A</a> <a id="5472" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="5474" href="Categories.Category.Core.html#630" class="Function">id</a><a id="5476" class="Symbol">)</a> <a id="5478" href="Relation.Binary.Reasoning.Syntax.html#7400" class="Function">⟩</a>
|
|||
|
<a id="5490" href="Categories.NaturalTransformation.Core.html#783" class="Function">⇐.η</a> <a id="5494" class="Symbol">(</a><a id="5495" href="Categories.Adjoint.Equivalents.html#5214" class="Bound">A</a> <a id="5497" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="5499" href="Categories.Functor.Core.html#432" class="Function">L.F₀</a> <a id="5504" href="Categories.Adjoint.Equivalents.html#5214" class="Bound">A</a><a id="5505" class="Symbol">)</a> <a id="5507" href="Function.Bundles.html#15133" class="Function Operator">⟨$⟩</a> <a id="5511" class="Symbol">(</a><a id="5512" href="Categories.Functor.Core.html#455" class="Field">R.F₁</a> <a id="5517" href="Categories.Category.Core.html#630" class="Function">id</a> <a id="5520" href="Categories.Category.Core.html#656" class="Function Operator">C.∘</a> <a id="5524" href="Categories.Category.Core.html#630" class="Function">C.id</a> <a id="5529" href="Categories.Category.Core.html#656" class="Function Operator">C.∘</a> <a id="5533" href="Categories.NaturalTransformation.Core.html#783" class="Field">η</a> <a id="5535" href="Categories.Adjoint.Equivalents.html#3140" class="Function">unit</a> <a id="5540" href="Categories.Adjoint.Equivalents.html#5214" class="Bound">A</a><a id="5541" class="Symbol">)</a>
|
|||
|
<a id="5594" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">≈⟨</a> <a id="5597" href="Function.Bundles.html#2113" class="Field">cong</a> <a id="5602" class="Symbol">(</a><a id="5603" href="Categories.NaturalTransformation.Core.html#783" class="Function">⇐.η</a> <a id="5607" class="Symbol">(</a><a id="5608" href="Categories.Adjoint.Equivalents.html#5214" class="Bound">A</a> <a id="5610" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="5612" href="Categories.Functor.Core.html#432" class="Function">L.F₀</a> <a id="5617" href="Categories.Adjoint.Equivalents.html#5214" class="Bound">A</a><a id="5618" class="Symbol">))</a> <a id="5621" class="Symbol">(</a><a id="5622" href="Relation.Binary.Structures.html#1648" class="Function">C.Equiv.trans</a> <a id="5636" class="Symbol">(</a><a id="5637" href="Categories.Morphism.Reasoning.Core.html#2948" class="Function">MR.elimˡ</a> <a id="5646" href="Categories.Adjoint.Equivalents.html#1626" class="Bound">C</a> <a id="5648" href="Categories.Functor.Core.html#511" class="Field">R.identity</a><a id="5658" class="Symbol">)</a> <a id="5660" href="Categories.Category.Core.html#1096" class="Function">C.identityˡ</a><a id="5671" class="Symbol">)</a> <a id="5673" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">⟩</a>
|
|||
|
<a id="5685" href="Categories.NaturalTransformation.Core.html#783" class="Function">⇐.η</a> <a id="5689" class="Symbol">(</a><a id="5690" href="Categories.Adjoint.Equivalents.html#5214" class="Bound">A</a> <a id="5692" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="5694" href="Categories.Functor.Core.html#432" class="Function">L.F₀</a> <a id="5699" href="Categories.Adjoint.Equivalents.html#5214" class="Bound">A</a><a id="5700" class="Symbol">)</a> <a id="5702" href="Function.Bundles.html#15133" class="Function Operator">⟨$⟩</a> <a id="5706" href="Categories.NaturalTransformation.Core.html#783" class="Field">η</a> <a id="5708" href="Categories.Adjoint.Equivalents.html#3140" class="Function">unit</a> <a id="5713" href="Categories.Adjoint.Equivalents.html#5214" class="Bound">A</a> <a id="5726" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">≈⟨</a> <a id="5729" href="Categories.Morphism.html#1586" class="Function">isoˡ</a> <a id="5734" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">⟩</a>
|
|||
|
<a id="5746" href="Categories.Category.Core.html#630" class="Function">id</a>
|
|||
|
<a id="5800" href="Relation.Binary.Reasoning.Syntax.html#12283" class="Function Operator">∎</a>
|
|||
|
<a id="5808" class="Symbol">;</a> <a id="5810" href="Categories.Adjoint.html#1742" class="Field">zag</a> <a id="5817" class="Symbol">=</a> <a id="5819" class="Symbol">λ</a> <a id="5821" class="Symbol">{</a><a id="5822" href="Categories.Adjoint.Equivalents.html#5822" class="Bound">B</a><a id="5823" class="Symbol">}</a> <a id="5825" class="Symbol">→</a>
|
|||
|
<a id="5835" class="Keyword">let</a> <a id="5839" class="Keyword">open</a> <a id="5844" href="Categories.Adjoint.Equivalents.html#1731" class="Module">C</a>
|
|||
|
<a id="5858" class="Keyword">open</a> <a id="5863" href="Categories.Category.Core.html#2462" class="Module">HomReasoning</a>
|
|||
|
<a id="5888" class="Keyword">open</a> <a id="5893" href="Categories.Category.Core.html#1530" class="Module">Equiv</a>
|
|||
|
<a id="5911" class="Keyword">open</a> <a id="5916" href="Categories.Morphism.Reasoning.html" class="Module">MR</a> <a id="5919" href="Categories.Adjoint.Equivalents.html#1626" class="Bound">C</a>
|
|||
|
<a id="5929" class="Keyword">in</a> <a id="5932" href="Relation.Binary.Reasoning.Syntax.html#1510" class="Function Operator">begin</a>
|
|||
|
<a id="5948" href="Categories.Functor.Core.html#455" class="Field">R.F₁</a> <a id="5953" class="Symbol">(</a><a id="5954" href="Categories.NaturalTransformation.Core.html#783" class="Field">η</a> <a id="5956" href="Categories.Adjoint.Equivalents.html#4176" class="Function">counit</a> <a id="5963" href="Categories.Adjoint.Equivalents.html#5822" class="Bound">B</a><a id="5964" class="Symbol">)</a> <a id="5966" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="5968" href="Categories.NaturalTransformation.Core.html#783" class="Field">η</a> <a id="5970" href="Categories.Adjoint.Equivalents.html#3140" class="Function">unit</a> <a id="5975" class="Symbol">(</a><a id="5976" href="Categories.Functor.Core.html#432" class="Field">R.F₀</a> <a id="5981" href="Categories.Adjoint.Equivalents.html#5822" class="Bound">B</a><a id="5982" class="Symbol">)</a> <a id="5989" href="Relation.Binary.Reasoning.Syntax.html#7400" class="Function">≈˘⟨</a> <a id="5993" href="Categories.Category.Core.html#2734" class="Function Operator">refl⟩∘⟨</a> <a id="6001" href="Categories.Category.Core.html#1145" class="Function">identityʳ</a> <a id="6011" href="Relation.Binary.Reasoning.Syntax.html#7400" class="Function">⟩</a>
|
|||
|
<a id="6023" href="Categories.Functor.Core.html#455" class="Field">R.F₁</a> <a id="6028" class="Symbol">(</a><a id="6029" href="Categories.NaturalTransformation.Core.html#783" class="Field">η</a> <a id="6031" href="Categories.Adjoint.Equivalents.html#4176" class="Function">counit</a> <a id="6038" href="Categories.Adjoint.Equivalents.html#5822" class="Bound">B</a><a id="6039" class="Symbol">)</a> <a id="6041" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="6043" href="Categories.NaturalTransformation.Core.html#783" class="Field">η</a> <a id="6045" href="Categories.Adjoint.Equivalents.html#3140" class="Function">unit</a> <a id="6050" class="Symbol">(</a><a id="6051" href="Categories.Functor.Core.html#432" class="Field">R.F₀</a> <a id="6056" href="Categories.Adjoint.Equivalents.html#5822" class="Bound">B</a><a id="6057" class="Symbol">)</a> <a id="6059" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="6061" href="Categories.Category.Core.html#630" class="Function">id</a> <a id="6064" href="Relation.Binary.Reasoning.Syntax.html#7400" class="Function">≈˘⟨</a> <a id="6068" href="Categories.NaturalTransformation.Core.html#827" class="Function">⇒.commute</a> <a id="6078" class="Symbol">(</a><a id="6079" href="Categories.Category.Core.html#630" class="Function">id</a> <a id="6082" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="6084" href="Categories.NaturalTransformation.Core.html#783" class="Field">η</a> <a id="6086" href="Categories.Adjoint.Equivalents.html#4176" class="Function">counit</a> <a id="6093" href="Categories.Adjoint.Equivalents.html#5822" class="Bound">B</a><a id="6094" class="Symbol">)</a> <a id="6096" href="Relation.Binary.Reasoning.Syntax.html#7400" class="Function">⟩</a>
|
|||
|
<a id="6108" href="Categories.NaturalTransformation.Core.html#783" class="Function">⇒.η</a> <a id="6112" class="Symbol">(</a><a id="6113" href="Categories.Functor.Core.html#432" class="Field">R.F₀</a> <a id="6118" href="Categories.Adjoint.Equivalents.html#5822" class="Bound">B</a> <a id="6120" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="6122" href="Categories.Adjoint.Equivalents.html#5822" class="Bound">B</a><a id="6123" class="Symbol">)</a> <a id="6125" href="Function.Bundles.html#15133" class="Function Operator">⟨$⟩</a> <a id="6129" class="Symbol">(</a><a id="6130" href="Categories.NaturalTransformation.Core.html#783" class="Field">η</a> <a id="6132" href="Categories.Adjoint.Equivalents.html#4176" class="Function">counit</a> <a id="6139" href="Categories.Adjoint.Equivalents.html#5822" class="Bound">B</a> <a id="6141" href="Categories.Category.Core.html#656" class="Function Operator">D.∘</a> <a id="6145" href="Categories.Category.Core.html#630" class="Function">D.id</a> <a id="6150" href="Categories.Category.Core.html#656" class="Function Operator">D.∘</a> <a id="6154" href="Categories.Functor.Core.html#455" class="Function">L.F₁</a> <a id="6159" href="Categories.Category.Core.html#630" class="Function">id</a><a id="6161" class="Symbol">)</a>
|
|||
|
<a id="6214" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">≈⟨</a> <a id="6217" href="Function.Bundles.html#2113" class="Field">cong</a> <a id="6222" class="Symbol">(</a><a id="6223" href="Categories.NaturalTransformation.Core.html#783" class="Function">⇒.η</a> <a id="6227" class="Symbol">(</a><a id="6228" href="Categories.Functor.Core.html#432" class="Field">R.F₀</a> <a id="6233" href="Categories.Adjoint.Equivalents.html#5822" class="Bound">B</a> <a id="6235" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="6237" href="Categories.Adjoint.Equivalents.html#5822" class="Bound">B</a><a id="6238" class="Symbol">))</a> <a id="6241" class="Symbol">(</a><a id="6242" href="Categories.Morphism.Reasoning.Core.html#2786" class="Function">MR.elimʳ</a> <a id="6251" href="Categories.Adjoint.Equivalents.html#1647" class="Bound">D</a> <a id="6253" class="Symbol">(</a><a id="6254" href="Categories.Morphism.Reasoning.Core.html#2786" class="Function">MR.elimʳ</a> <a id="6263" href="Categories.Adjoint.Equivalents.html#1647" class="Bound">D</a> <a id="6265" href="Categories.Functor.Core.html#511" class="Function">L.identity</a><a id="6275" class="Symbol">))</a> <a id="6278" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">⟩</a>
|
|||
|
<a id="6290" href="Categories.NaturalTransformation.Core.html#783" class="Function">⇒.η</a> <a id="6294" class="Symbol">(</a><a id="6295" href="Categories.Functor.Core.html#432" class="Field">R.F₀</a> <a id="6300" href="Categories.Adjoint.Equivalents.html#5822" class="Bound">B</a> <a id="6302" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="6304" href="Categories.Adjoint.Equivalents.html#5822" class="Bound">B</a><a id="6305" class="Symbol">)</a> <a id="6307" href="Function.Bundles.html#15133" class="Function Operator">⟨$⟩</a> <a id="6311" href="Categories.NaturalTransformation.Core.html#783" class="Field">η</a> <a id="6313" href="Categories.Adjoint.Equivalents.html#4176" class="Function">counit</a> <a id="6320" href="Categories.Adjoint.Equivalents.html#5822" class="Bound">B</a> <a id="6331" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">≈⟨</a> <a id="6334" href="Categories.Morphism.html#1612" class="Function">isoʳ</a> <a id="6339" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">⟩</a>
|
|||
|
<a id="6351" href="Categories.Category.Core.html#630" class="Function">id</a> <a id="6392" href="Relation.Binary.Reasoning.Syntax.html#12283" class="Function Operator">∎</a>
|
|||
|
<a id="6400" class="Symbol">}</a>
|
|||
|
<a id="6408" class="Keyword">where</a> <a id="6414" class="Keyword">module</a> <a id="6421" href="Categories.Adjoint.Equivalents.html#6421" class="Module">i</a> <a id="6423" class="Symbol">{</a><a id="6424" href="Categories.Adjoint.Equivalents.html#6424" class="Bound">X</a><a id="6425" class="Symbol">}</a> <a id="6427" class="Symbol">=</a> <a id="6429" href="Categories.Morphism.html#1528" class="Module">Iso</a> <a id="6433" class="Symbol">(</a><a id="6434" href="Categories.NaturalTransformation.NaturalIsomorphism.html#1051" class="Field">iso</a> <a id="6438" href="Categories.Adjoint.Equivalents.html#6424" class="Bound">X</a><a id="6439" class="Symbol">)</a>
|
|||
|
<a id="6453" class="Keyword">open</a> <a id="6458" href="Categories.Adjoint.Equivalents.html#6421" class="Module">i</a>
|
|||
|
|
|||
|
<a id="6461" class="Comment">-- the general case from isomorphic Hom setoids to adjoint functors</a>
|
|||
|
<a id="6529" class="Keyword">module</a> <a id="6536" href="Categories.Adjoint.Equivalents.html#6536" class="Module">_</a> <a id="6538" class="Symbol">{</a><a id="6539" href="Categories.Adjoint.Equivalents.html#6539" class="Bound">C</a> <a id="6541" class="Symbol">:</a> <a id="6543" href="Categories.Category.Core.html#442" class="Record">Category</a> <a id="6552" href="Categories.Adjoint.Equivalents.html#1335" class="Generalizable">o</a> <a id="6554" href="Categories.Adjoint.Equivalents.html#1343" class="Generalizable">ℓ</a> <a id="6556" href="Categories.Adjoint.Equivalents.html#1351" class="Generalizable">e</a><a id="6557" class="Symbol">}</a> <a id="6559" class="Symbol">{</a><a id="6560" href="Categories.Adjoint.Equivalents.html#6560" class="Bound">D</a> <a id="6562" class="Symbol">:</a> <a id="6564" href="Categories.Category.Core.html#442" class="Record">Category</a> <a id="6573" href="Categories.Adjoint.Equivalents.html#1337" class="Generalizable">o′</a> <a id="6576" href="Categories.Adjoint.Equivalents.html#1345" class="Generalizable">ℓ′</a> <a id="6579" href="Categories.Adjoint.Equivalents.html#1353" class="Generalizable">e′</a><a id="6581" class="Symbol">}</a> <a id="6583" class="Symbol">{</a><a id="6584" href="Categories.Adjoint.Equivalents.html#6584" class="Bound">L</a> <a id="6586" class="Symbol">:</a> <a id="6588" href="Categories.Functor.Core.html#248" class="Record">Functor</a> <a id="6596" href="Categories.Adjoint.Equivalents.html#6539" class="Bound">C</a> <a id="6598" href="Categories.Adjoint.Equivalents.html#6560" class="Bound">D</a><a id="6599" class="Symbol">}</a> <a id="6601" class="Symbol">{</a><a id="6602" href="Categories.Adjoint.Equivalents.html#6602" class="Bound">R</a> <a id="6604" class="Symbol">:</a> <a id="6606" href="Categories.Functor.Core.html#248" class="Record">Functor</a> <a id="6614" href="Categories.Adjoint.Equivalents.html#6560" class="Bound">D</a> <a id="6616" href="Categories.Adjoint.Equivalents.html#6539" class="Bound">C</a><a id="6617" class="Symbol">}</a> <a id="6619" class="Keyword">where</a>
|
|||
|
<a id="6627" class="Keyword">private</a>
|
|||
|
<a id="6639" class="Keyword">module</a> <a id="6646" href="Categories.Adjoint.Equivalents.html#6646" class="Module">C</a> <a id="6648" class="Symbol">=</a> <a id="6650" href="Categories.Category.Core.html#442" class="Module">Category</a> <a id="6659" href="Categories.Adjoint.Equivalents.html#6539" class="Bound">C</a>
|
|||
|
<a id="6665" class="Keyword">module</a> <a id="6672" href="Categories.Adjoint.Equivalents.html#6672" class="Module">D</a> <a id="6674" class="Symbol">=</a> <a id="6676" href="Categories.Category.Core.html#442" class="Module">Category</a> <a id="6685" href="Categories.Adjoint.Equivalents.html#6560" class="Bound">D</a>
|
|||
|
<a id="6691" class="Keyword">module</a> <a id="6698" href="Categories.Adjoint.Equivalents.html#6698" class="Module">L</a> <a id="6700" class="Symbol">=</a> <a id="6702" href="Categories.Functor.Core.html#248" class="Module">Functor</a> <a id="6710" href="Categories.Adjoint.Equivalents.html#6584" class="Bound">L</a>
|
|||
|
<a id="6716" class="Keyword">module</a> <a id="6723" href="Categories.Adjoint.Equivalents.html#6723" class="Module">R</a> <a id="6725" class="Symbol">=</a> <a id="6727" href="Categories.Functor.Core.html#248" class="Module">Functor</a> <a id="6735" href="Categories.Adjoint.Equivalents.html#6602" class="Bound">R</a>
|
|||
|
<a id="6741" class="Keyword">open</a> <a id="6746" href="Categories.Functor.Core.html#248" class="Module">Functor</a>
|
|||
|
<a id="6758" class="Keyword">open</a> <a id="6763" href="Function.Bundles.html#2043" class="Module">Func</a>
|
|||
|
|
|||
|
<a id="6773" href="Categories.Adjoint.Equivalents.html#6773" class="Function">Hom[L-,-]</a> <a id="6783" class="Symbol">:</a> <a id="6785" href="Categories.Functor.Bifunctor.html#441" class="Function">Bifunctor</a> <a id="6795" href="Categories.Category.Core.html#3132" class="Function">C.op</a> <a id="6800" href="Categories.Adjoint.Equivalents.html#6560" class="Bound">D</a> <a id="6802" class="Symbol">(</a><a id="6803" href="Categories.Category.Instance.Setoids.html#555" class="Function">Setoids</a> <a id="6811" class="Symbol">_</a> <a id="6813" class="Symbol">_)</a>
|
|||
|
<a id="6820" href="Categories.Adjoint.Equivalents.html#6773" class="Function">Hom[L-,-]</a> <a id="6830" class="Symbol">=</a> <a id="6832" href="Categories.Functor.Construction.LiftSetoids.html#1046" class="Function">LiftSetoids</a> <a id="6844" href="Categories.Adjoint.Equivalents.html#6554" class="Bound">ℓ</a> <a id="6846" href="Categories.Adjoint.Equivalents.html#6556" class="Bound">e</a> <a id="6848" href="Categories.Functor.html#747" class="Function Operator">∘F</a> <a id="6851" href="Categories.Functor.Hom.html#1578" class="Function Operator">Hom[</a> <a id="6856" href="Categories.Adjoint.Equivalents.html#6560" class="Bound">D</a> <a id="6858" href="Categories.Functor.Hom.html#1578" class="Function Operator">][-,-]</a> <a id="6865" href="Categories.Functor.html#747" class="Function Operator">∘F</a> <a id="6868" class="Symbol">(</a><a id="6869" href="Categories.Functor.Core.html#816" class="Function">L.op</a> <a id="6874" href="Categories.Category.Product.html#1962" class="Function Operator">⁂</a> <a id="6876" href="Categories.Adjoint.Equivalents.html#833" class="Function">idF</a><a id="6879" class="Symbol">)</a>
|
|||
|
|
|||
|
<a id="6886" href="Categories.Adjoint.Equivalents.html#6886" class="Function">Hom[-,R-]</a> <a id="6896" class="Symbol">:</a> <a id="6898" href="Categories.Functor.Bifunctor.html#441" class="Function">Bifunctor</a> <a id="6908" href="Categories.Category.Core.html#3132" class="Function">C.op</a> <a id="6913" href="Categories.Adjoint.Equivalents.html#6560" class="Bound">D</a> <a id="6915" class="Symbol">(</a><a id="6916" href="Categories.Category.Instance.Setoids.html#555" class="Function">Setoids</a> <a id="6924" class="Symbol">_</a> <a id="6926" class="Symbol">_)</a>
|
|||
|
<a id="6933" href="Categories.Adjoint.Equivalents.html#6886" class="Function">Hom[-,R-]</a> <a id="6943" class="Symbol">=</a> <a id="6945" href="Categories.Functor.Construction.LiftSetoids.html#1046" class="Function">LiftSetoids</a> <a id="6957" href="Categories.Adjoint.Equivalents.html#6576" class="Bound">ℓ′</a> <a id="6960" href="Categories.Adjoint.Equivalents.html#6579" class="Bound">e′</a> <a id="6963" href="Categories.Functor.html#747" class="Function Operator">∘F</a> <a id="6966" href="Categories.Functor.Hom.html#1578" class="Function Operator">Hom[</a> <a id="6971" href="Categories.Adjoint.Equivalents.html#6539" class="Bound">C</a> <a id="6973" href="Categories.Functor.Hom.html#1578" class="Function Operator">][-,-]</a> <a id="6980" href="Categories.Functor.html#747" class="Function Operator">∘F</a> <a id="6983" class="Symbol">(</a><a id="6984" href="Categories.Adjoint.Equivalents.html#833" class="Function">idF</a> <a id="6988" href="Categories.Category.Product.html#1962" class="Function Operator">⁂</a> <a id="6990" href="Categories.Adjoint.Equivalents.html#6602" class="Bound">R</a><a id="6991" class="Symbol">)</a>
|
|||
|
|
|||
|
<a id="6996" class="Keyword">module</a> <a id="7003" href="Categories.Adjoint.Equivalents.html#7003" class="Module">_</a> <a id="7005" class="Symbol">(</a><a id="7006" href="Categories.Adjoint.Equivalents.html#7006" class="Bound">Hni</a> <a id="7010" class="Symbol">:</a> <a id="7012" href="Categories.Adjoint.Equivalents.html#6773" class="Function">Hom[L-,-]</a> <a id="7022" href="Categories.NaturalTransformation.NaturalIsomorphism.html#3600" class="Function Operator">≃</a> <a id="7024" href="Categories.Adjoint.Equivalents.html#6886" class="Function">Hom[-,R-]</a><a id="7033" class="Symbol">)</a> <a id="7035" class="Keyword">where</a>
|
|||
|
<a id="7045" class="Keyword">open</a> <a id="7050" href="Categories.NaturalTransformation.NaturalIsomorphism.html#651" class="Module">NaturalIsomorphism</a> <a id="7069" href="Categories.Adjoint.Equivalents.html#7006" class="Bound">Hni</a> <a id="7073" class="Keyword">using</a> <a id="7079" class="Symbol">(</a><a id="7080" class="Keyword">module</a> <a id="7087" href="Categories.NaturalTransformation.NaturalIsomorphism.html#969" class="Module">⇒</a><a id="7088" class="Symbol">;</a> <a id="7090" class="Keyword">module</a> <a id="7097" href="Categories.NaturalTransformation.NaturalIsomorphism.html#1008" class="Module">⇐</a><a id="7098" class="Symbol">;</a> <a id="7100" href="Categories.NaturalTransformation.NaturalIsomorphism.html#1051" class="Field">iso</a><a id="7103" class="Symbol">)</a>
|
|||
|
<a id="7109" class="Keyword">private</a>
|
|||
|
<a id="7123" href="Categories.Adjoint.Equivalents.html#7123" class="Function">unitη</a> <a id="7129" class="Symbol">:</a> <a id="7131" class="Symbol">∀</a> <a id="7133" href="Categories.Adjoint.Equivalents.html#7133" class="Bound">X</a> <a id="7135" class="Symbol">→</a> <a id="7137" href="Function.Bundles.html#2043" class="Record">Func</a> <a id="7142" class="Symbol">(</a><a id="7143" href="Categories.Functor.Core.html#432" class="Field">F₀</a> <a id="7146" href="Categories.Adjoint.Equivalents.html#6773" class="Function">Hom[L-,-]</a> <a id="7156" class="Symbol">(</a><a id="7157" href="Categories.Adjoint.Equivalents.html#7133" class="Bound">X</a> <a id="7159" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="7161" href="Categories.Functor.Core.html#432" class="Function">L.F₀</a> <a id="7166" href="Categories.Adjoint.Equivalents.html#7133" class="Bound">X</a><a id="7167" class="Symbol">))</a> <a id="7170" class="Symbol">(</a><a id="7171" href="Categories.Functor.Core.html#432" class="Field">F₀</a> <a id="7174" href="Categories.Adjoint.Equivalents.html#6886" class="Function">Hom[-,R-]</a> <a id="7184" class="Symbol">(</a><a id="7185" href="Categories.Adjoint.Equivalents.html#7133" class="Bound">X</a> <a id="7187" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="7189" href="Categories.Functor.Core.html#432" class="Function">L.F₀</a> <a id="7194" href="Categories.Adjoint.Equivalents.html#7133" class="Bound">X</a><a id="7195" class="Symbol">))</a>
|
|||
|
<a id="7204" href="Categories.Adjoint.Equivalents.html#7123" class="Function">unitη</a> <a id="7210" href="Categories.Adjoint.Equivalents.html#7210" class="Bound">X</a> <a id="7212" class="Symbol">=</a> <a id="7214" href="Categories.NaturalTransformation.Core.html#783" class="Function">⇒.η</a> <a id="7218" class="Symbol">(</a><a id="7219" href="Categories.Adjoint.Equivalents.html#7210" class="Bound">X</a> <a id="7221" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="7223" href="Categories.Functor.Core.html#432" class="Function">L.F₀</a> <a id="7228" href="Categories.Adjoint.Equivalents.html#7210" class="Bound">X</a><a id="7229" class="Symbol">)</a>
|
|||
|
|
|||
|
<a id="7238" href="Categories.Adjoint.Equivalents.html#7238" class="Function">unit</a> <a id="7243" class="Symbol">:</a> <a id="7245" href="Categories.NaturalTransformation.Core.html#466" class="Record">NaturalTransformation</a> <a id="7267" href="Categories.Adjoint.Equivalents.html#833" class="Function">idF</a> <a id="7271" class="Symbol">(</a><a id="7272" href="Categories.Adjoint.Equivalents.html#6602" class="Bound">R</a> <a id="7274" href="Categories.Functor.html#747" class="Function Operator">∘F</a> <a id="7277" href="Categories.Adjoint.Equivalents.html#6584" class="Bound">L</a><a id="7278" class="Symbol">)</a>
|
|||
|
<a id="7286" href="Categories.Adjoint.Equivalents.html#7238" class="Function">unit</a> <a id="7291" class="Symbol">=</a> <a id="7293" href="Categories.NaturalTransformation.Core.html#1750" class="Function">ntHelper</a> <a id="7302" class="Keyword">record</a>
|
|||
|
<a id="7317" class="Symbol">{</a> <a id="7319" href="Categories.NaturalTransformation.Core.html#1637" class="Field">η</a> <a id="7327" class="Symbol">=</a> <a id="7329" class="Symbol">λ</a> <a id="7331" href="Categories.Adjoint.Equivalents.html#7331" class="Bound">X</a> <a id="7333" class="Symbol">→</a> <a id="7335" href="Level.html#479" class="Field">lower</a> <a id="7341" class="Symbol">(</a><a id="7342" href="Categories.Adjoint.Equivalents.html#7123" class="Function">unitη</a> <a id="7348" href="Categories.Adjoint.Equivalents.html#7331" class="Bound">X</a> <a id="7350" href="Function.Bundles.html#15133" class="Function Operator">⟨$⟩</a> <a id="7354" href="Level.html#466" class="InductiveConstructor">lift</a> <a id="7359" href="Categories.Category.Core.html#630" class="Function">D.id</a><a id="7363" class="Symbol">)</a>
|
|||
|
<a id="7373" class="Symbol">;</a> <a id="7375" href="Categories.NaturalTransformation.Core.html#1681" class="Field">commute</a> <a id="7383" class="Symbol">=</a> <a id="7385" class="Symbol">λ</a> <a id="7387" class="Symbol">{</a><a id="7388" href="Categories.Adjoint.Equivalents.html#7388" class="Bound">X</a> <a id="7390" href="Categories.Adjoint.Equivalents.html#7390" class="Bound">Y</a><a id="7391" class="Symbol">}</a> <a id="7393" href="Categories.Adjoint.Equivalents.html#7393" class="Bound">f</a> <a id="7395" class="Symbol">→</a> <a id="7397" href="Relation.Binary.Reasoning.Syntax.html#1510" class="Function Operator">begin</a>
|
|||
|
<a id="7413" href="Level.html#479" class="Field">lower</a> <a id="7419" class="Symbol">(</a><a id="7420" href="Categories.Adjoint.Equivalents.html#7123" class="Function">unitη</a> <a id="7426" href="Categories.Adjoint.Equivalents.html#7390" class="Bound">Y</a> <a id="7428" href="Function.Bundles.html#15133" class="Function Operator">⟨$⟩</a> <a id="7432" href="Level.html#466" class="InductiveConstructor">lift</a> <a id="7437" href="Categories.Category.Core.html#630" class="Function">D.id</a><a id="7441" class="Symbol">)</a> <a id="7443" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="7445" href="Categories.Adjoint.Equivalents.html#7393" class="Bound">f</a>
|
|||
|
<a id="7459" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">≈⟨</a> <a id="7462" href="Categories.Morphism.Reasoning.Core.html#3063" class="Function">introˡ</a> <a id="7469" href="Categories.Functor.Core.html#511" class="Field">R.identity</a> <a id="7480" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">⟩</a>
|
|||
|
<a id="7492" href="Categories.Functor.Core.html#455" class="Field">R.F₁</a> <a id="7497" href="Categories.Category.Core.html#630" class="Function">D.id</a> <a id="7502" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="7504" href="Level.html#479" class="Field">lower</a> <a id="7510" class="Symbol">(</a><a id="7511" href="Categories.Adjoint.Equivalents.html#7123" class="Function">unitη</a> <a id="7517" href="Categories.Adjoint.Equivalents.html#7390" class="Bound">Y</a> <a id="7519" href="Function.Bundles.html#15133" class="Function Operator">⟨$⟩</a> <a id="7523" href="Level.html#466" class="InductiveConstructor">lift</a> <a id="7528" href="Categories.Category.Core.html#630" class="Function">D.id</a><a id="7532" class="Symbol">)</a> <a id="7534" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="7536" href="Categories.Adjoint.Equivalents.html#7393" class="Bound">f</a>
|
|||
|
<a id="7550" href="Relation.Binary.Reasoning.Syntax.html#7400" class="Function">≈˘⟨</a> <a id="7554" href="Level.html#479" class="Field">lower</a> <a id="7560" class="Symbol">(</a><a id="7561" href="Categories.NaturalTransformation.Core.html#827" class="Function">⇒.commute</a> <a id="7571" class="Symbol">(</a><a id="7572" href="Categories.Adjoint.Equivalents.html#7393" class="Bound">f</a> <a id="7574" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="7576" href="Categories.Category.Core.html#630" class="Function">D.id</a><a id="7580" class="Symbol">))</a> <a id="7583" href="Relation.Binary.Reasoning.Syntax.html#7400" class="Function">⟩</a>
|
|||
|
<a id="7595" href="Level.html#479" class="Field">lower</a> <a id="7601" class="Symbol">(</a><a id="7602" href="Categories.NaturalTransformation.Core.html#783" class="Function">⇒.η</a> <a id="7606" class="Symbol">(</a><a id="7607" href="Categories.Adjoint.Equivalents.html#7388" class="Bound">X</a> <a id="7609" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="7611" href="Categories.Functor.Core.html#432" class="Function">L.F₀</a> <a id="7616" href="Categories.Adjoint.Equivalents.html#7390" class="Bound">Y</a><a id="7617" class="Symbol">)</a> <a id="7619" href="Function.Bundles.html#15133" class="Function Operator">⟨$⟩</a> <a id="7623" href="Level.html#466" class="InductiveConstructor">lift</a> <a id="7628" class="Symbol">(</a><a id="7629" href="Categories.Category.Core.html#630" class="Function">D.id</a> <a id="7634" href="Categories.Category.Core.html#656" class="Function Operator">D.∘</a> <a id="7638" href="Categories.Category.Core.html#630" class="Function">D.id</a> <a id="7643" href="Categories.Category.Core.html#656" class="Function Operator">D.∘</a> <a id="7647" href="Categories.Functor.Core.html#455" class="Function">L.F₁</a> <a id="7652" href="Categories.Adjoint.Equivalents.html#7393" class="Bound">f</a><a id="7653" class="Symbol">))</a>
|
|||
|
<a id="7668" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">≈⟨</a> <a id="7671" href="Level.html#479" class="Field">lower</a> <a id="7677" class="Symbol">(</a><a id="7678" href="Function.Bundles.html#2113" class="Field">cong</a> <a id="7683" class="Symbol">(</a><a id="7684" href="Categories.NaturalTransformation.Core.html#783" class="Function">⇒.η</a> <a id="7688" class="Symbol">(</a><a id="7689" href="Categories.Adjoint.Equivalents.html#7388" class="Bound">X</a> <a id="7691" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="7693" href="Categories.Functor.Core.html#432" class="Function">L.F₀</a> <a id="7698" href="Categories.Adjoint.Equivalents.html#7390" class="Bound">Y</a><a id="7699" class="Symbol">))</a> <a id="7702" class="Symbol">(</a><a id="7703" href="Level.html#466" class="InductiveConstructor">lift</a> <a id="7708" class="Symbol">(</a><a id="7709" href="Relation.Binary.Structures.html#1648" class="Function">D.Equiv.trans</a> <a id="7723" href="Categories.Category.Core.html#1096" class="Function">D.identityˡ</a> <a id="7735" href="Categories.Category.Core.html#1096" class="Function">D.identityˡ</a><a id="7746" class="Symbol">)))</a> <a id="7750" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">⟩</a>
|
|||
|
<a id="7762" href="Level.html#479" class="Field">lower</a> <a id="7768" class="Symbol">(</a><a id="7769" href="Categories.NaturalTransformation.Core.html#783" class="Function">⇒.η</a> <a id="7773" class="Symbol">(</a><a id="7774" href="Categories.Adjoint.Equivalents.html#7388" class="Bound">X</a> <a id="7776" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="7778" href="Categories.Functor.Core.html#432" class="Function">L.F₀</a> <a id="7783" href="Categories.Adjoint.Equivalents.html#7390" class="Bound">Y</a><a id="7784" class="Symbol">)</a> <a id="7786" href="Function.Bundles.html#15133" class="Function Operator">⟨$⟩</a> <a id="7790" href="Level.html#466" class="InductiveConstructor">lift</a> <a id="7795" class="Symbol">(</a><a id="7796" href="Categories.Functor.Core.html#455" class="Function">L.F₁</a> <a id="7801" href="Categories.Adjoint.Equivalents.html#7393" class="Bound">f</a><a id="7802" class="Symbol">))</a>
|
|||
|
<a id="7817" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">≈⟨</a> <a id="7820" href="Level.html#479" class="Field">lower</a> <a id="7826" class="Symbol">(</a><a id="7827" href="Function.Bundles.html#2113" class="Field">cong</a> <a id="7832" class="Symbol">(</a><a id="7833" href="Categories.NaturalTransformation.Core.html#783" class="Function">⇒.η</a> <a id="7837" class="Symbol">(</a><a id="7838" href="Categories.Adjoint.Equivalents.html#7388" class="Bound">X</a> <a id="7840" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="7842" href="Categories.Functor.Core.html#432" class="Function">L.F₀</a> <a id="7847" href="Categories.Adjoint.Equivalents.html#7390" class="Bound">Y</a><a id="7848" class="Symbol">))</a> <a id="7851" class="Symbol">(</a><a id="7852" href="Level.html#466" class="InductiveConstructor">lift</a> <a id="7857" class="Symbol">(</a><a id="7858" href="Categories.Morphism.Reasoning.Core.html#2899" class="Function">MR.introʳ</a> <a id="7868" href="Categories.Adjoint.Equivalents.html#6560" class="Bound">D</a> <a id="7870" class="Symbol">(</a><a id="7871" href="Categories.Morphism.Reasoning.Core.html#2786" class="Function">MR.elimʳ</a> <a id="7880" href="Categories.Adjoint.Equivalents.html#6560" class="Bound">D</a> <a id="7882" href="Categories.Functor.Core.html#511" class="Function">L.identity</a><a id="7892" class="Symbol">))))</a> <a id="7897" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">⟩</a>
|
|||
|
<a id="7909" href="Level.html#479" class="Field">lower</a> <a id="7915" class="Symbol">(</a><a id="7916" href="Categories.NaturalTransformation.Core.html#783" class="Function">⇒.η</a> <a id="7920" class="Symbol">(</a><a id="7921" href="Categories.Adjoint.Equivalents.html#7388" class="Bound">X</a> <a id="7923" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="7925" href="Categories.Functor.Core.html#432" class="Function">L.F₀</a> <a id="7930" href="Categories.Adjoint.Equivalents.html#7390" class="Bound">Y</a><a id="7931" class="Symbol">)</a> <a id="7933" href="Function.Bundles.html#15133" class="Function Operator">⟨$⟩</a> <a id="7937" href="Level.html#466" class="InductiveConstructor">lift</a> <a id="7942" class="Symbol">(</a><a id="7943" href="Categories.Functor.Core.html#455" class="Function">L.F₁</a> <a id="7948" href="Categories.Adjoint.Equivalents.html#7393" class="Bound">f</a> <a id="7950" href="Categories.Category.Core.html#656" class="Function Operator">D.∘</a> <a id="7954" href="Categories.Category.Core.html#630" class="Function">D.id</a> <a id="7959" href="Categories.Category.Core.html#656" class="Function Operator">D.∘</a> <a id="7963" href="Categories.Functor.Core.html#455" class="Function">L.F₁</a> <a id="7968" href="Categories.Category.Core.html#630" class="Function">id</a><a id="7970" class="Symbol">))</a>
|
|||
|
<a id="7985" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">≈⟨</a> <a id="7988" href="Level.html#479" class="Field">lower</a> <a id="7994" class="Symbol">(</a><a id="7995" href="Categories.NaturalTransformation.Core.html#827" class="Function">⇒.commute</a> <a id="8005" class="Symbol">(</a><a id="8006" href="Categories.Category.Core.html#630" class="Function">C.id</a> <a id="8011" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="8013" href="Categories.Functor.Core.html#455" class="Function">L.F₁</a> <a id="8018" href="Categories.Adjoint.Equivalents.html#7393" class="Bound">f</a><a id="8019" class="Symbol">))</a> <a id="8022" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">⟩</a>
|
|||
|
<a id="8034" href="Categories.Functor.Core.html#455" class="Field">R.F₁</a> <a id="8039" class="Symbol">(</a><a id="8040" href="Categories.Functor.Core.html#455" class="Function">L.F₁</a> <a id="8045" href="Categories.Adjoint.Equivalents.html#7393" class="Bound">f</a><a id="8046" class="Symbol">)</a> <a id="8048" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="8050" href="Level.html#479" class="Field">lower</a> <a id="8056" class="Symbol">(</a><a id="8057" href="Categories.NaturalTransformation.Core.html#783" class="Function">⇒.η</a> <a id="8061" class="Symbol">(</a><a id="8062" href="Categories.Adjoint.Equivalents.html#7388" class="Bound">X</a> <a id="8064" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="8066" href="Categories.Functor.Core.html#432" class="Function">L.F₀</a> <a id="8071" href="Categories.Adjoint.Equivalents.html#7388" class="Bound">X</a><a id="8072" class="Symbol">)</a> <a id="8074" href="Function.Bundles.html#15133" class="Function Operator">⟨$⟩</a> <a id="8078" href="Level.html#466" class="InductiveConstructor">lift</a> <a id="8083" href="Categories.Category.Core.html#630" class="Function">D.id</a><a id="8087" class="Symbol">)</a> <a id="8089" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="8091" href="Categories.Category.Core.html#630" class="Function">id</a>
|
|||
|
<a id="8106" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">≈⟨</a> <a id="8109" href="Categories.Category.Core.html#2734" class="Function Operator">refl⟩∘⟨</a> <a id="8117" href="Categories.Category.Core.html#1145" class="Function">identityʳ</a> <a id="8127" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">⟩</a>
|
|||
|
<a id="8139" href="Categories.Functor.Core.html#455" class="Field">F₁</a> <a id="8142" class="Symbol">(</a><a id="8143" href="Categories.Adjoint.Equivalents.html#6602" class="Bound">R</a> <a id="8145" href="Categories.Functor.html#747" class="Function Operator">∘F</a> <a id="8148" href="Categories.Adjoint.Equivalents.html#6584" class="Bound">L</a><a id="8149" class="Symbol">)</a> <a id="8151" href="Categories.Adjoint.Equivalents.html#7393" class="Bound">f</a> <a id="8153" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="8155" href="Level.html#479" class="Field">lower</a> <a id="8161" class="Symbol">(</a><a id="8162" href="Categories.Adjoint.Equivalents.html#7123" class="Function">unitη</a> <a id="8168" href="Categories.Adjoint.Equivalents.html#7388" class="Bound">X</a> <a id="8170" href="Function.Bundles.html#15133" class="Function Operator">⟨$⟩</a> <a id="8174" href="Level.html#466" class="InductiveConstructor">lift</a> <a id="8179" href="Categories.Category.Core.html#630" class="Function">D.id</a><a id="8183" class="Symbol">)</a> <a id="8200" href="Relation.Binary.Reasoning.Syntax.html#12283" class="Function Operator">∎</a>
|
|||
|
<a id="8210" class="Symbol">}</a>
|
|||
|
<a id="8220" class="Keyword">where</a> <a id="8226" class="Keyword">open</a> <a id="8231" href="Categories.Adjoint.Equivalents.html#6646" class="Module">C</a>
|
|||
|
<a id="8247" class="Keyword">open</a> <a id="8252" href="Categories.Category.Core.html#2462" class="Module">HomReasoning</a>
|
|||
|
<a id="8279" class="Keyword">open</a> <a id="8284" href="Categories.Morphism.Reasoning.html" class="Module">MR</a> <a id="8287" href="Categories.Adjoint.Equivalents.html#6539" class="Bound">C</a>
|
|||
|
|
|||
|
<a id="8296" href="Categories.Adjoint.Equivalents.html#8296" class="Function">counitη</a> <a id="8304" class="Symbol">:</a> <a id="8306" class="Symbol">∀</a> <a id="8308" href="Categories.Adjoint.Equivalents.html#8308" class="Bound">X</a> <a id="8310" class="Symbol">→</a> <a id="8312" href="Function.Bundles.html#2043" class="Record">Func</a> <a id="8317" class="Symbol">(</a><a id="8318" href="Categories.Functor.Core.html#432" class="Field">F₀</a> <a id="8321" href="Categories.Adjoint.Equivalents.html#6886" class="Function">Hom[-,R-]</a> <a id="8331" class="Symbol">(</a><a id="8332" href="Categories.Functor.Core.html#432" class="Field">R.F₀</a> <a id="8337" href="Categories.Adjoint.Equivalents.html#8308" class="Bound">X</a> <a id="8339" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="8341" href="Categories.Adjoint.Equivalents.html#8308" class="Bound">X</a><a id="8342" class="Symbol">))</a> <a id="8345" class="Symbol">(</a><a id="8346" href="Categories.Functor.Core.html#432" class="Field">F₀</a> <a id="8349" href="Categories.Adjoint.Equivalents.html#6773" class="Function">Hom[L-,-]</a> <a id="8359" class="Symbol">(</a><a id="8360" href="Categories.Functor.Core.html#432" class="Field">R.F₀</a> <a id="8365" href="Categories.Adjoint.Equivalents.html#8308" class="Bound">X</a> <a id="8367" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="8369" href="Categories.Adjoint.Equivalents.html#8308" class="Bound">X</a><a id="8370" class="Symbol">))</a>
|
|||
|
<a id="8379" href="Categories.Adjoint.Equivalents.html#8296" class="Function">counitη</a> <a id="8387" href="Categories.Adjoint.Equivalents.html#8387" class="Bound">X</a> <a id="8389" class="Symbol">=</a> <a id="8391" href="Categories.NaturalTransformation.Core.html#783" class="Function">⇐.η</a> <a id="8395" class="Symbol">(</a><a id="8396" href="Categories.Functor.Core.html#432" class="Field">R.F₀</a> <a id="8401" href="Categories.Adjoint.Equivalents.html#8387" class="Bound">X</a> <a id="8403" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="8405" href="Categories.Adjoint.Equivalents.html#8387" class="Bound">X</a><a id="8406" class="Symbol">)</a>
|
|||
|
|
|||
|
<a id="8415" href="Categories.Adjoint.Equivalents.html#8415" class="Function">counit</a> <a id="8422" class="Symbol">:</a> <a id="8424" href="Categories.NaturalTransformation.Core.html#466" class="Record">NaturalTransformation</a> <a id="8446" class="Symbol">(</a><a id="8447" href="Categories.Adjoint.Equivalents.html#6584" class="Bound">L</a> <a id="8449" href="Categories.Functor.html#747" class="Function Operator">∘F</a> <a id="8452" href="Categories.Adjoint.Equivalents.html#6602" class="Bound">R</a><a id="8453" class="Symbol">)</a> <a id="8455" href="Categories.Adjoint.Equivalents.html#833" class="Function">idF</a>
|
|||
|
<a id="8465" href="Categories.Adjoint.Equivalents.html#8415" class="Function">counit</a> <a id="8472" class="Symbol">=</a> <a id="8474" href="Categories.NaturalTransformation.Core.html#1750" class="Function">ntHelper</a> <a id="8483" class="Keyword">record</a>
|
|||
|
<a id="8498" class="Symbol">{</a> <a id="8500" href="Categories.NaturalTransformation.Core.html#1637" class="Field">η</a> <a id="8508" class="Symbol">=</a> <a id="8510" class="Symbol">λ</a> <a id="8512" href="Categories.Adjoint.Equivalents.html#8512" class="Bound">X</a> <a id="8514" class="Symbol">→</a> <a id="8516" href="Level.html#479" class="Field">lower</a> <a id="8522" class="Symbol">(</a><a id="8523" href="Categories.Adjoint.Equivalents.html#8296" class="Function">counitη</a> <a id="8531" href="Categories.Adjoint.Equivalents.html#8512" class="Bound">X</a> <a id="8533" href="Function.Bundles.html#15133" class="Function Operator">⟨$⟩</a> <a id="8537" href="Level.html#466" class="InductiveConstructor">lift</a> <a id="8542" href="Categories.Category.Core.html#630" class="Function">C.id</a><a id="8546" class="Symbol">)</a>
|
|||
|
<a id="8556" class="Symbol">;</a> <a id="8558" href="Categories.NaturalTransformation.Core.html#1681" class="Field">commute</a> <a id="8566" class="Symbol">=</a> <a id="8568" class="Symbol">λ</a> <a id="8570" class="Symbol">{</a><a id="8571" href="Categories.Adjoint.Equivalents.html#8571" class="Bound">X</a><a id="8572" class="Symbol">}</a> <a id="8574" class="Symbol">{</a><a id="8575" href="Categories.Adjoint.Equivalents.html#8575" class="Bound">Y</a><a id="8576" class="Symbol">}</a> <a id="8578" href="Categories.Adjoint.Equivalents.html#8578" class="Bound">f</a> <a id="8580" class="Symbol">→</a> <a id="8582" href="Relation.Binary.Reasoning.Syntax.html#1510" class="Function Operator">begin</a>
|
|||
|
<a id="8598" href="Level.html#479" class="Field">lower</a> <a id="8604" class="Symbol">(</a><a id="8605" href="Categories.NaturalTransformation.Core.html#783" class="Function">⇐.η</a> <a id="8609" class="Symbol">(</a><a id="8610" href="Categories.Functor.Core.html#432" class="Field">R.F₀</a> <a id="8615" href="Categories.Adjoint.Equivalents.html#8575" class="Bound">Y</a> <a id="8617" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="8619" href="Categories.Adjoint.Equivalents.html#8575" class="Bound">Y</a><a id="8620" class="Symbol">)</a> <a id="8622" href="Function.Bundles.html#15133" class="Function Operator">⟨$⟩</a> <a id="8626" href="Level.html#466" class="InductiveConstructor">lift</a> <a id="8631" href="Categories.Category.Core.html#630" class="Function">C.id</a><a id="8635" class="Symbol">)</a> <a id="8637" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="8639" href="Categories.Functor.Core.html#455" class="Function">L.F₁</a> <a id="8644" class="Symbol">(</a><a id="8645" href="Categories.Functor.Core.html#455" class="Field">R.F₁</a> <a id="8650" href="Categories.Adjoint.Equivalents.html#8578" class="Bound">f</a><a id="8651" class="Symbol">)</a>
|
|||
|
<a id="8665" href="Relation.Binary.Reasoning.Syntax.html#7400" class="Function">≈˘⟨</a> <a id="8669" href="Categories.Category.Core.html#1096" class="Function">identityˡ</a> <a id="8679" href="Relation.Binary.Reasoning.Syntax.html#7400" class="Function">⟩</a>
|
|||
|
<a id="8691" href="Categories.Category.Core.html#630" class="Function">id</a> <a id="8694" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="8696" href="Level.html#479" class="Field">lower</a> <a id="8702" class="Symbol">(</a><a id="8703" href="Categories.NaturalTransformation.Core.html#783" class="Function">⇐.η</a> <a id="8707" class="Symbol">(</a><a id="8708" href="Categories.Functor.Core.html#432" class="Field">R.F₀</a> <a id="8713" href="Categories.Adjoint.Equivalents.html#8575" class="Bound">Y</a> <a id="8715" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="8717" href="Categories.Adjoint.Equivalents.html#8575" class="Bound">Y</a><a id="8718" class="Symbol">)</a> <a id="8720" href="Function.Bundles.html#15133" class="Function Operator">⟨$⟩</a> <a id="8724" href="Level.html#466" class="InductiveConstructor">lift</a> <a id="8729" href="Categories.Category.Core.html#630" class="Function">C.id</a><a id="8733" class="Symbol">)</a> <a id="8735" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="8737" href="Categories.Functor.Core.html#455" class="Function">L.F₁</a> <a id="8742" class="Symbol">(</a><a id="8743" href="Categories.Functor.Core.html#455" class="Field">R.F₁</a> <a id="8748" href="Categories.Adjoint.Equivalents.html#8578" class="Bound">f</a><a id="8749" class="Symbol">)</a>
|
|||
|
<a id="8763" href="Relation.Binary.Reasoning.Syntax.html#7400" class="Function">≈˘⟨</a> <a id="8767" href="Level.html#479" class="Field">lower</a> <a id="8773" class="Symbol">(</a><a id="8774" href="Categories.NaturalTransformation.Core.html#827" class="Function">⇐.commute</a> <a id="8784" class="Symbol">(</a><a id="8785" href="Categories.Functor.Core.html#455" class="Field">R.F₁</a> <a id="8790" href="Categories.Adjoint.Equivalents.html#8578" class="Bound">f</a> <a id="8792" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="8794" href="Categories.Category.Core.html#630" class="Function">D.id</a><a id="8798" class="Symbol">))</a> <a id="8801" href="Relation.Binary.Reasoning.Syntax.html#7400" class="Function">⟩</a>
|
|||
|
<a id="8813" href="Level.html#479" class="Field">lower</a> <a id="8819" class="Symbol">(</a><a id="8820" href="Categories.NaturalTransformation.Core.html#783" class="Function">⇐.η</a> <a id="8824" class="Symbol">(</a><a id="8825" href="Categories.Functor.Core.html#432" class="Field">R.F₀</a> <a id="8830" href="Categories.Adjoint.Equivalents.html#8571" class="Bound">X</a> <a id="8832" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="8834" href="Categories.Adjoint.Equivalents.html#8575" class="Bound">Y</a><a id="8835" class="Symbol">)</a> <a id="8837" href="Function.Bundles.html#15133" class="Function Operator">⟨$⟩</a> <a id="8841" href="Level.html#466" class="InductiveConstructor">lift</a> <a id="8846" class="Symbol">(</a><a id="8847" href="Categories.Functor.Core.html#455" class="Field">R.F₁</a> <a id="8852" href="Categories.Category.Core.html#630" class="Function">id</a> <a id="8855" href="Categories.Category.Core.html#656" class="Function Operator">C.∘</a> <a id="8859" href="Categories.Category.Core.html#630" class="Function">C.id</a> <a id="8864" href="Categories.Category.Core.html#656" class="Function Operator">C.∘</a> <a id="8868" href="Categories.Functor.Core.html#455" class="Field">R.F₁</a> <a id="8873" href="Categories.Adjoint.Equivalents.html#8578" class="Bound">f</a><a id="8874" class="Symbol">))</a>
|
|||
|
<a id="8889" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">≈⟨</a> <a id="8892" href="Level.html#479" class="Field">lower</a> <a id="8898" class="Symbol">(</a><a id="8899" href="Function.Bundles.html#2113" class="Field">cong</a> <a id="8904" class="Symbol">(</a><a id="8905" href="Categories.NaturalTransformation.Core.html#783" class="Function">⇐.η</a> <a id="8909" class="Symbol">(</a><a id="8910" href="Categories.Functor.Core.html#432" class="Field">R.F₀</a> <a id="8915" href="Categories.Adjoint.Equivalents.html#8571" class="Bound">X</a> <a id="8917" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="8919" href="Categories.Adjoint.Equivalents.html#8575" class="Bound">Y</a><a id="8920" class="Symbol">))</a> <a id="8923" class="Symbol">(</a><a id="8924" href="Level.html#466" class="InductiveConstructor">lift</a> <a id="8929" class="Symbol">(</a><a id="8930" href="Relation.Binary.Structures.html#1648" class="Function">C.Equiv.trans</a> <a id="8944" class="Symbol">(</a><a id="8945" href="Categories.Morphism.Reasoning.Core.html#2948" class="Function">MR.elimˡ</a> <a id="8954" href="Categories.Adjoint.Equivalents.html#6539" class="Bound">C</a> <a id="8956" href="Categories.Functor.Core.html#511" class="Field">R.identity</a><a id="8966" class="Symbol">)</a> <a id="8968" href="Categories.Category.Core.html#1096" class="Function">C.identityˡ</a><a id="8979" class="Symbol">)))</a> <a id="8983" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">⟩</a>
|
|||
|
<a id="8995" href="Level.html#479" class="Field">lower</a> <a id="9001" class="Symbol">(</a><a id="9002" href="Categories.NaturalTransformation.Core.html#783" class="Function">⇐.η</a> <a id="9006" class="Symbol">(</a><a id="9007" href="Categories.Functor.Core.html#432" class="Field">R.F₀</a> <a id="9012" href="Categories.Adjoint.Equivalents.html#8571" class="Bound">X</a> <a id="9014" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="9016" href="Categories.Adjoint.Equivalents.html#8575" class="Bound">Y</a><a id="9017" class="Symbol">)</a> <a id="9019" href="Function.Bundles.html#15133" class="Function Operator">⟨$⟩</a> <a id="9023" href="Level.html#466" class="InductiveConstructor">lift</a> <a id="9028" class="Symbol">(</a><a id="9029" href="Categories.Functor.Core.html#455" class="Field">R.F₁</a> <a id="9034" href="Categories.Adjoint.Equivalents.html#8578" class="Bound">f</a><a id="9035" class="Symbol">))</a>
|
|||
|
<a id="9050" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">≈⟨</a> <a id="9053" href="Level.html#479" class="Field">lower</a> <a id="9059" class="Symbol">(</a><a id="9060" href="Function.Bundles.html#2113" class="Field">cong</a> <a id="9065" class="Symbol">(</a><a id="9066" href="Categories.NaturalTransformation.Core.html#783" class="Function">⇐.η</a> <a id="9070" class="Symbol">(</a><a id="9071" href="Categories.Functor.Core.html#432" class="Field">R.F₀</a> <a id="9076" href="Categories.Adjoint.Equivalents.html#8571" class="Bound">X</a> <a id="9078" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="9080" href="Categories.Adjoint.Equivalents.html#8575" class="Bound">Y</a><a id="9081" class="Symbol">))</a> <a id="9084" class="Symbol">(</a><a id="9085" href="Level.html#466" class="InductiveConstructor">lift</a> <a id="9090" class="Symbol">(</a><a id="9091" href="Categories.Morphism.Reasoning.Core.html#2899" class="Function">MR.introʳ</a> <a id="9101" href="Categories.Adjoint.Equivalents.html#6539" class="Bound">C</a> <a id="9103" href="Categories.Category.Core.html#1096" class="Function">C.identityˡ</a><a id="9114" class="Symbol">)))</a> <a id="9118" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">⟩</a>
|
|||
|
<a id="9130" href="Level.html#479" class="Field">lower</a> <a id="9136" class="Symbol">(</a><a id="9137" href="Categories.NaturalTransformation.Core.html#783" class="Function">⇐.η</a> <a id="9141" class="Symbol">(</a><a id="9142" href="Categories.Functor.Core.html#432" class="Field">R.F₀</a> <a id="9147" href="Categories.Adjoint.Equivalents.html#8571" class="Bound">X</a> <a id="9149" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="9151" href="Categories.Adjoint.Equivalents.html#8575" class="Bound">Y</a><a id="9152" class="Symbol">)</a> <a id="9154" href="Function.Bundles.html#15133" class="Function Operator">⟨$⟩</a> <a id="9158" href="Level.html#466" class="InductiveConstructor">lift</a> <a id="9163" class="Symbol">(</a><a id="9164" href="Categories.Functor.Core.html#455" class="Field">R.F₁</a> <a id="9169" href="Categories.Adjoint.Equivalents.html#8578" class="Bound">f</a> <a id="9171" href="Categories.Category.Core.html#656" class="Function Operator">C.∘</a> <a id="9175" href="Categories.Category.Core.html#630" class="Function">C.id</a> <a id="9180" href="Categories.Category.Core.html#656" class="Function Operator">C.∘</a> <a id="9184" href="Categories.Category.Core.html#630" class="Function">C.id</a><a id="9188" class="Symbol">))</a>
|
|||
|
<a id="9203" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">≈⟨</a> <a id="9206" href="Level.html#479" class="Field">lower</a> <a id="9212" class="Symbol">(</a><a id="9213" href="Categories.NaturalTransformation.Core.html#827" class="Function">⇐.commute</a> <a id="9223" class="Symbol">(</a><a id="9224" href="Categories.Category.Core.html#630" class="Function">C.id</a> <a id="9229" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="9231" href="Categories.Adjoint.Equivalents.html#8578" class="Bound">f</a><a id="9232" class="Symbol">))</a> <a id="9235" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">⟩</a>
|
|||
|
<a id="9247" href="Categories.Adjoint.Equivalents.html#8578" class="Bound">f</a> <a id="9249" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="9251" href="Level.html#479" class="Field">lower</a> <a id="9257" class="Symbol">(</a><a id="9258" href="Categories.NaturalTransformation.Core.html#783" class="Function">⇐.η</a> <a id="9262" class="Symbol">(</a><a id="9263" href="Categories.Functor.Core.html#432" class="Field">R.F₀</a> <a id="9268" href="Categories.Adjoint.Equivalents.html#8571" class="Bound">X</a> <a id="9270" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="9272" href="Categories.Adjoint.Equivalents.html#8571" class="Bound">X</a><a id="9273" class="Symbol">)</a> <a id="9275" href="Function.Bundles.html#15133" class="Function Operator">⟨$⟩</a> <a id="9279" href="Level.html#466" class="InductiveConstructor">lift</a> <a id="9284" href="Categories.Category.Core.html#630" class="Function">C.id</a><a id="9288" class="Symbol">)</a> <a id="9290" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="9292" href="Categories.Functor.Core.html#455" class="Function">L.F₁</a> <a id="9297" href="Categories.Category.Core.html#630" class="Function">C.id</a>
|
|||
|
<a id="9314" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">≈⟨</a> <a id="9317" href="Categories.Category.Core.html#2734" class="Function Operator">refl⟩∘⟨</a> <a id="9325" href="Categories.Morphism.Reasoning.Core.html#2786" class="Function">elimʳ</a> <a id="9331" href="Categories.Functor.Core.html#511" class="Function">L.identity</a> <a id="9342" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">⟩</a>
|
|||
|
<a id="9354" href="Categories.Adjoint.Equivalents.html#8578" class="Bound">f</a> <a id="9356" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="9358" href="Level.html#479" class="Field">lower</a> <a id="9364" class="Symbol">(</a><a id="9365" href="Categories.NaturalTransformation.Core.html#783" class="Function">⇐.η</a> <a id="9369" class="Symbol">(</a><a id="9370" href="Categories.Functor.Core.html#432" class="Field">R.F₀</a> <a id="9375" href="Categories.Adjoint.Equivalents.html#8571" class="Bound">X</a> <a id="9377" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="9379" href="Categories.Adjoint.Equivalents.html#8571" class="Bound">X</a><a id="9380" class="Symbol">)</a> <a id="9382" href="Function.Bundles.html#15133" class="Function Operator">⟨$⟩</a> <a id="9386" href="Level.html#466" class="InductiveConstructor">lift</a> <a id="9391" href="Categories.Category.Core.html#630" class="Function">C.id</a><a id="9395" class="Symbol">)</a>
|
|||
|
<a id="9409" href="Relation.Binary.Reasoning.Syntax.html#12283" class="Function Operator">∎</a>
|
|||
|
<a id="9419" class="Symbol">}</a>
|
|||
|
<a id="9429" class="Keyword">where</a> <a id="9435" class="Keyword">open</a> <a id="9440" href="Categories.Adjoint.Equivalents.html#6672" class="Module">D</a>
|
|||
|
<a id="9456" class="Keyword">open</a> <a id="9461" href="Categories.Category.Core.html#2462" class="Module">HomReasoning</a>
|
|||
|
<a id="9488" class="Keyword">open</a> <a id="9493" href="Categories.Morphism.Reasoning.html" class="Module">MR</a> <a id="9496" href="Categories.Adjoint.Equivalents.html#6560" class="Bound">D</a>
|
|||
|
|
|||
|
<a id="9503" href="Categories.Adjoint.Equivalents.html#9503" class="Function">Hom-NI′⇒Adjoint</a> <a id="9519" class="Symbol">:</a> <a id="9521" href="Categories.Adjoint.Equivalents.html#6584" class="Bound">L</a> <a id="9523" href="Categories.Adjoint.html#7818" class="Function Operator">⊣</a> <a id="9525" href="Categories.Adjoint.Equivalents.html#6602" class="Bound">R</a>
|
|||
|
<a id="9531" href="Categories.Adjoint.Equivalents.html#9503" class="Function">Hom-NI′⇒Adjoint</a> <a id="9547" class="Symbol">=</a> <a id="9549" class="Keyword">record</a>
|
|||
|
<a id="9562" class="Symbol">{</a> <a id="9564" href="Categories.Adjoint.html#1473" class="Field">unit</a> <a id="9571" class="Symbol">=</a> <a id="9573" href="Categories.Adjoint.Equivalents.html#7238" class="Function">unit</a>
|
|||
|
<a id="9584" class="Symbol">;</a> <a id="9586" href="Categories.Adjoint.html#1521" class="Field">counit</a> <a id="9593" class="Symbol">=</a> <a id="9595" href="Categories.Adjoint.Equivalents.html#8415" class="Function">counit</a>
|
|||
|
<a id="9608" class="Symbol">;</a> <a id="9610" href="Categories.Adjoint.html#1669" class="Field">zig</a> <a id="9617" class="Symbol">=</a> <a id="9619" class="Symbol">λ</a> <a id="9621" class="Symbol">{</a><a id="9622" href="Categories.Adjoint.Equivalents.html#9622" class="Bound">A</a><a id="9623" class="Symbol">}</a> <a id="9625" class="Symbol">→</a>
|
|||
|
<a id="9635" class="Keyword">let</a> <a id="9639" class="Keyword">open</a> <a id="9644" href="Categories.Adjoint.Equivalents.html#6672" class="Module">D</a>
|
|||
|
<a id="9658" class="Keyword">open</a> <a id="9663" href="Categories.Category.Core.html#2462" class="Module">HomReasoning</a>
|
|||
|
<a id="9688" class="Keyword">open</a> <a id="9693" href="Categories.Category.Core.html#1530" class="Module">Equiv</a>
|
|||
|
<a id="9711" class="Keyword">open</a> <a id="9716" href="Categories.Morphism.Reasoning.html" class="Module">MR</a> <a id="9719" href="Categories.Adjoint.Equivalents.html#6560" class="Bound">D</a>
|
|||
|
<a id="9729" class="Keyword">in</a> <a id="9732" href="Relation.Binary.Reasoning.Syntax.html#1510" class="Function Operator">begin</a>
|
|||
|
<a id="9748" href="Level.html#479" class="Field">lower</a> <a id="9754" class="Symbol">(</a><a id="9755" href="Categories.Adjoint.Equivalents.html#8296" class="Function">counitη</a> <a id="9763" class="Symbol">(</a><a id="9764" href="Categories.Functor.Core.html#432" class="Function">L.F₀</a> <a id="9769" href="Categories.Adjoint.Equivalents.html#9622" class="Bound">A</a><a id="9770" class="Symbol">)</a> <a id="9772" href="Function.Bundles.html#15133" class="Function Operator">⟨$⟩</a> <a id="9776" href="Level.html#466" class="InductiveConstructor">lift</a> <a id="9781" href="Categories.Category.Core.html#630" class="Function">C.id</a><a id="9785" class="Symbol">)</a> <a id="9787" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="9789" href="Categories.Functor.Core.html#455" class="Function">L.F₁</a> <a id="9794" class="Symbol">(</a><a id="9795" href="Categories.NaturalTransformation.Core.html#783" class="Field">η</a> <a id="9797" href="Categories.Adjoint.Equivalents.html#7238" class="Function">unit</a> <a id="9802" href="Categories.Adjoint.Equivalents.html#9622" class="Bound">A</a><a id="9803" class="Symbol">)</a>
|
|||
|
<a id="9817" href="Relation.Binary.Reasoning.Syntax.html#7400" class="Function">≈˘⟨</a> <a id="9821" href="Categories.Category.Core.html#1096" class="Function">identityˡ</a> <a id="9831" href="Relation.Binary.Reasoning.Syntax.html#7400" class="Function">⟩</a>
|
|||
|
<a id="9843" href="Categories.Category.Core.html#630" class="Function">id</a> <a id="9846" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="9848" href="Level.html#479" class="Field">lower</a> <a id="9854" class="Symbol">(</a><a id="9855" href="Categories.Adjoint.Equivalents.html#8296" class="Function">counitη</a> <a id="9863" class="Symbol">(</a><a id="9864" href="Categories.Functor.Core.html#432" class="Function">L.F₀</a> <a id="9869" href="Categories.Adjoint.Equivalents.html#9622" class="Bound">A</a><a id="9870" class="Symbol">)</a> <a id="9872" href="Function.Bundles.html#15133" class="Function Operator">⟨$⟩</a> <a id="9876" href="Level.html#466" class="InductiveConstructor">lift</a> <a id="9881" href="Categories.Category.Core.html#630" class="Function">C.id</a><a id="9885" class="Symbol">)</a> <a id="9887" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="9889" href="Categories.Functor.Core.html#455" class="Function">L.F₁</a> <a id="9894" class="Symbol">(</a><a id="9895" href="Categories.NaturalTransformation.Core.html#783" class="Field">η</a> <a id="9897" href="Categories.Adjoint.Equivalents.html#7238" class="Function">unit</a> <a id="9902" href="Categories.Adjoint.Equivalents.html#9622" class="Bound">A</a><a id="9903" class="Symbol">)</a>
|
|||
|
<a id="9917" href="Relation.Binary.Reasoning.Syntax.html#7400" class="Function">≈˘⟨</a> <a id="9921" href="Level.html#479" class="Field">lower</a> <a id="9927" class="Symbol">(</a><a id="9928" href="Categories.NaturalTransformation.Core.html#827" class="Function">⇐.commute</a> <a id="9938" class="Symbol">(</a><a id="9939" href="Categories.NaturalTransformation.Core.html#783" class="Field">η</a> <a id="9941" href="Categories.Adjoint.Equivalents.html#7238" class="Function">unit</a> <a id="9946" href="Categories.Adjoint.Equivalents.html#9622" class="Bound">A</a> <a id="9948" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="9950" href="Categories.Category.Core.html#630" class="Function">id</a><a id="9952" class="Symbol">))</a> <a id="9955" href="Relation.Binary.Reasoning.Syntax.html#7400" class="Function">⟩</a>
|
|||
|
<a id="9967" href="Level.html#479" class="Field">lower</a> <a id="9973" class="Symbol">(</a><a id="9974" href="Categories.NaturalTransformation.Core.html#783" class="Function">⇐.η</a> <a id="9978" class="Symbol">(</a><a id="9979" href="Categories.Adjoint.Equivalents.html#9622" class="Bound">A</a> <a id="9981" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="9983" href="Categories.Functor.Core.html#432" class="Function">L.F₀</a> <a id="9988" href="Categories.Adjoint.Equivalents.html#9622" class="Bound">A</a><a id="9989" class="Symbol">)</a> <a id="9991" href="Function.Bundles.html#15133" class="Function Operator">⟨$⟩</a> <a id="9995" href="Level.html#466" class="InductiveConstructor">lift</a> <a id="10000" class="Symbol">(</a><a id="10001" href="Categories.Functor.Core.html#455" class="Field">R.F₁</a> <a id="10006" href="Categories.Category.Core.html#630" class="Function">id</a> <a id="10009" href="Categories.Category.Core.html#656" class="Function Operator">C.∘</a> <a id="10013" href="Categories.Category.Core.html#630" class="Function">C.id</a> <a id="10018" href="Categories.Category.Core.html#656" class="Function Operator">C.∘</a> <a id="10022" href="Level.html#479" class="Field">lower</a> <a id="10028" class="Symbol">(</a><a id="10029" href="Categories.NaturalTransformation.Core.html#783" class="Function">⇒.η</a> <a id="10033" class="Symbol">(</a><a id="10034" href="Categories.Adjoint.Equivalents.html#9622" class="Bound">A</a> <a id="10036" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="10038" href="Categories.Functor.Core.html#432" class="Function">L.F₀</a> <a id="10043" href="Categories.Adjoint.Equivalents.html#9622" class="Bound">A</a><a id="10044" class="Symbol">)</a> <a id="10046" href="Function.Bundles.html#15133" class="Function Operator">⟨$⟩</a> <a id="10050" href="Level.html#466" class="InductiveConstructor">lift</a> <a id="10055" href="Categories.Category.Core.html#630" class="Function">id</a><a id="10057" class="Symbol">)))</a>
|
|||
|
<a id="10073" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">≈⟨</a> <a id="10076" href="Level.html#479" class="Field">lower</a> <a id="10082" class="Symbol">(</a><a id="10083" href="Function.Bundles.html#2113" class="Field">cong</a> <a id="10088" class="Symbol">(</a><a id="10089" href="Categories.NaturalTransformation.Core.html#783" class="Function">⇐.η</a> <a id="10093" class="Symbol">(</a><a id="10094" href="Categories.Adjoint.Equivalents.html#9622" class="Bound">A</a> <a id="10096" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="10098" href="Categories.Functor.Core.html#432" class="Function">L.F₀</a> <a id="10103" href="Categories.Adjoint.Equivalents.html#9622" class="Bound">A</a><a id="10104" class="Symbol">))</a> <a id="10107" class="Symbol">(</a><a id="10108" href="Level.html#466" class="InductiveConstructor">lift</a> <a id="10113" class="Symbol">(</a><a id="10114" href="Relation.Binary.Structures.html#1648" class="Function">C.Equiv.trans</a> <a id="10128" class="Symbol">(</a><a id="10129" href="Categories.Morphism.Reasoning.Core.html#2948" class="Function">MR.elimˡ</a> <a id="10138" href="Categories.Adjoint.Equivalents.html#6539" class="Bound">C</a> <a id="10140" href="Categories.Functor.Core.html#511" class="Field">R.identity</a><a id="10150" class="Symbol">)</a> <a id="10152" href="Categories.Category.Core.html#1096" class="Function">C.identityˡ</a><a id="10163" class="Symbol">)))</a> <a id="10167" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">⟩</a>
|
|||
|
<a id="10179" href="Level.html#479" class="Field">lower</a> <a id="10185" class="Symbol">(</a><a id="10186" href="Categories.NaturalTransformation.Core.html#783" class="Function">⇐.η</a> <a id="10190" class="Symbol">(</a><a id="10191" href="Categories.Adjoint.Equivalents.html#9622" class="Bound">A</a> <a id="10193" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="10195" href="Categories.Functor.Core.html#432" class="Function">L.F₀</a> <a id="10200" href="Categories.Adjoint.Equivalents.html#9622" class="Bound">A</a><a id="10201" class="Symbol">)</a> <a id="10203" href="Function.Bundles.html#15133" class="Function Operator">⟨$⟩</a> <a id="10207" class="Symbol">(</a><a id="10208" href="Categories.NaturalTransformation.Core.html#783" class="Function">⇒.η</a> <a id="10212" class="Symbol">(</a><a id="10213" href="Categories.Adjoint.Equivalents.html#9622" class="Bound">A</a> <a id="10215" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="10217" href="Categories.Functor.Core.html#432" class="Function">L.F₀</a> <a id="10222" href="Categories.Adjoint.Equivalents.html#9622" class="Bound">A</a><a id="10223" class="Symbol">)</a> <a id="10225" href="Function.Bundles.html#15133" class="Function Operator">⟨$⟩</a> <a id="10229" href="Level.html#466" class="InductiveConstructor">lift</a> <a id="10234" href="Categories.Category.Core.html#630" class="Function">id</a><a id="10236" class="Symbol">))</a>
|
|||
|
<a id="10251" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">≈⟨</a> <a id="10254" href="Level.html#479" class="Field">lower</a> <a id="10260" class="Symbol">(</a><a id="10261" href="Categories.Morphism.html#1586" class="Function">isoˡ</a><a id="10265" class="Symbol">)</a> <a id="10267" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">⟩</a>
|
|||
|
<a id="10279" href="Categories.Category.Core.html#630" class="Function">id</a> <a id="10282" href="Relation.Binary.Reasoning.Syntax.html#12283" class="Function Operator">∎</a>
|
|||
|
<a id="10290" class="Symbol">;</a> <a id="10292" href="Categories.Adjoint.html#1742" class="Field">zag</a> <a id="10299" class="Symbol">=</a> <a id="10301" class="Symbol">λ</a> <a id="10303" class="Symbol">{</a><a id="10304" href="Categories.Adjoint.Equivalents.html#10304" class="Bound">B</a><a id="10305" class="Symbol">}</a> <a id="10307" class="Symbol">→</a>
|
|||
|
<a id="10317" class="Keyword">let</a> <a id="10321" class="Keyword">open</a> <a id="10326" href="Categories.Adjoint.Equivalents.html#6646" class="Module">C</a>
|
|||
|
<a id="10340" class="Keyword">open</a> <a id="10345" href="Categories.Category.Core.html#2462" class="Module">HomReasoning</a>
|
|||
|
<a id="10370" class="Keyword">open</a> <a id="10375" href="Categories.Category.Core.html#1530" class="Module">Equiv</a>
|
|||
|
<a id="10393" class="Keyword">open</a> <a id="10398" href="Categories.Morphism.Reasoning.html" class="Module">MR</a> <a id="10401" href="Categories.Adjoint.Equivalents.html#6539" class="Bound">C</a>
|
|||
|
<a id="10411" class="Keyword">in</a> <a id="10414" href="Relation.Binary.Reasoning.Syntax.html#1510" class="Function Operator">begin</a>
|
|||
|
<a id="10430" href="Categories.Functor.Core.html#455" class="Field">R.F₁</a> <a id="10435" class="Symbol">(</a><a id="10436" href="Level.html#479" class="Field">lower</a> <a id="10442" class="Symbol">(</a><a id="10443" href="Categories.NaturalTransformation.Core.html#783" class="Function">⇐.η</a> <a id="10447" class="Symbol">(</a><a id="10448" href="Categories.Functor.Core.html#432" class="Field">R.F₀</a> <a id="10453" href="Categories.Adjoint.Equivalents.html#10304" class="Bound">B</a> <a id="10455" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="10457" href="Categories.Adjoint.Equivalents.html#10304" class="Bound">B</a><a id="10458" class="Symbol">)</a> <a id="10460" href="Function.Bundles.html#15133" class="Function Operator">⟨$⟩</a> <a id="10464" href="Level.html#466" class="InductiveConstructor">lift</a> <a id="10469" href="Categories.Category.Core.html#630" class="Function">id</a><a id="10471" class="Symbol">))</a> <a id="10474" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="10476" href="Level.html#479" class="Field">lower</a> <a id="10482" class="Symbol">(</a><a id="10483" href="Categories.NaturalTransformation.Core.html#783" class="Function">⇒.η</a> <a id="10487" class="Symbol">(</a><a id="10488" href="Categories.Functor.Core.html#432" class="Field">R.F₀</a> <a id="10493" href="Categories.Adjoint.Equivalents.html#10304" class="Bound">B</a> <a id="10495" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="10497" href="Categories.Functor.Core.html#432" class="Function">L.F₀</a> <a id="10502" class="Symbol">(</a><a id="10503" href="Categories.Functor.Core.html#432" class="Field">R.F₀</a> <a id="10508" href="Categories.Adjoint.Equivalents.html#10304" class="Bound">B</a><a id="10509" class="Symbol">))</a> <a id="10512" href="Function.Bundles.html#15133" class="Function Operator">⟨$⟩</a> <a id="10516" href="Level.html#466" class="InductiveConstructor">lift</a> <a id="10521" href="Categories.Category.Core.html#630" class="Function">D.id</a><a id="10525" class="Symbol">)</a>
|
|||
|
<a id="10539" href="Relation.Binary.Reasoning.Syntax.html#7400" class="Function">≈˘⟨</a> <a id="10543" href="Categories.Category.Core.html#2734" class="Function Operator">refl⟩∘⟨</a> <a id="10551" href="Categories.Category.Core.html#1145" class="Function">identityʳ</a> <a id="10561" href="Relation.Binary.Reasoning.Syntax.html#7400" class="Function">⟩</a>
|
|||
|
<a id="10573" href="Categories.Functor.Core.html#455" class="Field">R.F₁</a> <a id="10578" class="Symbol">(</a><a id="10579" href="Level.html#479" class="Field">lower</a> <a id="10585" class="Symbol">(</a><a id="10586" href="Categories.NaturalTransformation.Core.html#783" class="Function">⇐.η</a> <a id="10590" class="Symbol">(</a><a id="10591" href="Categories.Functor.Core.html#432" class="Field">R.F₀</a> <a id="10596" href="Categories.Adjoint.Equivalents.html#10304" class="Bound">B</a> <a id="10598" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="10600" href="Categories.Adjoint.Equivalents.html#10304" class="Bound">B</a><a id="10601" class="Symbol">)</a> <a id="10603" href="Function.Bundles.html#15133" class="Function Operator">⟨$⟩</a> <a id="10607" href="Level.html#466" class="InductiveConstructor">lift</a> <a id="10612" href="Categories.Category.Core.html#630" class="Function">id</a><a id="10614" class="Symbol">))</a> <a id="10617" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="10619" href="Level.html#479" class="Field">lower</a> <a id="10625" class="Symbol">(</a><a id="10626" href="Categories.NaturalTransformation.Core.html#783" class="Function">⇒.η</a> <a id="10630" class="Symbol">(</a><a id="10631" href="Categories.Functor.Core.html#432" class="Field">R.F₀</a> <a id="10636" href="Categories.Adjoint.Equivalents.html#10304" class="Bound">B</a> <a id="10638" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="10640" href="Categories.Functor.Core.html#432" class="Function">L.F₀</a> <a id="10645" class="Symbol">(</a><a id="10646" href="Categories.Functor.Core.html#432" class="Field">R.F₀</a> <a id="10651" href="Categories.Adjoint.Equivalents.html#10304" class="Bound">B</a><a id="10652" class="Symbol">))</a> <a id="10655" href="Function.Bundles.html#15133" class="Function Operator">⟨$⟩</a> <a id="10659" href="Level.html#466" class="InductiveConstructor">lift</a> <a id="10664" href="Categories.Category.Core.html#630" class="Function">D.id</a><a id="10668" class="Symbol">)</a> <a id="10670" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="10672" href="Categories.Category.Core.html#630" class="Function">id</a>
|
|||
|
<a id="10687" href="Relation.Binary.Reasoning.Syntax.html#7400" class="Function">≈˘⟨</a> <a id="10691" href="Level.html#479" class="Field">lower</a> <a id="10697" class="Symbol">(</a><a id="10698" href="Categories.NaturalTransformation.Core.html#827" class="Function">⇒.commute</a> <a id="10708" class="Symbol">(</a><a id="10709" href="Categories.Category.Core.html#630" class="Function">id</a> <a id="10712" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="10714" href="Categories.NaturalTransformation.Core.html#783" class="Field">η</a> <a id="10716" href="Categories.Adjoint.Equivalents.html#8415" class="Function">counit</a> <a id="10723" href="Categories.Adjoint.Equivalents.html#10304" class="Bound">B</a><a id="10724" class="Symbol">))</a> <a id="10727" href="Relation.Binary.Reasoning.Syntax.html#7400" class="Function">⟩</a>
|
|||
|
<a id="10739" href="Level.html#479" class="Field">lower</a> <a id="10745" class="Symbol">(</a><a id="10746" href="Categories.NaturalTransformation.Core.html#783" class="Function">⇒.η</a> <a id="10750" class="Symbol">(</a><a id="10751" href="Categories.Functor.Core.html#432" class="Field">R.F₀</a> <a id="10756" href="Categories.Adjoint.Equivalents.html#10304" class="Bound">B</a> <a id="10758" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="10760" href="Categories.Adjoint.Equivalents.html#10304" class="Bound">B</a><a id="10761" class="Symbol">)</a> <a id="10763" href="Function.Bundles.html#15133" class="Function Operator">⟨$⟩</a> <a id="10767" href="Level.html#466" class="InductiveConstructor">lift</a> <a id="10772" class="Symbol">(</a><a id="10773" href="Level.html#479" class="Field">lower</a> <a id="10779" class="Symbol">(</a><a id="10780" href="Categories.NaturalTransformation.Core.html#783" class="Function">⇐.η</a> <a id="10784" class="Symbol">(</a><a id="10785" href="Categories.Functor.Core.html#432" class="Field">R.F₀</a> <a id="10790" href="Categories.Adjoint.Equivalents.html#10304" class="Bound">B</a> <a id="10792" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="10794" href="Categories.Adjoint.Equivalents.html#10304" class="Bound">B</a><a id="10795" class="Symbol">)</a> <a id="10797" href="Function.Bundles.html#15133" class="Function Operator">⟨$⟩</a> <a id="10801" href="Level.html#466" class="InductiveConstructor">lift</a> <a id="10806" href="Categories.Category.Core.html#630" class="Function">id</a><a id="10808" class="Symbol">)</a> <a id="10810" href="Categories.Category.Core.html#656" class="Function Operator">D.∘</a> <a id="10814" href="Categories.Category.Core.html#630" class="Function">D.id</a> <a id="10819" href="Categories.Category.Core.html#656" class="Function Operator">D.∘</a> <a id="10823" href="Categories.Functor.Core.html#455" class="Function">L.F₁</a> <a id="10828" href="Categories.Category.Core.html#630" class="Function">id</a><a id="10830" class="Symbol">))</a>
|
|||
|
<a id="10845" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">≈⟨</a> <a id="10848" href="Level.html#479" class="Field">lower</a> <a id="10854" class="Symbol">(</a><a id="10855" href="Function.Bundles.html#2113" class="Field">cong</a> <a id="10860" class="Symbol">(</a><a id="10861" href="Categories.NaturalTransformation.Core.html#783" class="Function">⇒.η</a> <a id="10865" class="Symbol">(</a><a id="10866" href="Categories.Functor.Core.html#432" class="Field">R.F₀</a> <a id="10871" href="Categories.Adjoint.Equivalents.html#10304" class="Bound">B</a> <a id="10873" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="10875" href="Categories.Adjoint.Equivalents.html#10304" class="Bound">B</a><a id="10876" class="Symbol">))</a> <a id="10879" class="Symbol">(</a><a id="10880" href="Level.html#466" class="InductiveConstructor">lift</a> <a id="10885" class="Symbol">(</a><a id="10886" href="Categories.Morphism.Reasoning.Core.html#2786" class="Function">MR.elimʳ</a> <a id="10895" href="Categories.Adjoint.Equivalents.html#6560" class="Bound">D</a> <a id="10897" class="Symbol">(</a><a id="10898" href="Categories.Morphism.Reasoning.Core.html#2786" class="Function">MR.elimʳ</a> <a id="10907" href="Categories.Adjoint.Equivalents.html#6560" class="Bound">D</a> <a id="10909" href="Categories.Functor.Core.html#511" class="Function">L.identity</a><a id="10919" class="Symbol">))))</a> <a id="10924" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">⟩</a>
|
|||
|
<a id="10936" href="Level.html#479" class="Field">lower</a> <a id="10942" class="Symbol">(</a><a id="10943" href="Categories.NaturalTransformation.Core.html#783" class="Function">⇒.η</a> <a id="10947" class="Symbol">(</a><a id="10948" href="Categories.Functor.Core.html#432" class="Field">R.F₀</a> <a id="10953" href="Categories.Adjoint.Equivalents.html#10304" class="Bound">B</a> <a id="10955" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="10957" href="Categories.Adjoint.Equivalents.html#10304" class="Bound">B</a><a id="10958" class="Symbol">)</a> <a id="10960" href="Function.Bundles.html#15133" class="Function Operator">⟨$⟩</a> <a id="10964" href="Level.html#466" class="InductiveConstructor">lift</a> <a id="10969" class="Symbol">(</a><a id="10970" href="Level.html#479" class="Field">lower</a> <a id="10976" class="Symbol">(</a><a id="10977" href="Categories.NaturalTransformation.Core.html#783" class="Function">⇐.η</a> <a id="10981" class="Symbol">(</a><a id="10982" href="Categories.Functor.Core.html#432" class="Field">R.F₀</a> <a id="10987" href="Categories.Adjoint.Equivalents.html#10304" class="Bound">B</a> <a id="10989" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="10991" href="Categories.Adjoint.Equivalents.html#10304" class="Bound">B</a><a id="10992" class="Symbol">)</a> <a id="10994" href="Function.Bundles.html#15133" class="Function Operator">⟨$⟩</a> <a id="10998" href="Level.html#466" class="InductiveConstructor">lift</a> <a id="11003" href="Categories.Category.Core.html#630" class="Function">id</a><a id="11005" class="Symbol">)))</a>
|
|||
|
<a id="11021" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">≈⟨</a> <a id="11024" href="Level.html#479" class="Field">lower</a> <a id="11030" href="Categories.Morphism.html#1612" class="Function">isoʳ</a> <a id="11035" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">⟩</a>
|
|||
|
<a id="11047" href="Categories.Category.Core.html#630" class="Function">id</a> <a id="11050" href="Relation.Binary.Reasoning.Syntax.html#12283" class="Function Operator">∎</a>
|
|||
|
<a id="11058" class="Symbol">}</a>
|
|||
|
<a id="11066" class="Keyword">where</a> <a id="11072" class="Keyword">open</a> <a id="11077" href="Categories.NaturalTransformation.Core.html#466" class="Module">NaturalTransformation</a>
|
|||
|
<a id="11111" class="Keyword">module</a> <a id="11118" href="Categories.Adjoint.Equivalents.html#11118" class="Module">_</a> <a id="11120" class="Symbol">{</a><a id="11121" href="Categories.Adjoint.Equivalents.html#11121" class="Bound">X</a><a id="11122" class="Symbol">}</a> <a id="11124" class="Keyword">where</a>
|
|||
|
<a id="11144" class="Keyword">open</a> <a id="11149" href="Categories.Morphism.html#1528" class="Module">Iso</a> <a id="11153" class="Symbol">(</a><a id="11154" href="Categories.NaturalTransformation.NaturalIsomorphism.html#1051" class="Field">iso</a> <a id="11158" href="Categories.Adjoint.Equivalents.html#11121" class="Bound">X</a><a id="11159" class="Symbol">)</a> <a id="11161" class="Keyword">public</a>
|
|||
|
</pre></body></html>
|