mirror of
https://git8.cs.fau.de/theses/bsc-leon-vatthauer.git
synced 2024-05-31 07:28:34 +02:00
36 lines
15 KiB
HTML
36 lines
15 KiB
HTML
|
<!DOCTYPE HTML>
|
|||
|
<html><head><meta charset="utf-8"><title>Categories.Category.Instance.Setoids</title><link rel="stylesheet" href="Agda.css"></head><body><pre class="Agda"><a id="1" class="Symbol">{-#</a> <a id="5" class="Keyword">OPTIONS</a> <a id="13" class="Pragma">--without-K</a> <a id="25" class="Pragma">--safe</a> <a id="32" class="Symbol">#-}</a>
|
|||
|
<a id="36" class="Keyword">module</a> <a id="43" href="Categories.Category.Instance.Setoids.html" class="Module">Categories.Category.Instance.Setoids</a> <a id="80" class="Keyword">where</a>
|
|||
|
|
|||
|
<a id="87" class="Comment">-- Category of Setoids, aka (Setoid, _⟶_, Setoid ≈)</a>
|
|||
|
<a id="139" class="Comment">-- Note the (explicit) levels in each</a>
|
|||
|
|
|||
|
<a id="178" class="Keyword">open</a> <a id="183" class="Keyword">import</a> <a id="190" href="Level.html" class="Module">Level</a> <a id="196" class="Keyword">using</a> <a id="202" class="Symbol">(</a><a id="203" href="Agda.Primitive.html#931" class="Primitive">suc</a><a id="206" class="Symbol">;</a> <a id="208" href="Agda.Primitive.html#961" class="Primitive Operator">_⊔_</a><a id="211" class="Symbol">)</a>
|
|||
|
<a id="213" class="Keyword">open</a> <a id="218" class="Keyword">import</a> <a id="225" href="Relation.Binary.Bundles.html" class="Module">Relation.Binary.Bundles</a> <a id="249" class="Keyword">using</a> <a id="255" class="Symbol">(</a><a id="256" href="Relation.Binary.Bundles.html#1080" class="Record">Setoid</a><a id="262" class="Symbol">)</a>
|
|||
|
<a id="264" class="Keyword">open</a> <a id="269" class="Keyword">import</a> <a id="276" href="Function.Bundles.html" class="Module">Function.Bundles</a> <a id="293" class="Keyword">using</a> <a id="299" class="Symbol">(</a><a id="300" href="Function.Bundles.html#2043" class="Record">Func</a><a id="304" class="Symbol">;</a> <a id="306" href="Function.Bundles.html#15133" class="Function Operator">_⟨$⟩_</a><a id="311" class="Symbol">)</a>
|
|||
|
<a id="313" class="Keyword">open</a> <a id="318" class="Keyword">import</a> <a id="325" href="Function.Base.html" class="Module">Function.Base</a> <a id="339" class="Keyword">using</a> <a id="345" class="Symbol">(</a><a id="346" href="Function.Base.html#1974" class="Function Operator">_$_</a><a id="349" class="Symbol">)</a>
|
|||
|
<a id="351" class="Keyword">import</a> <a id="358" href="Function.Construct.Composition.html" class="Module">Function.Construct.Composition</a> <a id="389" class="Symbol">as</a> <a id="392" class="Module">Comp</a>
|
|||
|
<a id="397" class="Keyword">import</a> <a id="404" href="Function.Construct.Identity.html" class="Module">Function.Construct.Identity</a> <a id="432" class="Symbol">as</a> <a id="435" class="Module">Id</a>
|
|||
|
<a id="438" class="Keyword">import</a> <a id="445" href="Function.Construct.Setoid.html" class="Module">Function.Construct.Setoid</a> <a id="471" class="Symbol">as</a> <a id="474" class="Module">S</a>
|
|||
|
|
|||
|
<a id="477" class="Keyword">open</a> <a id="482" class="Keyword">import</a> <a id="489" href="Categories.Category.Core.html" class="Module">Categories.Category.Core</a> <a id="514" class="Keyword">using</a> <a id="520" class="Symbol">(</a><a id="521" href="Categories.Category.Core.html#442" class="Record">Category</a><a id="529" class="Symbol">)</a>
|
|||
|
|
|||
|
<a id="532" class="Keyword">open</a> <a id="537" href="Function.Bundles.html#2043" class="Module">Func</a>
|
|||
|
<a id="542" class="Keyword">open</a> <a id="547" href="Relation.Binary.Bundles.html#1080" class="Module">Setoid</a>
|
|||
|
|
|||
|
<a id="Setoids"></a><a id="555" href="Categories.Category.Instance.Setoids.html#555" class="Function">Setoids</a> <a id="563" class="Symbol">:</a> <a id="565" class="Symbol">∀</a> <a id="567" href="Categories.Category.Instance.Setoids.html#567" class="Bound">c</a> <a id="569" href="Categories.Category.Instance.Setoids.html#569" class="Bound">ℓ</a> <a id="571" class="Symbol">→</a> <a id="573" href="Categories.Category.Core.html#442" class="Record">Category</a> <a id="582" class="Symbol">(</a><a id="583" href="Agda.Primitive.html#931" class="Primitive">suc</a> <a id="587" class="Symbol">(</a><a id="588" href="Categories.Category.Instance.Setoids.html#567" class="Bound">c</a> <a id="590" href="Agda.Primitive.html#961" class="Primitive Operator">⊔</a> <a id="592" href="Categories.Category.Instance.Setoids.html#569" class="Bound">ℓ</a><a id="593" class="Symbol">))</a> <a id="596" class="Symbol">(</a><a id="597" href="Categories.Category.Instance.Setoids.html#567" class="Bound">c</a> <a id="599" href="Agda.Primitive.html#961" class="Primitive Operator">⊔</a> <a id="601" href="Categories.Category.Instance.Setoids.html#569" class="Bound">ℓ</a><a id="602" class="Symbol">)</a> <a id="604" class="Symbol">(</a><a id="605" href="Categories.Category.Instance.Setoids.html#567" class="Bound">c</a> <a id="607" href="Agda.Primitive.html#961" class="Primitive Operator">⊔</a> <a id="609" href="Categories.Category.Instance.Setoids.html#569" class="Bound">ℓ</a><a id="610" class="Symbol">)</a>
|
|||
|
<a id="612" href="Categories.Category.Instance.Setoids.html#555" class="Function">Setoids</a> <a id="620" href="Categories.Category.Instance.Setoids.html#620" class="Bound">c</a> <a id="622" href="Categories.Category.Instance.Setoids.html#622" class="Bound">ℓ</a> <a id="624" class="Symbol">=</a> <a id="626" class="Keyword">record</a>
|
|||
|
<a id="635" class="Symbol">{</a> <a id="637" href="Categories.Category.Core.html#559" class="Field">Obj</a> <a id="647" class="Symbol">=</a> <a id="649" href="Relation.Binary.Bundles.html#1080" class="Record">Setoid</a> <a id="656" href="Categories.Category.Instance.Setoids.html#620" class="Bound">c</a> <a id="658" href="Categories.Category.Instance.Setoids.html#622" class="Bound">ℓ</a>
|
|||
|
<a id="662" class="Symbol">;</a> <a id="664" href="Categories.Category.Core.html#575" class="Field Operator">_⇒_</a> <a id="674" class="Symbol">=</a> <a id="676" href="Function.Bundles.html#2043" class="Record">Func</a>
|
|||
|
<a id="683" class="Symbol">;</a> <a id="685" href="Categories.Category.Core.html#595" class="Field Operator">_≈_</a> <a id="695" class="Symbol">=</a> <a id="697" class="Symbol">λ</a> <a id="699" class="Symbol">{</a><a id="700" href="Categories.Category.Instance.Setoids.html#700" class="Bound">A</a><a id="701" class="Symbol">}</a> <a id="703" class="Symbol">{</a><a id="704" href="Categories.Category.Instance.Setoids.html#704" class="Bound">B</a><a id="705" class="Symbol">}</a> <a id="707" href="Categories.Category.Instance.Setoids.html#707" class="Bound">f</a> <a id="709" href="Categories.Category.Instance.Setoids.html#709" class="Bound">g</a> <a id="711" class="Symbol">→</a> <a id="713" href="Relation.Binary.Bundles.html#1169" class="Field Operator">_≈_</a> <a id="717" class="Symbol">(</a><a id="718" href="Function.Construct.Setoid.html#376" class="Function">S.setoid</a> <a id="727" href="Categories.Category.Instance.Setoids.html#700" class="Bound">A</a> <a id="729" href="Categories.Category.Instance.Setoids.html#704" class="Bound">B</a><a id="730" class="Symbol">)</a> <a id="732" href="Categories.Category.Instance.Setoids.html#707" class="Bound">f</a> <a id="734" href="Categories.Category.Instance.Setoids.html#709" class="Bound">g</a>
|
|||
|
<a id="738" class="Symbol">;</a> <a id="740" href="Categories.Category.Core.html#630" class="Field">id</a> <a id="750" class="Symbol">=</a> <a id="752" href="Function.Construct.Identity.html#2813" class="Function">Id.function</a> <a id="764" class="Symbol">_</a>
|
|||
|
<a id="768" class="Symbol">;</a> <a id="770" href="Categories.Category.Core.html#656" class="Field Operator">_∘_</a> <a id="780" class="Symbol">=</a> <a id="782" class="Symbol">λ</a> <a id="784" href="Categories.Category.Instance.Setoids.html#784" class="Bound">f</a> <a id="786" href="Categories.Category.Instance.Setoids.html#786" class="Bound">g</a> <a id="788" class="Symbol">→</a> <a id="790" href="Function.Construct.Composition.html#5240" class="Function">Comp.function</a> <a id="804" href="Categories.Category.Instance.Setoids.html#786" class="Bound">g</a> <a id="806" href="Categories.Category.Instance.Setoids.html#784" class="Bound">f</a>
|
|||
|
<a id="810" class="Symbol">;</a> <a id="812" href="Categories.Category.Core.html#715" class="Field">assoc</a> <a id="822" class="Symbol">=</a> <a id="824" class="Symbol">λ</a> <a id="826" class="Symbol">{</a><a id="827" href="Categories.Category.Instance.Setoids.html#827" class="Bound">_</a><a id="828" class="Symbol">}</a> <a id="830" class="Symbol">{</a><a id="831" href="Categories.Category.Instance.Setoids.html#831" class="Bound">_</a><a id="832" class="Symbol">}</a> <a id="834" class="Symbol">{</a><a id="835" href="Categories.Category.Instance.Setoids.html#835" class="Bound">_</a><a id="836" class="Symbol">}</a> <a id="838" class="Symbol">{</a><a id="839" href="Categories.Category.Instance.Setoids.html#839" class="Bound">D</a><a id="840" class="Symbol">}</a> <a id="842" class="Symbol">→</a> <a id="844" href="Relation.Binary.Structures.html#1596" class="Function">refl</a> <a id="849" href="Categories.Category.Instance.Setoids.html#839" class="Bound">D</a>
|
|||
|
<a id="853" class="Symbol">;</a> <a id="855" href="Categories.Category.Core.html#1004" class="Field">sym-assoc</a> <a id="865" class="Symbol">=</a> <a id="867" class="Symbol">λ</a> <a id="869" class="Symbol">{</a><a id="870" href="Categories.Category.Instance.Setoids.html#870" class="Bound">_</a><a id="871" class="Symbol">}</a> <a id="873" class="Symbol">{</a><a id="874" href="Categories.Category.Instance.Setoids.html#874" class="Bound">_</a><a id="875" class="Symbol">}</a> <a id="877" class="Symbol">{</a><a id="878" href="Categories.Category.Instance.Setoids.html#878" class="Bound">_</a><a id="879" class="Symbol">}</a> <a id="881" class="Symbol">{</a><a id="882" href="Categories.Category.Instance.Setoids.html#882" class="Bound">D</a><a id="883" class="Symbol">}</a> <a id="885" class="Symbol">→</a> <a id="887" href="Relation.Binary.Structures.html#1596" class="Function">refl</a> <a id="892" href="Categories.Category.Instance.Setoids.html#882" class="Bound">D</a>
|
|||
|
<a id="896" class="Symbol">;</a> <a id="898" href="Categories.Category.Core.html#1096" class="Field">identityˡ</a> <a id="908" class="Symbol">=</a> <a id="910" class="Symbol">λ</a> <a id="912" class="Symbol">{</a><a id="913" href="Categories.Category.Instance.Setoids.html#913" class="Bound">_</a><a id="914" class="Symbol">}</a> <a id="916" class="Symbol">{</a><a id="917" href="Categories.Category.Instance.Setoids.html#917" class="Bound">B</a><a id="918" class="Symbol">}</a> <a id="920" class="Symbol">→</a> <a id="922" href="Relation.Binary.Structures.html#1596" class="Function">refl</a> <a id="927" href="Categories.Category.Instance.Setoids.html#917" class="Bound">B</a>
|
|||
|
<a id="931" class="Symbol">;</a> <a id="933" href="Categories.Category.Core.html#1145" class="Field">identityʳ</a> <a id="943" class="Symbol">=</a> <a id="945" class="Symbol">λ</a> <a id="947" class="Symbol">{</a><a id="948" href="Categories.Category.Instance.Setoids.html#948" class="Bound">_</a><a id="949" class="Symbol">}</a> <a id="951" class="Symbol">{</a><a id="952" href="Categories.Category.Instance.Setoids.html#952" class="Bound">B</a><a id="953" class="Symbol">}</a> <a id="955" class="Symbol">→</a> <a id="957" href="Relation.Binary.Structures.html#1596" class="Function">refl</a> <a id="962" href="Categories.Category.Instance.Setoids.html#952" class="Bound">B</a>
|
|||
|
<a id="966" class="Symbol">;</a> <a id="968" href="Categories.Category.Core.html#1339" class="Field">identity²</a> <a id="978" class="Symbol">=</a> <a id="980" class="Symbol">λ</a> <a id="982" class="Symbol">{</a><a id="983" href="Categories.Category.Instance.Setoids.html#983" class="Bound">A</a><a id="984" class="Symbol">}</a> <a id="986" class="Symbol">→</a> <a id="988" href="Relation.Binary.Structures.html#1596" class="Function">refl</a> <a id="993" href="Categories.Category.Instance.Setoids.html#983" class="Bound">A</a>
|
|||
|
<a id="997" class="Symbol">;</a> <a id="999" href="Categories.Category.Core.html#1384" class="Field">equiv</a> <a id="1009" class="Symbol">=</a> <a id="1011" class="Symbol">λ</a> <a id="1013" class="Symbol">{</a><a id="1014" href="Categories.Category.Instance.Setoids.html#1014" class="Bound">A</a><a id="1015" class="Symbol">}</a> <a id="1017" class="Symbol">{</a><a id="1018" href="Categories.Category.Instance.Setoids.html#1018" class="Bound">B</a><a id="1019" class="Symbol">}</a> <a id="1021" class="Symbol">→</a> <a id="1023" href="Relation.Binary.Bundles.html#1203" class="Field">isEquivalence</a> <a id="1037" class="Symbol">(</a><a id="1038" href="Function.Construct.Setoid.html#376" class="Function">S.setoid</a> <a id="1047" href="Categories.Category.Instance.Setoids.html#1014" class="Bound">A</a> <a id="1049" href="Categories.Category.Instance.Setoids.html#1018" class="Bound">B</a><a id="1050" class="Symbol">)</a>
|
|||
|
<a id="1054" class="Symbol">;</a> <a id="1056" href="Categories.Category.Core.html#1438" class="Field">∘-resp-≈</a> <a id="1066" class="Symbol">=</a> <a id="1068" class="Symbol">λ</a> <a id="1070" class="Symbol">{</a><a id="1071" href="Categories.Category.Instance.Setoids.html#1071" class="Bound">_</a><a id="1072" class="Symbol">}</a> <a id="1074" class="Symbol">{</a><a id="1075" href="Categories.Category.Instance.Setoids.html#1075" class="Bound">_</a><a id="1076" class="Symbol">}</a> <a id="1078" class="Symbol">{</a><a id="1079" href="Categories.Category.Instance.Setoids.html#1079" class="Bound">C</a><a id="1080" class="Symbol">}</a> <a id="1082" class="Symbol">{</a><a id="1083" href="Categories.Category.Instance.Setoids.html#1083" class="Bound">f</a><a id="1084" class="Symbol">}</a> <a id="1086" class="Symbol">{</a><a id="1087" href="Categories.Category.Instance.Setoids.html#1087" class="Bound">h</a><a id="1088" class="Symbol">}</a> <a id="1090" class="Symbol">{</a><a id="1091" href="Categories.Category.Instance.Setoids.html#1091" class="Bound">g</a><a id="1092" class="Symbol">}</a> <a id="1094" class="Symbol">{</a><a id="1095" href="Categories.Category.Instance.Setoids.html#1095" class="Bound">i</a><a id="1096" class="Symbol">}</a> <a id="1098" href="Categories.Category.Instance.Setoids.html#1098" class="Bound">f≈h</a> <a id="1102" href="Categories.Category.Instance.Setoids.html#1102" class="Bound">g≈i</a> <a id="1106" class="Symbol">{</a><a id="1107" href="Categories.Category.Instance.Setoids.html#1107" class="Bound">x</a><a id="1108" class="Symbol">}</a> <a id="1110" class="Symbol">→</a> <a id="1112" href="Relation.Binary.Structures.html#1226" class="Function">trans</a> <a id="1118" href="Categories.Category.Instance.Setoids.html#1079" class="Bound">C</a> <a id="1120" href="Categories.Category.Instance.Setoids.html#1098" class="Bound">f≈h</a> <a id="1124" class="Symbol">(</a><a id="1125" href="Function.Bundles.html#2113" class="Field">cong</a> <a id="1130" href="Categories.Category.Instance.Setoids.html#1087" class="Bound">h</a> <a id="1132" href="Categories.Category.Instance.Setoids.html#1102" class="Bound">g≈i</a><a id="1135" class="Symbol">)</a>
|
|||
|
<a id="1139" class="Symbol">}</a>
|
|||
|
</pre></body></html>
|