mirror of
https://git8.cs.fau.de/theses/bsc-leon-vatthauer.git
synced 2024-05-31 07:28:34 +02:00
79 lines
55 KiB
HTML
79 lines
55 KiB
HTML
|
<!DOCTYPE HTML>
|
|||
|
<html><head><meta charset="utf-8"><title>Categories.Object.NaturalNumbers.Parametrized</title><link rel="stylesheet" href="Agda.css"></head><body><pre class="Agda"><a id="1" class="Symbol">{-#</a> <a id="5" class="Keyword">OPTIONS</a> <a id="13" class="Pragma">--without-K</a> <a id="25" class="Pragma">--safe</a> <a id="32" class="Symbol">#-}</a>
|
|||
|
|
|||
|
<a id="37" class="Keyword">open</a> <a id="42" class="Keyword">import</a> <a id="49" href="Categories.Category.Core.html" class="Module">Categories.Category.Core</a>
|
|||
|
<a id="74" class="Keyword">open</a> <a id="79" class="Keyword">import</a> <a id="86" href="Categories.Object.Terminal.html" class="Module">Categories.Object.Terminal</a> <a id="113" class="Keyword">using</a> <a id="119" class="Symbol">(</a><a id="120" href="Categories.Object.Terminal.html#860" class="Record">Terminal</a><a id="128" class="Symbol">)</a>
|
|||
|
<a id="130" class="Keyword">open</a> <a id="135" class="Keyword">import</a> <a id="142" href="Categories.Category.Cartesian.Bundle.html" class="Module">Categories.Category.Cartesian.Bundle</a> <a id="179" class="Keyword">using</a> <a id="185" class="Symbol">(</a><a id="186" href="Categories.Category.Cartesian.Bundle.html#422" class="Record">CartesianCategory</a><a id="203" class="Symbol">)</a>
|
|||
|
<a id="205" class="Keyword">open</a> <a id="210" class="Keyword">import</a> <a id="217" href="Categories.Category.BinaryProducts.html" class="Module">Categories.Category.BinaryProducts</a> <a id="252" class="Keyword">using</a> <a id="258" class="Symbol">(</a><a id="259" href="Categories.Category.BinaryProducts.html#848" class="Record">BinaryProducts</a><a id="273" class="Symbol">)</a>
|
|||
|
|
|||
|
<a id="276" class="Comment">-- Parametrized natural numbers object as described here https://ncatlab.org/nlab/show/natural+numbers+object#withparams</a>
|
|||
|
|
|||
|
<a id="398" class="Keyword">module</a> <a id="405" href="Categories.Object.NaturalNumbers.Parametrized.html" class="Module">Categories.Object.NaturalNumbers.Parametrized</a> <a id="451" class="Symbol">{</a><a id="452" href="Categories.Object.NaturalNumbers.Parametrized.html#452" class="Bound">o</a> <a id="454" href="Categories.Object.NaturalNumbers.Parametrized.html#454" class="Bound">ℓ</a> <a id="456" href="Categories.Object.NaturalNumbers.Parametrized.html#456" class="Bound">e</a><a id="457" class="Symbol">}</a> <a id="459" class="Symbol">(</a><a id="460" href="Categories.Object.NaturalNumbers.Parametrized.html#460" class="Bound">CC</a> <a id="463" class="Symbol">:</a> <a id="465" href="Categories.Category.Cartesian.Bundle.html#422" class="Record">CartesianCategory</a> <a id="483" href="Categories.Object.NaturalNumbers.Parametrized.html#452" class="Bound">o</a> <a id="485" href="Categories.Object.NaturalNumbers.Parametrized.html#454" class="Bound">ℓ</a> <a id="487" href="Categories.Object.NaturalNumbers.Parametrized.html#456" class="Bound">e</a><a id="488" class="Symbol">)</a> <a id="490" class="Keyword">where</a>
|
|||
|
|
|||
|
<a id="497" class="Keyword">open</a> <a id="502" class="Keyword">import</a> <a id="509" href="Level.html" class="Module">Level</a>
|
|||
|
<a id="515" class="Keyword">open</a> <a id="520" href="Categories.Category.Cartesian.Bundle.html#422" class="Module">CartesianCategory</a> <a id="538" href="Categories.Object.NaturalNumbers.Parametrized.html#460" class="Bound">CC</a> <a id="541" class="Keyword">renaming</a> <a id="550" class="Symbol">(</a><a id="551" href="Categories.Category.Cartesian.Bundle.html#488" class="Field">U</a> <a id="553" class="Symbol">to</a> <a id="556" class="Field">𝒞</a><a id="557" class="Symbol">)</a>
|
|||
|
<a id="559" class="Keyword">open</a> <a id="564" href="Categories.Category.Core.html#2462" class="Module">HomReasoning</a>
|
|||
|
<a id="577" class="Keyword">open</a> <a id="582" href="Categories.Category.Core.html#1530" class="Module">Equiv</a>
|
|||
|
|
|||
|
<a id="589" class="Keyword">open</a> <a id="594" href="Categories.Category.BinaryProducts.html#848" class="Module">BinaryProducts</a> <a id="609" href="Categories.Category.Cartesian.html#801" class="Function">products</a> <a id="618" class="Keyword">hiding</a> <a id="625" class="Symbol">(</a><a id="626" href="Categories.Object.Product.Core.html#797" class="Function">η</a><a id="627" class="Symbol">;</a> <a id="629" href="Categories.Object.Product.Core.html#671" class="Function">unique</a><a id="635" class="Symbol">)</a>
|
|||
|
<a id="637" class="Keyword">open</a> <a id="642" class="Keyword">import</a> <a id="649" href="Categories.Object.NaturalNumbers.html" class="Module">Categories.Object.NaturalNumbers</a> <a id="682" href="Categories.Object.NaturalNumbers.Parametrized.html#556" class="Field">𝒞</a> <a id="684" href="Categories.Category.Cartesian.html#777" class="Function">terminal</a> <a id="693" class="Keyword">using</a> <a id="699" class="Symbol">(</a><a id="700" href="Categories.Object.NaturalNumbers.html#412" class="Record">IsNNO</a><a id="705" class="Symbol">;</a> <a id="707" href="Categories.Object.NaturalNumbers.html#1072" class="Record">NNO</a><a id="710" class="Symbol">)</a> <a id="712" class="Keyword">renaming</a> <a id="721" class="Symbol">(</a><a id="722" href="Categories.Object.NaturalNumbers.html#1271" class="Function">up-to-iso</a> <a id="732" class="Symbol">to</a> <a id="735" class="Function">nno-up-to-iso</a><a id="748" class="Symbol">)</a>
|
|||
|
<a id="750" class="Keyword">open</a> <a id="755" href="Categories.Object.Terminal.html#860" class="Module">Terminal</a> <a id="764" href="Categories.Category.Cartesian.html#777" class="Function">terminal</a> <a id="773" class="Keyword">using</a> <a id="779" class="Symbol">(</a><a id="780" href="Categories.Object.Terminal.html#905" class="Field">⊤</a><a id="781" class="Symbol">;</a> <a id="783" href="Categories.Object.Terminal.html#577" class="Function">!</a><a id="784" class="Symbol">;</a> <a id="786" href="Categories.Object.Terminal.html#647" class="Function">!-unique₂</a><a id="795" class="Symbol">)</a>
|
|||
|
|
|||
|
<a id="798" class="Keyword">open</a> <a id="803" class="Keyword">import</a> <a id="810" href="Categories.Morphism.html" class="Module">Categories.Morphism</a> <a id="830" href="Categories.Object.NaturalNumbers.Parametrized.html#556" class="Field">𝒞</a> <a id="832" class="Keyword">using</a> <a id="838" class="Symbol">(</a><a id="839" href="Categories.Morphism.html#1958" class="Record Operator">_≅_</a><a id="842" class="Symbol">)</a>
|
|||
|
<a id="844" class="Keyword">open</a> <a id="849" class="Keyword">import</a> <a id="856" href="Categories.Morphism.Reasoning.html" class="Module">Categories.Morphism.Reasoning</a> <a id="886" href="Categories.Object.NaturalNumbers.Parametrized.html#556" class="Field">𝒞</a>
|
|||
|
|
|||
|
<a id="889" class="Keyword">record</a> <a id="IsParametrizedNNO"></a><a id="896" href="Categories.Object.NaturalNumbers.Parametrized.html#896" class="Record">IsParametrizedNNO</a> <a id="914" class="Symbol">(</a><a id="915" href="Categories.Object.NaturalNumbers.Parametrized.html#915" class="Bound">N</a> <a id="917" class="Symbol">:</a> <a id="919" href="Categories.Category.Core.html#559" class="Function">Obj</a><a id="922" class="Symbol">)</a> <a id="924" class="Symbol">:</a> <a id="926" href="Agda.Primitive.html#388" class="Primitive">Set</a> <a id="930" class="Symbol">(</a><a id="931" href="Categories.Object.NaturalNumbers.Parametrized.html#452" class="Bound">o</a> <a id="933" href="Agda.Primitive.html#961" class="Primitive Operator">⊔</a> <a id="935" href="Categories.Object.NaturalNumbers.Parametrized.html#454" class="Bound">ℓ</a> <a id="937" href="Agda.Primitive.html#961" class="Primitive Operator">⊔</a> <a id="939" href="Categories.Object.NaturalNumbers.Parametrized.html#456" class="Bound">e</a><a id="940" class="Symbol">)</a> <a id="942" class="Keyword">where</a>
|
|||
|
<a id="950" class="Keyword">field</a>
|
|||
|
<a id="IsParametrizedNNO.z"></a><a id="960" href="Categories.Object.NaturalNumbers.Parametrized.html#960" class="Field">z</a> <a id="962" class="Symbol">:</a> <a id="964" href="Categories.Object.Terminal.html#905" class="Function">⊤</a> <a id="966" href="Categories.Category.Core.html#575" class="Function Operator">⇒</a> <a id="968" href="Categories.Object.NaturalNumbers.Parametrized.html#915" class="Bound">N</a>
|
|||
|
<a id="IsParametrizedNNO.s"></a><a id="974" href="Categories.Object.NaturalNumbers.Parametrized.html#974" class="Field">s</a> <a id="976" class="Symbol">:</a> <a id="978" href="Categories.Object.NaturalNumbers.Parametrized.html#915" class="Bound">N</a> <a id="980" href="Categories.Category.Core.html#575" class="Function Operator">⇒</a> <a id="982" href="Categories.Object.NaturalNumbers.Parametrized.html#915" class="Bound">N</a>
|
|||
|
<a id="IsParametrizedNNO.universal"></a><a id="988" href="Categories.Object.NaturalNumbers.Parametrized.html#988" class="Field">universal</a> <a id="998" class="Symbol">:</a> <a id="1000" class="Symbol">∀</a> <a id="1002" class="Symbol">{</a><a id="1003" href="Categories.Object.NaturalNumbers.Parametrized.html#1003" class="Bound">A</a> <a id="1005" href="Categories.Object.NaturalNumbers.Parametrized.html#1005" class="Bound">X</a><a id="1006" class="Symbol">}</a> <a id="1008" class="Symbol">→</a> <a id="1010" href="Categories.Object.NaturalNumbers.Parametrized.html#1003" class="Bound">A</a> <a id="1012" href="Categories.Category.Core.html#575" class="Function Operator">⇒</a> <a id="1014" href="Categories.Object.NaturalNumbers.Parametrized.html#1005" class="Bound">X</a> <a id="1016" class="Symbol">→</a> <a id="1018" href="Categories.Object.NaturalNumbers.Parametrized.html#1005" class="Bound">X</a> <a id="1020" href="Categories.Category.Core.html#575" class="Function Operator">⇒</a> <a id="1022" href="Categories.Object.NaturalNumbers.Parametrized.html#1005" class="Bound">X</a> <a id="1024" class="Symbol">→</a> <a id="1026" href="Categories.Object.NaturalNumbers.Parametrized.html#1003" class="Bound">A</a> <a id="1028" href="Categories.Category.BinaryProducts.html#1053" class="Function Operator">×</a> <a id="1030" href="Categories.Object.NaturalNumbers.Parametrized.html#915" class="Bound">N</a> <a id="1032" href="Categories.Category.Core.html#575" class="Function Operator">⇒</a> <a id="1034" href="Categories.Object.NaturalNumbers.Parametrized.html#1005" class="Bound">X</a>
|
|||
|
<a id="IsParametrizedNNO.commute₁"></a><a id="1040" href="Categories.Object.NaturalNumbers.Parametrized.html#1040" class="Field">commute₁</a> <a id="1049" class="Symbol">:</a> <a id="1051" class="Symbol">∀</a> <a id="1053" class="Symbol">{</a><a id="1054" href="Categories.Object.NaturalNumbers.Parametrized.html#1054" class="Bound">A</a> <a id="1056" href="Categories.Object.NaturalNumbers.Parametrized.html#1056" class="Bound">X</a><a id="1057" class="Symbol">}</a> <a id="1059" class="Symbol">{</a><a id="1060" href="Categories.Object.NaturalNumbers.Parametrized.html#1060" class="Bound">f</a> <a id="1062" class="Symbol">:</a> <a id="1064" href="Categories.Object.NaturalNumbers.Parametrized.html#1054" class="Bound">A</a> <a id="1066" href="Categories.Category.Core.html#575" class="Function Operator">⇒</a> <a id="1068" href="Categories.Object.NaturalNumbers.Parametrized.html#1056" class="Bound">X</a><a id="1069" class="Symbol">}</a> <a id="1071" class="Symbol">{</a><a id="1072" href="Categories.Object.NaturalNumbers.Parametrized.html#1072" class="Bound">g</a> <a id="1074" class="Symbol">:</a> <a id="1076" href="Categories.Object.NaturalNumbers.Parametrized.html#1056" class="Bound">X</a> <a id="1078" href="Categories.Category.Core.html#575" class="Function Operator">⇒</a> <a id="1080" href="Categories.Object.NaturalNumbers.Parametrized.html#1056" class="Bound">X</a><a id="1081" class="Symbol">}</a> <a id="1083" class="Symbol">→</a> <a id="1085" href="Categories.Object.NaturalNumbers.Parametrized.html#1060" class="Bound">f</a> <a id="1087" href="Categories.Category.Core.html#595" class="Function Operator">≈</a> <a id="1089" href="Categories.Object.NaturalNumbers.Parametrized.html#988" class="Field">universal</a> <a id="1099" href="Categories.Object.NaturalNumbers.Parametrized.html#1060" class="Bound">f</a> <a id="1101" href="Categories.Object.NaturalNumbers.Parametrized.html#1072" class="Bound">g</a> <a id="1103" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="1105" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟨</a> <a id="1107" href="Categories.Category.Core.html#630" class="Function">id</a> <a id="1110" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">,</a> <a id="1112" href="Categories.Object.NaturalNumbers.Parametrized.html#960" class="Field">z</a> <a id="1114" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="1116" href="Categories.Object.Terminal.html#577" class="Function">!</a> <a id="1118" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟩</a>
|
|||
|
<a id="IsParametrizedNNO.commute₂"></a><a id="1124" href="Categories.Object.NaturalNumbers.Parametrized.html#1124" class="Field">commute₂</a> <a id="1133" class="Symbol">:</a> <a id="1135" class="Symbol">∀</a> <a id="1137" class="Symbol">{</a><a id="1138" href="Categories.Object.NaturalNumbers.Parametrized.html#1138" class="Bound">A</a> <a id="1140" href="Categories.Object.NaturalNumbers.Parametrized.html#1140" class="Bound">X</a><a id="1141" class="Symbol">}</a> <a id="1143" class="Symbol">{</a><a id="1144" href="Categories.Object.NaturalNumbers.Parametrized.html#1144" class="Bound">f</a> <a id="1146" class="Symbol">:</a> <a id="1148" href="Categories.Object.NaturalNumbers.Parametrized.html#1138" class="Bound">A</a> <a id="1150" href="Categories.Category.Core.html#575" class="Function Operator">⇒</a> <a id="1152" href="Categories.Object.NaturalNumbers.Parametrized.html#1140" class="Bound">X</a><a id="1153" class="Symbol">}</a> <a id="1155" class="Symbol">{</a><a id="1156" href="Categories.Object.NaturalNumbers.Parametrized.html#1156" class="Bound">g</a> <a id="1158" class="Symbol">:</a> <a id="1160" href="Categories.Object.NaturalNumbers.Parametrized.html#1140" class="Bound">X</a> <a id="1162" href="Categories.Category.Core.html#575" class="Function Operator">⇒</a> <a id="1164" href="Categories.Object.NaturalNumbers.Parametrized.html#1140" class="Bound">X</a><a id="1165" class="Symbol">}</a> <a id="1167" class="Symbol">→</a> <a id="1169" href="Categories.Object.NaturalNumbers.Parametrized.html#1156" class="Bound">g</a> <a id="1171" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="1173" class="Symbol">(</a><a id="1174" href="Categories.Object.NaturalNumbers.Parametrized.html#988" class="Field">universal</a> <a id="1184" href="Categories.Object.NaturalNumbers.Parametrized.html#1144" class="Bound">f</a> <a id="1186" href="Categories.Object.NaturalNumbers.Parametrized.html#1156" class="Bound">g</a><a id="1187" class="Symbol">)</a> <a id="1189" href="Categories.Category.Core.html#595" class="Function Operator">≈</a> <a id="1191" class="Symbol">(</a><a id="1192" href="Categories.Object.NaturalNumbers.Parametrized.html#988" class="Field">universal</a> <a id="1202" href="Categories.Object.NaturalNumbers.Parametrized.html#1144" class="Bound">f</a> <a id="1204" href="Categories.Object.NaturalNumbers.Parametrized.html#1156" class="Bound">g</a><a id="1205" class="Symbol">)</a> <a id="1207" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="1209" class="Symbol">(</a><a id="1210" href="Categories.Category.Core.html#630" class="Function">id</a> <a id="1213" href="Categories.Category.BinaryProducts.html#1465" class="Function Operator">⁂</a> <a id="1215" href="Categories.Object.NaturalNumbers.Parametrized.html#974" class="Field">s</a><a id="1216" class="Symbol">)</a>
|
|||
|
<a id="IsParametrizedNNO.unique"></a><a id="1222" href="Categories.Object.NaturalNumbers.Parametrized.html#1222" class="Field">unique</a> <a id="1229" class="Symbol">:</a> <a id="1231" class="Symbol">∀</a> <a id="1233" class="Symbol">{</a><a id="1234" href="Categories.Object.NaturalNumbers.Parametrized.html#1234" class="Bound">A</a> <a id="1236" href="Categories.Object.NaturalNumbers.Parametrized.html#1236" class="Bound">X</a><a id="1237" class="Symbol">}</a> <a id="1239" class="Symbol">{</a><a id="1240" href="Categories.Object.NaturalNumbers.Parametrized.html#1240" class="Bound">f</a> <a id="1242" class="Symbol">:</a> <a id="1244" href="Categories.Object.NaturalNumbers.Parametrized.html#1234" class="Bound">A</a> <a id="1246" href="Categories.Category.Core.html#575" class="Function Operator">⇒</a> <a id="1248" href="Categories.Object.NaturalNumbers.Parametrized.html#1236" class="Bound">X</a><a id="1249" class="Symbol">}</a> <a id="1251" class="Symbol">{</a><a id="1252" href="Categories.Object.NaturalNumbers.Parametrized.html#1252" class="Bound">g</a> <a id="1254" class="Symbol">:</a> <a id="1256" href="Categories.Object.NaturalNumbers.Parametrized.html#1236" class="Bound">X</a> <a id="1258" href="Categories.Category.Core.html#575" class="Function Operator">⇒</a> <a id="1260" href="Categories.Object.NaturalNumbers.Parametrized.html#1236" class="Bound">X</a><a id="1261" class="Symbol">}</a> <a id="1263" class="Symbol">{</a><a id="1264" href="Categories.Object.NaturalNumbers.Parametrized.html#1264" class="Bound">u</a> <a id="1266" class="Symbol">:</a> <a id="1268" href="Categories.Object.NaturalNumbers.Parametrized.html#1234" class="Bound">A</a> <a id="1270" href="Categories.Category.BinaryProducts.html#1053" class="Function Operator">×</a> <a id="1272" href="Categories.Object.NaturalNumbers.Parametrized.html#915" class="Bound">N</a> <a id="1274" href="Categories.Category.Core.html#575" class="Function Operator">⇒</a> <a id="1276" href="Categories.Object.NaturalNumbers.Parametrized.html#1236" class="Bound">X</a><a id="1277" class="Symbol">}</a> <a id="1279" class="Symbol">→</a> <a id="1281" href="Categories.Object.NaturalNumbers.Parametrized.html#1240" class="Bound">f</a> <a id="1283" href="Categories.Category.Core.html#595" class="Function Operator">≈</a> <a id="1285" href="Categories.Object.NaturalNumbers.Parametrized.html#1264" class="Bound">u</a> <a id="1287" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="1289" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟨</a> <a id="1291" href="Categories.Category.Core.html#630" class="Function">id</a> <a id="1294" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">,</a> <a id="1296" href="Categories.Object.NaturalNumbers.Parametrized.html#960" class="Field">z</a> <a id="1298" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="1300" href="Categories.Object.Terminal.html#577" class="Function">!</a> <a id="1302" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟩</a> <a id="1304" class="Symbol">→</a> <a id="1306" href="Categories.Object.NaturalNumbers.Parametrized.html#1252" class="Bound">g</a> <a id="1308" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="1310" href="Categories.Object.NaturalNumbers.Parametrized.html#1264" class="Bound">u</a> <a id="1312" href="Categories.Category.Core.html#595" class="Function Operator">≈</a> <a id="1314" href="Categories.Object.NaturalNumbers.Parametrized.html#1264" class="Bound">u</a> <a id="1316" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="1318" class="Symbol">(</a><a id="1319" href="Categories.Category.Core.html#630" class="Function">id</a> <a id="1322" href="Categories.Category.BinaryProducts.html#1465" class="Function Operator">⁂</a> <a id="1324" href="Categories.Object.NaturalNumbers.Parametrized.html#974" class="Field">s</a><a id="1325" class="Symbol">)</a> <a id="1327" class="Symbol">→</a> <a
|
|||
|
|
|||
|
<a id="IsParametrizedNNO.η"></a><a id="1350" href="Categories.Object.NaturalNumbers.Parametrized.html#1350" class="Function">η</a> <a id="1352" class="Symbol">:</a> <a id="1354" href="Categories.Object.NaturalNumbers.Parametrized.html#988" class="Field">universal</a> <a id="1364" class="Symbol">{</a><a id="1365" class="Argument">A</a> <a id="1367" class="Symbol">=</a> <a id="1369" href="Categories.Object.Terminal.html#905" class="Function">⊤</a><a id="1370" class="Symbol">}</a> <a id="1372" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟨</a> <a id="1374" href="Categories.Category.Core.html#630" class="Function">id</a> <a id="1377" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">,</a> <a id="1379" href="Categories.Object.NaturalNumbers.Parametrized.html#960" class="Field">z</a> <a id="1381" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="1383" href="Categories.Object.Terminal.html#577" class="Function">!</a> <a id="1385" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟩</a> <a id="1387" class="Symbol">(</a><a id="1388" href="Categories.Category.Core.html#630" class="Function">id</a> <a id="1391" href="Categories.Category.BinaryProducts.html#1465" class="Function Operator">⁂</a> <a id="1393" href="Categories.Object.NaturalNumbers.Parametrized.html#974" class="Field">s</a><a id="1394" class="Symbol">)</a> <a id="1396" href="Categories.Category.Core.html#595" class="Function Operator">≈</a> <a id="1398" href="Categories.Category.Core.html#630" class="Function">id</a>
|
|||
|
<a id="1403" href="Categories.Object.NaturalNumbers.Parametrized.html#1350" class="Function">η</a> <a id="1405" class="Symbol">=</a> <a id="1407" href="Categories.Category.Core.html#3005" class="Function">⟺</a> <a id="1409" class="Symbol">(</a><a id="1410" href="Categories.Object.NaturalNumbers.Parametrized.html#1222" class="Field">unique</a> <a id="1417" class="Symbol">(</a><a id="1418" href="Categories.Category.Core.html#3005" class="Function">⟺</a> <a id="1420" href="Categories.Category.Core.html#1096" class="Function">identityˡ</a><a id="1429" class="Symbol">)</a> <a id="1431" href="Categories.Morphism.Reasoning.Core.html#1202" class="Function">id-comm</a><a id="1438" class="Symbol">)</a>
|
|||
|
|
|||
|
<a id="IsParametrizedNNO.universal-cong"></a><a id="1445" href="Categories.Object.NaturalNumbers.Parametrized.html#1445" class="Function">universal-cong</a> <a id="1460" class="Symbol">:</a> <a id="1462" class="Symbol">∀</a> <a id="1464" class="Symbol">{</a><a id="1465" href="Categories.Object.NaturalNumbers.Parametrized.html#1465" class="Bound">A</a><a id="1466" class="Symbol">}</a> <a id="1468" class="Symbol">→</a> <a id="1470" class="Symbol">{</a><a id="1471" href="Categories.Object.NaturalNumbers.Parametrized.html#1471" class="Bound">f</a> <a id="1473" href="Categories.Object.NaturalNumbers.Parametrized.html#1473" class="Bound">f′</a> <a id="1476" class="Symbol">:</a> <a id="1478" href="Categories.Object.Terminal.html#905" class="Function">⊤</a> <a id="1480" href="Categories.Category.Core.html#575" class="Function Operator">⇒</a> <a id="1482" href="Categories.Object.NaturalNumbers.Parametrized.html#1465" class="Bound">A</a><a id="1483" class="Symbol">}</a> <a id="1485" class="Symbol">→</a> <a id="1487" class="Symbol">{</a><a id="1488" href="Categories.Object.NaturalNumbers.Parametrized.html#1488" class="Bound">g</a> <a id="1490" href="Categories.Object.NaturalNumbers.Parametrized.html#1490" class="Bound">g′</a> <a id="1493" class="Symbol">:</a> <a id="1495" href="Categories.Object.NaturalNumbers.Parametrized.html#1465" class="Bound">A</a> <a id="1497" href="Categories.Category.Core.html#575" class="Function Operator">⇒</a> <a id="1499" href="Categories.Object.NaturalNumbers.Parametrized.html#1465" class="Bound">A</a><a id="1500" class="Symbol">}</a> <a id="1502" class="Symbol">→</a> <a id="1504" href="Categories.Object.NaturalNumbers.Parametrized.html#1471" class="Bound">f</a> <a id="1506" href="Categories.Category.Core.html#595" class="Function Operator">≈</a> <a id="1508" href="Categories.Object.NaturalNumbers.Parametrized.html#1473" class="Bound">f′</a> <a id="1511" class="Symbol">→</a> <a id="1513" href="Categories.Object.NaturalNumbers.Parametrized.html#1488" class="Bound">g</a> <a id="1515" href="Categories.Category.Core.html#595" class="Function Operator">≈</a> <a id="1517" href="Categories.Object.NaturalNumbers.Parametrized.html#1490" class="Bound">g′</a> <a id="1520" class="Symbol">→</a> <a id="1522" href="Categories.Object.NaturalNumbers.Parametrized.html#988" class="Field">universal</a> <a id="1532" href="Categories.Object.NaturalNumbers.Parametrized.html#1471" class="Bound">f</a> <a id="1534" href="Categories.Object.NaturalNumbers.Parametrized.html#1488" class="Bound">g</a> <a id="1536" href="Categories.Category.Core.html#595" class="Function Operator">≈</a> <a id="1538" href="Categories.Object.NaturalNumbers.Parametrized.html#988" class="Field">universal</a> <a id="1548" href="Categories.Object.NaturalNumbers.Parametrized.html#1473" class="Bound">f′</a> <a id="1551" href="Categories.Object.NaturalNumbers.Parametrized.html#1490" class="Bound">g′</a>
|
|||
|
<a id="1556" href="Categories.Object.NaturalNumbers.Parametrized.html#1445" class="Function">universal-cong</a> <a id="1571" href="Categories.Object.NaturalNumbers.Parametrized.html#1571" class="Bound">f≈f′</a> <a id="1576" href="Categories.Object.NaturalNumbers.Parametrized.html#1576" class="Bound">g≈g′</a> <a id="1581" class="Symbol">=</a> <a id="1583" href="Categories.Object.NaturalNumbers.Parametrized.html#1222" class="Field">unique</a> <a id="1590" class="Symbol">(</a><a id="1591" href="Categories.Category.Core.html#3005" class="Function">⟺</a> <a id="1593" href="Categories.Object.NaturalNumbers.Parametrized.html#1571" class="Bound">f≈f′</a> <a id="1598" href="Categories.Category.Core.html#3061" class="Function Operator">○</a> <a id="1601" href="Categories.Object.NaturalNumbers.Parametrized.html#1040" class="Field">commute₁</a><a id="1609" class="Symbol">)</a> <a id="1611" class="Symbol">(</a><a id="1612" href="Categories.Category.Core.html#1597" class="Function">∘-resp-≈ˡ</a> <a id="1622" class="Symbol">(</a><a id="1623" href="Categories.Category.Core.html#3005" class="Function">⟺</a> <a id="1625" href="Categories.Object.NaturalNumbers.Parametrized.html#1576" class="Bound">g≈g′</a><a id="1629" class="Symbol">)</a> <a id="1631" href="Categories.Category.Core.html#3061" class="Function Operator">○</a> <a id="1633" href="Categories.Object.NaturalNumbers.Parametrized.html#1124" class="Field">commute₂</a><a id="1641" class="Symbol">)</a>
|
|||
|
|
|||
|
<a id="IsParametrizedNNO.isNNO"></a><a id="1646" href="Categories.Object.NaturalNumbers.Parametrized.html#1646" class="Function">isNNO</a> <a id="1652" class="Symbol">:</a> <a id="1654" href="Categories.Object.NaturalNumbers.html#412" class="Record">IsNNO</a> <a id="1660" href="Categories.Object.NaturalNumbers.Parametrized.html#915" class="Bound">N</a>
|
|||
|
<a id="1664" href="Categories.Object.NaturalNumbers.Parametrized.html#1646" class="Function">isNNO</a> <a id="1670" class="Symbol">=</a> <a id="1672" class="Keyword">record</a>
|
|||
|
<a id="1683" class="Symbol">{</a> <a id="1685" href="Categories.Object.NaturalNumbers.html#464" class="Field">z</a> <a id="1687" class="Symbol">=</a> <a id="1689" href="Categories.Object.NaturalNumbers.Parametrized.html#960" class="Field">z</a>
|
|||
|
<a id="1695" class="Symbol">;</a> <a id="1697" href="Categories.Object.NaturalNumbers.html#478" class="Field">s</a> <a id="1699" class="Symbol">=</a> <a id="1701" href="Categories.Object.NaturalNumbers.Parametrized.html#974" class="Field">s</a>
|
|||
|
<a id="1707" class="Symbol">;</a> <a id="1709" href="Categories.Object.NaturalNumbers.html#492" class="Field">universal</a> <a id="1719" class="Symbol">=</a> <a id="1721" class="Symbol">λ</a> <a id="1723" class="Symbol">{</a><a id="1724" href="Categories.Object.NaturalNumbers.Parametrized.html#1724" class="Bound">A</a><a id="1725" class="Symbol">}</a> <a id="1727" href="Categories.Object.NaturalNumbers.Parametrized.html#1727" class="Bound">q</a> <a id="1729" href="Categories.Object.NaturalNumbers.Parametrized.html#1729" class="Bound">f</a> <a id="1731" class="Symbol">→</a> <a id="1733" href="Categories.Object.NaturalNumbers.Parametrized.html#988" class="Field">universal</a> <a id="1743" href="Categories.Object.NaturalNumbers.Parametrized.html#1727" class="Bound">q</a> <a id="1745" href="Categories.Object.NaturalNumbers.Parametrized.html#1729" class="Bound">f</a> <a id="1747" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="1749" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟨</a> <a id="1751" href="Categories.Object.Terminal.html#577" class="Function">!</a> <a id="1753" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">,</a> <a id="1755" href="Categories.Category.Core.html#630" class="Function">id</a> <a id="1758" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟩</a>
|
|||
|
<a id="1764" class="Symbol">;</a> <a id="1766" href="Categories.Object.NaturalNumbers.html#538" class="Field">z-commute</a> <a id="1776" class="Symbol">=</a> <a id="1778" class="Symbol">λ</a> <a id="1780" class="Symbol">{</a><a id="1781" href="Categories.Object.NaturalNumbers.Parametrized.html#1781" class="Bound">A</a><a id="1782" class="Symbol">}</a> <a id="1784" class="Symbol">{</a><a id="1785" href="Categories.Object.NaturalNumbers.Parametrized.html#1785" class="Bound">q</a><a id="1786" class="Symbol">}</a> <a id="1788" class="Symbol">{</a><a id="1789" href="Categories.Object.NaturalNumbers.Parametrized.html#1789" class="Bound">f</a><a id="1790" class="Symbol">}</a> <a id="1792" class="Symbol">→</a> <a id="1794" href="Relation.Binary.Reasoning.Syntax.html#1510" class="Function Operator">begin</a>
|
|||
|
<a id="1807" href="Categories.Object.NaturalNumbers.Parametrized.html#1785" class="Bound">q</a> <a id="1842" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">≈⟨</a> <a id="1845" href="Categories.Object.NaturalNumbers.Parametrized.html#1040" class="Field">commute₁</a> <a id="1854" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">⟩</a>
|
|||
|
<a id="1863" href="Categories.Object.NaturalNumbers.Parametrized.html#988" class="Field">universal</a> <a id="1873" href="Categories.Object.NaturalNumbers.Parametrized.html#1785" class="Bound">q</a> <a id="1875" href="Categories.Object.NaturalNumbers.Parametrized.html#1789" class="Bound">f</a> <a id="1877" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="1879" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟨</a> <a id="1881" href="Categories.Category.Core.html#630" class="Function">id</a> <a id="1884" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">,</a> <a id="1886" href="Categories.Object.NaturalNumbers.Parametrized.html#960" class="Field">z</a> <a id="1888" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="1890" href="Categories.Object.Terminal.html#577" class="Function">!</a> <a id="1892" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟩</a> <a id="1898" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">≈⟨</a> <a id="1901" href="Categories.Category.Core.html#2734" class="Function Operator">refl⟩∘⟨</a> <a id="1909" href="Categories.Object.Product.Core.html#854" class="Function">⟨⟩-cong₂</a> <a id="1918" href="Categories.Object.Terminal.html#647" class="Function">!-unique₂</a> <a id="1928" class="Symbol">(</a><a id="1929" href="Categories.Category.Core.html#3005" class="Function">⟺</a> <a id="1931" href="Categories.Object.NaturalNumbers.Parametrized.html#2806" class="Function">z∘!</a> <a id="1935" href="Categories.Category.Core.html#3061" class="Function Operator">○</a> <a id="1937" href="Categories.Category.Core.html#3005" class="Function">⟺</a> <a id="1939" href="Categories.Category.Core.html#1096" class="Function">identityˡ</a><a id="1948" class="Symbol">)</a> <a id="1950" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">⟩</a>
|
|||
|
<a id="1958" href="Categories.Object.NaturalNumbers.Parametrized.html#988" class="Field">universal</a> <a id="1968" href="Categories.Object.NaturalNumbers.Parametrized.html#1785" class="Bound">q</a> <a id="1970" href="Categories.Object.NaturalNumbers.Parametrized.html#1789" class="Bound">f</a> <a id="1972" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="1974" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟨</a> <a id="1976" href="Categories.Object.Terminal.html#577" class="Function">!</a> <a id="1978" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="1980" href="Categories.Object.NaturalNumbers.Parametrized.html#960" class="Field">z</a> <a id="1982" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">,</a> <a id="1984" href="Categories.Category.Core.html#630" class="Function">id</a> <a id="1987" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="1989" href="Categories.Object.NaturalNumbers.Parametrized.html#960" class="Field">z</a> <a id="1991" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟩</a> <a id="1993" href="Relation.Binary.Reasoning.Syntax.html#7400" class="Function">≈˘⟨</a> <a id="1997" href="Categories.Morphism.Reasoning.Core.html#1914" class="Function">pullʳ</a> <a id="2003" href="Categories.Category.BinaryProducts.html#2975" class="Function">⟨⟩∘</a> <a id="2007" href="Relation.Binary.Reasoning.Syntax.html#7400" class="Function">⟩</a>
|
|||
|
<a id="2015" class="Symbol">(</a><a id="2016" href="Categories.Object.NaturalNumbers.Parametrized.html#988" class="Field">universal</a> <a id="2026" href="Categories.Object.NaturalNumbers.Parametrized.html#1785" class="Bound">q</a> <a id="2028" href="Categories.Object.NaturalNumbers.Parametrized.html#1789" class="Bound">f</a> <a id="2030" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="2032" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟨</a> <a id="2034" href="Categories.Object.Terminal.html#577" class="Function">!</a> <a id="2036" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">,</a> <a id="2038" href="Categories.Category.Core.html#630" class="Function">id</a> <a id="2041" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟩</a><a id="2042" class="Symbol">)</a> <a id="2044" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="2046" href="Categories.Object.NaturalNumbers.Parametrized.html#960" class="Field">z</a> <a id="2050" href="Relation.Binary.Reasoning.Syntax.html#12283" class="Function Operator">∎</a>
|
|||
|
<a id="2056" class="Symbol">;</a> <a id="2058" href="Categories.Object.NaturalNumbers.html#608" class="Field">s-commute</a> <a id="2068" class="Symbol">=</a> <a id="2070" class="Symbol">λ</a> <a id="2072" class="Symbol">{</a><a id="2073" href="Categories.Object.NaturalNumbers.Parametrized.html#2073" class="Bound">A</a><a id="2074" class="Symbol">}</a> <a id="2076" class="Symbol">{</a><a id="2077" href="Categories.Object.NaturalNumbers.Parametrized.html#2077" class="Bound">q</a><a id="2078" class="Symbol">}</a> <a id="2080" class="Symbol">{</a><a id="2081" href="Categories.Object.NaturalNumbers.Parametrized.html#2081" class="Bound">f</a><a id="2082" class="Symbol">}</a> <a id="2084" class="Symbol">→</a> <a id="2086" href="Relation.Binary.Reasoning.Syntax.html#1510" class="Function Operator">begin</a>
|
|||
|
<a id="2099" href="Categories.Object.NaturalNumbers.Parametrized.html#2081" class="Bound">f</a> <a id="2101" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="2103" href="Categories.Object.NaturalNumbers.Parametrized.html#988" class="Field">universal</a> <a id="2113" href="Categories.Object.NaturalNumbers.Parametrized.html#2077" class="Bound">q</a> <a id="2115" href="Categories.Object.NaturalNumbers.Parametrized.html#2081" class="Bound">f</a> <a id="2117" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="2119" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟨</a> <a id="2121" href="Categories.Object.Terminal.html#577" class="Function">!</a> <a id="2123" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">,</a> <a id="2125" href="Categories.Category.Core.html#630" class="Function">id</a> <a id="2128" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟩</a> <a id="2139" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">≈⟨</a> <a id="2142" href="Categories.Morphism.Reasoning.Core.html#2048" class="Function">pullˡ</a> <a id="2148" href="Categories.Object.NaturalNumbers.Parametrized.html#1124" class="Field">commute₂</a> <a id="2157" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">⟩</a>
|
|||
|
<a id="2166" class="Symbol">(</a><a id="2167" href="Categories.Object.NaturalNumbers.Parametrized.html#988" class="Field">universal</a> <a id="2177" href="Categories.Object.NaturalNumbers.Parametrized.html#2077" class="Bound">q</a> <a id="2179" href="Categories.Object.NaturalNumbers.Parametrized.html#2081" class="Bound">f</a> <a id="2181" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="2183" class="Symbol">(</a><a id="2184" href="Categories.Category.Core.html#630" class="Function">id</a> <a id="2187" href="Categories.Category.BinaryProducts.html#1465" class="Function Operator">⁂</a> <a id="2189" href="Categories.Object.NaturalNumbers.Parametrized.html#974" class="Field">s</a><a id="2190" class="Symbol">))</a> <a id="2193" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="2195" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟨</a> <a id="2197" href="Categories.Object.Terminal.html#577" class="Function">!</a> <a id="2199" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">,</a> <a id="2201" href="Categories.Category.Core.html#630" class="Function">id</a> <a id="2204" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟩</a> <a id="2206" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">≈⟨</a> <a id="2209" href="Categories.Morphism.Reasoning.Core.html#1914" class="Function">pullʳ</a> <a id="2215" href="Categories.Category.BinaryProducts.html#2599" class="Function">⁂∘⟨⟩</a> <a id="2220" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">⟩</a>
|
|||
|
<a id="2228" href="Categories.Object.NaturalNumbers.Parametrized.html#988" class="Field">universal</a> <a id="2238" href="Categories.Object.NaturalNumbers.Parametrized.html#2077" class="Bound">q</a> <a id="2240" href="Categories.Object.NaturalNumbers.Parametrized.html#2081" class="Bound">f</a> <a id="2242" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="2244" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟨</a> <a id="2246" href="Categories.Category.Core.html#630" class="Function">id</a> <a id="2249" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="2251" href="Categories.Object.Terminal.html#577" class="Function">!</a> <a id="2253" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">,</a> <a id="2255" href="Categories.Object.NaturalNumbers.Parametrized.html#974" class="Field">s</a> <a id="2257" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="2259" href="Categories.Category.Core.html#630" class="Function">id</a> <a id="2262" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟩</a> <a id="2268" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">≈⟨</a> <a id="2271" href="Categories.Category.Core.html#2734" class="Function Operator">refl⟩∘⟨</a> <a id="2279" href="Categories.Object.Product.Core.html#854" class="Function">⟨⟩-cong₂</a> <a id="2288" href="Categories.Object.Terminal.html#647" class="Function">!-unique₂</a> <a id="2298" href="Categories.Morphism.Reasoning.Core.html#1202" class="Function">id-comm</a> <a id="2306" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">⟩</a>
|
|||
|
<a id="2314" href="Categories.Object.NaturalNumbers.Parametrized.html#988" class="Field">universal</a> <a id="2324" href="Categories.Object.NaturalNumbers.Parametrized.html#2077" class="Bound">q</a> <a id="2326" href="Categories.Object.NaturalNumbers.Parametrized.html#2081" class="Bound">f</a> <a id="2328" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="2330" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟨</a> <a id="2332" href="Categories.Object.Terminal.html#577" class="Function">!</a> <a id="2334" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="2336" href="Categories.Object.NaturalNumbers.Parametrized.html#974" class="Field">s</a> <a id="2338" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">,</a> <a id="2340" href="Categories.Category.Core.html#630" class="Function">id</a> <a id="2343" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="2345" href="Categories.Object.NaturalNumbers.Parametrized.html#974" class="Field">s</a> <a id="2347" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟩</a> <a id="2354" href="Relation.Binary.Reasoning.Syntax.html#7400" class="Function">≈˘⟨</a> <a id="2358" href="Categories.Morphism.Reasoning.Core.html#1914" class="Function">pullʳ</a> <a id="2364" href="Categories.Category.BinaryProducts.html#2975" class="Function">⟨⟩∘</a> <a id="2368" href="Relation.Binary.Reasoning.Syntax.html#7400" class="Function">⟩</a>
|
|||
|
<a id="2376" class="Symbol">(</a><a id="2377" href="Categories.Object.NaturalNumbers.Parametrized.html#988" class="Field">universal</a> <a id="2387" href="Categories.Object.NaturalNumbers.Parametrized.html#2077" class="Bound">q</a> <a id="2389" href="Categories.Object.NaturalNumbers.Parametrized.html#2081" class="Bound">f</a> <a id="2391" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="2393" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟨</a> <a id="2395" href="Categories.Object.Terminal.html#577" class="Function">!</a> <a id="2397" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">,</a> <a id="2399" href="Categories.Category.Core.html#630" class="Function">id</a> <a id="2402" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟩</a><a id="2403" class="Symbol">)</a> <a id="2405" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="2407" href="Categories.Object.NaturalNumbers.Parametrized.html#974" class="Field">s</a> <a id="2416" href="Relation.Binary.Reasoning.Syntax.html#12283" class="Function Operator">∎</a>
|
|||
|
<a id="2422" class="Symbol">;</a> <a id="2424" href="Categories.Object.NaturalNumbers.html#694" class="Field">unique</a> <a id="2431" class="Symbol">=</a> <a id="2433" class="Symbol">λ</a> <a id="2435" class="Symbol">{</a><a id="2436" href="Categories.Object.NaturalNumbers.Parametrized.html#2436" class="Bound">A</a><a id="2437" class="Symbol">}</a> <a id="2439" class="Symbol">{</a><a id="2440" href="Categories.Object.NaturalNumbers.Parametrized.html#2440" class="Bound">q</a><a id="2441" class="Symbol">}</a> <a id="2443" class="Symbol">{</a><a id="2444" href="Categories.Object.NaturalNumbers.Parametrized.html#2444" class="Bound">f</a><a id="2445" class="Symbol">}</a> <a id="2447" class="Symbol">{</a><a id="2448" href="Categories.Object.NaturalNumbers.Parametrized.html#2448" class="Bound">u</a><a id="2449" class="Symbol">}</a> <a id="2451" href="Categories.Object.NaturalNumbers.Parametrized.html#2451" class="Bound">eqᶻ</a> <a id="2455" href="Categories.Object.NaturalNumbers.Parametrized.html#2455" class="Bound">eqˢ</a> <a id="2459" class="Symbol">→</a> <a id="2461" href="Relation.Binary.Reasoning.Syntax.html#1510" class="Function Operator">begin</a>
|
|||
|
<a id="2474" href="Categories.Object.NaturalNumbers.Parametrized.html#2448" class="Bound">u</a> <a id="2501" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">≈⟨</a> <a id="2504" href="Categories.Morphism.Reasoning.Core.html#2899" class="Function">introʳ</a> <a id="2511" href="Categories.Object.Product.Core.html#637" class="Function">project₂</a> <a id="2520" href="Categories.Category.Core.html#3061" class="Function Operator">○</a> <a id="2522" href="Categories.Category.Core.html#1004" class="Function">sym-assoc</a> <a id="2532" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">⟩</a>
|
|||
|
<a id="2541" class="Symbol">(</a><a id="2542" href="Categories.Object.NaturalNumbers.Parametrized.html#2448" class="Bound">u</a> <a id="2544" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="2546" href="Categories.Object.Product.Core.html#546" class="Function">π₂</a><a id="2548" class="Symbol">)</a> <a id="2550" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="2552" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟨</a> <a id="2554" href="Categories.Object.Terminal.html#577" class="Function">!</a> <a id="2556" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">,</a> <a id="2558" href="Categories.Category.Core.html#630" class="Function">id</a> <a id="2561" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟩</a> <a id="2568" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">≈⟨</a> <a id="2571" href="Categories.Object.NaturalNumbers.Parametrized.html#1222" class="Field">unique</a> <a id="2578" class="Symbol">(</a><a id="2579" href="Categories.Object.NaturalNumbers.Parametrized.html#2451" class="Bound">eqᶻ</a> <a id="2583" href="Categories.Category.Core.html#3061" class="Function Operator">○</a> <a id="2585" class="Symbol">(</a><a id="2586" href="Categories.Morphism.Reasoning.Core.html#2347" class="Function">pushʳ</a> <a id="2592" class="Symbol">(</a><a id="2593" href="Categories.Object.NaturalNumbers.Parametrized.html#2806" class="Function">z∘!</a> <a id="2597" href="Categories.Category.Core.html#3061" class="Function Operator">○</a> <a id="2599" class="Symbol">(</a><a id="2600" href="Categories.Category.Core.html#3005" class="Function">⟺</a> <a id="2602" href="Categories.Object.Product.Core.html#637" class="Function">project₂</a><a id="2610" class="Symbol">))))</a>
|
|||
|
<a id="2659" class="Symbol">(</a><a id="2660" href="Categories.Morphism.Reasoning.Core.html#2048" class="Function">pullˡ</a> <a id="2666" href="Categories.Object.NaturalNumbers.Parametrized.html#2455" class="Bound">eqˢ</a> <a id="2670" href="Categories.Category.Core.html#3061" class="Function Operator">○</a> <a id="2672" href="Categories.Category.Core.html#3005" class="Function">⟺</a> <a id="2674" class="Symbol">(</a><a id="2675" href="Categories.Morphism.Reasoning.Core.html#1914" class="Function">pullʳ</a> <a id="2681" href="Categories.Object.Product.Core.html#637" class="Function">project₂</a> <a id="2690" href="Categories.Category.Core.html#3061" class="Function Operator">○</a> <a id="2692" href="Categories.Category.Core.html#1004" class="Function">sym-assoc</a><a id="2701" class="Symbol">))</a>
|
|||
|
<a id="2739" href="Categories.Category.Core.html#2837" class="Function Operator">⟩∘⟨refl</a> <a id="2747" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">⟩</a>
|
|||
|
<a id="2755" href="Categories.Object.NaturalNumbers.Parametrized.html#988" class="Field">universal</a> <a id="2765" href="Categories.Object.NaturalNumbers.Parametrized.html#2440" class="Bound">q</a> <a id="2767" href="Categories.Object.NaturalNumbers.Parametrized.html#2444" class="Bound">f</a> <a id="2769" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="2771" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟨</a> <a id="2773" href="Categories.Object.Terminal.html#577" class="Function">!</a> <a id="2775" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">,</a> <a id="2777" href="Categories.Category.Core.html#630" class="Function">id</a> <a id="2780" href="Categories.Category.BinaryProducts.html#1396" class="Function Operator">⟩</a> <a id="2782" href="Relation.Binary.Reasoning.Syntax.html#12283" class="Function Operator">∎</a>
|
|||
|
<a id="2788" class="Symbol">}</a>
|
|||
|
<a id="2794" class="Keyword">where</a>
|
|||
|
<a id="2806" href="Categories.Object.NaturalNumbers.Parametrized.html#2806" class="Function">z∘!</a> <a id="2810" class="Symbol">:</a> <a id="2812" href="Categories.Object.NaturalNumbers.Parametrized.html#960" class="Field">z</a> <a id="2814" href="Categories.Category.Core.html#595" class="Function Operator">≈</a> <a id="2816" href="Categories.Object.NaturalNumbers.Parametrized.html#960" class="Field">z</a> <a id="2818" href="Categories.Category.Core.html#656" class="Function Operator">∘</a> <a id="2820" href="Categories.Object.Terminal.html#577" class="Function">!</a>
|
|||
|
<a id="2828" href="Categories.Object.NaturalNumbers.Parametrized.html#2806" class="Function">z∘!</a> <a id="2832" class="Symbol">=</a> <a id="2834" href="Categories.Category.Core.html#3005" class="Function">⟺</a> <a id="2836" href="Categories.Category.Core.html#1145" class="Function">identityʳ</a> <a id="2846" href="Categories.Category.Core.html#3061" class="Function Operator">○</a> <a id="2848" href="Categories.Category.Core.html#1706" class="Function">∘-resp-≈ʳ</a> <a id="2858" href="Categories.Object.Terminal.html#647" class="Function">!-unique₂</a>
|
|||
|
|
|||
|
<a id="2869" class="Keyword">record</a> <a id="ParametrizedNNO"></a><a id="2876" href="Categories.Object.NaturalNumbers.Parametrized.html#2876" class="Record">ParametrizedNNO</a> <a id="2892" class="Symbol">:</a> <a id="2894" href="Agda.Primitive.html#388" class="Primitive">Set</a> <a id="2898" class="Symbol">(</a><a id="2899" href="Categories.Object.NaturalNumbers.Parametrized.html#452" class="Bound">o</a> <a id="2901" href="Agda.Primitive.html#961" class="Primitive Operator">⊔</a> <a id="2903" href="Categories.Object.NaturalNumbers.Parametrized.html#454" class="Bound">ℓ</a> <a id="2905" href="Agda.Primitive.html#961" class="Primitive Operator">⊔</a> <a id="2907" href="Categories.Object.NaturalNumbers.Parametrized.html#456" class="Bound">e</a><a id="2908" class="Symbol">)</a> <a id="2910" class="Keyword">where</a>
|
|||
|
<a id="2918" class="Keyword">field</a>
|
|||
|
<a id="ParametrizedNNO.N"></a><a id="2928" href="Categories.Object.NaturalNumbers.Parametrized.html#2928" class="Field">N</a> <a id="2930" class="Symbol">:</a> <a id="2932" href="Categories.Category.Core.html#559" class="Function">Obj</a>
|
|||
|
<a id="ParametrizedNNO.isParametrizedNNO"></a><a id="2940" href="Categories.Object.NaturalNumbers.Parametrized.html#2940" class="Field">isParametrizedNNO</a> <a id="2958" class="Symbol">:</a> <a id="2960" href="Categories.Object.NaturalNumbers.Parametrized.html#896" class="Record">IsParametrizedNNO</a> <a id="2978" href="Categories.Object.NaturalNumbers.Parametrized.html#2928" class="Field">N</a>
|
|||
|
|
|||
|
<a id="2983" class="Keyword">open</a> <a id="2988" href="Categories.Object.NaturalNumbers.Parametrized.html#896" class="Module">IsParametrizedNNO</a> <a id="3006" href="Categories.Object.NaturalNumbers.Parametrized.html#2940" class="Field">isParametrizedNNO</a> <a id="3024" class="Keyword">public</a>
|
|||
|
|
|||
|
<a id="3032" class="Comment">-- every PNNO is also a NNO (the other direction only holds in CCCs)</a>
|
|||
|
<a id="PNNO⇒NNO"></a><a id="3101" href="Categories.Object.NaturalNumbers.Parametrized.html#3101" class="Function">PNNO⇒NNO</a> <a id="3110" class="Symbol">:</a> <a id="3112" href="Categories.Object.NaturalNumbers.Parametrized.html#2876" class="Record">ParametrizedNNO</a> <a id="3128" class="Symbol">→</a> <a id="3130" href="Categories.Object.NaturalNumbers.html#1072" class="Record">NNO</a>
|
|||
|
<a id="3134" href="Categories.Object.NaturalNumbers.Parametrized.html#3101" class="Function">PNNO⇒NNO</a> <a id="3143" href="Categories.Object.NaturalNumbers.Parametrized.html#3143" class="Bound">pnno</a> <a id="3148" class="Symbol">=</a> <a id="3150" class="Keyword">record</a> <a id="3157" class="Symbol">{</a> <a id="3159" href="Categories.Object.NaturalNumbers.html#1112" class="Field">N</a> <a id="3161" class="Symbol">=</a> <a id="3163" href="Categories.Object.NaturalNumbers.Parametrized.html#2928" class="Field">ParametrizedNNO.N</a> <a id="3181" href="Categories.Object.NaturalNumbers.Parametrized.html#3143" class="Bound">pnno</a> <a id="3186" class="Symbol">;</a> <a id="3188" href="Categories.Object.NaturalNumbers.html#1124" class="Field">isNNO</a> <a id="3194" class="Symbol">=</a> <a id="3196" href="Categories.Object.NaturalNumbers.Parametrized.html#1646" class="Function">ParametrizedNNO.isNNO</a> <a id="3218" href="Categories.Object.NaturalNumbers.Parametrized.html#3143" class="Bound">pnno</a> <a id="3223" class="Symbol">}</a>
|
|||
|
|
|||
|
<a id="up-to-iso"></a><a id="3226" href="Categories.Object.NaturalNumbers.Parametrized.html#3226" class="Function">up-to-iso</a> <a id="3236" class="Symbol">:</a> <a id="3238" class="Symbol">∀</a> <a id="3240" class="Symbol">(</a><a id="3241" href="Categories.Object.NaturalNumbers.Parametrized.html#3241" class="Bound">N</a> <a id="3243" href="Categories.Object.NaturalNumbers.Parametrized.html#3243" class="Bound">N′</a> <a id="3246" class="Symbol">:</a> <a id="3248" href="Categories.Object.NaturalNumbers.Parametrized.html#2876" class="Record">ParametrizedNNO</a><a id="3263" class="Symbol">)</a> <a id="3265" class="Symbol">→</a> <a id="3267" href="Categories.Object.NaturalNumbers.Parametrized.html#2928" class="Field">ParametrizedNNO.N</a> <a id="3285" href="Categories.Object.NaturalNumbers.Parametrized.html#3241" class="Bound">N</a> <a id="3287" href="Categories.Morphism.html#1958" class="Record Operator">≅</a> <a id="3289" href="Categories.Object.NaturalNumbers.Parametrized.html#2928" class="Field">ParametrizedNNO.N</a> <a id="3307" href="Categories.Object.NaturalNumbers.Parametrized.html#3243" class="Bound">N′</a>
|
|||
|
<a id="3310" href="Categories.Object.NaturalNumbers.Parametrized.html#3226" class="Function">up-to-iso</a> <a id="3320" href="Categories.Object.NaturalNumbers.Parametrized.html#3320" class="Bound">N</a> <a id="3322" href="Categories.Object.NaturalNumbers.Parametrized.html#3322" class="Bound">N′</a> <a id="3325" class="Symbol">=</a> <a id="3327" href="Categories.Object.NaturalNumbers.Parametrized.html#735" class="Function">nno-up-to-iso</a> <a id="3341" class="Symbol">(</a><a id="3342" href="Categories.Object.NaturalNumbers.Parametrized.html#3101" class="Function">PNNO⇒NNO</a> <a id="3351" href="Categories.Object.NaturalNumbers.Parametrized.html#3320" class="Bound">N</a><a id="3352" class="Symbol">)</a> <a id="3354" class="Symbol">(</a><a id="3355" href="Categories.Object.NaturalNumbers.Parametrized.html#3101" class="Function">PNNO⇒NNO</a> <a id="3364" href="Categories.Object.NaturalNumbers.Parametrized.html#3322" class="Bound">N′</a><a id="3366" class="Symbol">)</a></pre></body></html>
|