bsc-leon-vatthauer/public/Categories.Category.Instance.Setoids.html

29 lines
12 KiB
HTML
Raw Normal View History

2023-08-19 16:11:22 +02:00
<!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">open</a> <a id="201" class="Keyword">import</a> <a id="208" href="Relation.Binary.html" class="Module">Relation.Binary</a>
<a id="224" class="Keyword">open</a> <a id="229" class="Keyword">import</a> <a id="236" href="Function.Equality.html" class="Module">Function.Equality</a> <a id="254" class="Symbol">as</a> <a id="257" class="Module"></a> <a id="260" class="Keyword">renaming</a> <a id="269" class="Symbol">(</a><a id="270" href="Function.Equality.html#1437" class="Function">id</a> <a id="273" class="Symbol">to</a> <a id="276" class="Function">⟶-id</a><a id="280" class="Symbol">)</a>
<a id="283" class="Keyword">open</a> <a id="288" class="Keyword">import</a> <a id="295" href="Categories.Category.html" class="Module">Categories.Category</a>
<a id="Setoids"></a><a id="316" href="Categories.Category.Instance.Setoids.html#316" class="Function">Setoids</a> <a id="324" class="Symbol">:</a> <a id="326" class="Symbol"></a> <a id="328" href="Categories.Category.Instance.Setoids.html#328" class="Bound">c</a> <a id="330" href="Categories.Category.Instance.Setoids.html#330" class="Bound"></a> <a id="332" class="Symbol"></a> <a id="334" href="Categories.Category.Core.html#442" class="Record">Category</a> <a id="343" class="Symbol">(</a><a id="344" href="Agda.Primitive.html#774" class="Primitive">suc</a> <a id="348" class="Symbol">(</a><a id="349" href="Categories.Category.Instance.Setoids.html#328" class="Bound">c</a> <a id="351" href="Agda.Primitive.html#804" class="Primitive Operator"></a> <a id="353" href="Categories.Category.Instance.Setoids.html#330" class="Bound"></a><a id="354" class="Symbol">))</a> <a id="357" class="Symbol">(</a><a id="358" href="Categories.Category.Instance.Setoids.html#328" class="Bound">c</a> <a id="360" href="Agda.Primitive.html#804" class="Primitive Operator"></a> <a id="362" href="Categories.Category.Instance.Setoids.html#330" class="Bound"></a><a id="363" class="Symbol">)</a> <a id="365" class="Symbol">(</a><a id="366" href="Categories.Category.Instance.Setoids.html#328" class="Bound">c</a> <a id="368" href="Agda.Primitive.html#804" class="Primitive Operator"></a> <a id="370" href="Categories.Category.Instance.Setoids.html#330" class="Bound"></a><a id="371" class="Symbol">)</a>
<a id="373" href="Categories.Category.Instance.Setoids.html#316" class="Function">Setoids</a> <a id="381" href="Categories.Category.Instance.Setoids.html#381" class="Bound">c</a> <a id="383" href="Categories.Category.Instance.Setoids.html#383" class="Bound"></a> <a id="385" class="Symbol">=</a> <a id="387" class="Keyword">record</a>
<a id="396" class="Symbol">{</a> <a id="398" href="Categories.Category.Core.html#559" class="Field">Obj</a> <a id="408" class="Symbol">=</a> <a id="410" href="Relation.Binary.Bundles.html#1018" class="Record">Setoid</a> <a id="417" href="Categories.Category.Instance.Setoids.html#381" class="Bound">c</a> <a id="419" href="Categories.Category.Instance.Setoids.html#383" class="Bound"></a>
<a id="423" class="Symbol">;</a> <a id="425" href="Categories.Category.Core.html#575" class="Field Operator">_⇒_</a> <a id="435" class="Symbol">=</a> <a id="437" href="Function.Equality.html#1227" class="Function Operator">_⟶_</a>
<a id="443" class="Symbol">;</a> <a id="445" href="Categories.Category.Core.html#595" class="Field Operator">_≈_</a> <a id="455" class="Symbol">=</a> <a id="457" class="Symbol">λ</a> <a id="459" class="Symbol">{</a><a id="460" href="Categories.Category.Instance.Setoids.html#460" class="Bound">A</a> <a id="462" href="Categories.Category.Instance.Setoids.html#462" class="Bound">B</a><a id="463" class="Symbol">}</a> <a id="465" class="Symbol"></a> <a id="467" href="Relation.Binary.Bundles.html#1107" class="Field Operator">Setoid._≈_</a> <a id="478" class="Symbol">(</a><a id="479" href="Categories.Category.Instance.Setoids.html#460" class="Bound">A</a> <a id="481" href="Function.Equality.html#2741" class="Function Operator"></a> <a id="483" href="Categories.Category.Instance.Setoids.html#462" class="Bound">B</a><a id="484" class="Symbol">)</a>
<a id="488" class="Symbol">;</a> <a id="490" href="Categories.Category.Core.html#630" class="Field">id</a> <a id="500" class="Symbol">=</a> <a id="502" href="Categories.Category.Instance.Setoids.html#276" class="Function">⟶-id</a>
<a id="509" class="Symbol">;</a> <a id="511" href="Categories.Category.Core.html#656" class="Field Operator">_∘_</a> <a id="521" class="Symbol">=</a> <a id="523" href="Function.Equality.html#1540" class="Function Operator">_∘_</a>
<a id="529" class="Symbol">;</a> <a id="531" href="Categories.Category.Core.html#715" class="Field">assoc</a> <a id="541" class="Symbol">=</a> <a id="543" class="Symbol">λ</a> <a id="545" class="Symbol">{</a><a id="546" href="Categories.Category.Instance.Setoids.html#546" class="Bound">_</a> <a id="548" href="Categories.Category.Instance.Setoids.html#548" class="Bound">_</a> <a id="550" href="Categories.Category.Instance.Setoids.html#550" class="Bound">_</a> <a id="552" href="Categories.Category.Instance.Setoids.html#552" class="Bound">D</a><a id="553" class="Symbol">}</a> <a id="555" class="Symbol">{</a><a id="556" href="Categories.Category.Instance.Setoids.html#556" class="Bound">f</a> <a id="558" href="Categories.Category.Instance.Setoids.html#558" class="Bound">g</a> <a id="560" href="Categories.Category.Instance.Setoids.html#560" class="Bound">h</a><a id="561" class="Symbol">}</a> <a id="563" class="Symbol"></a> <a id="565" href="Function.Equality.html#1140" class="Field">cong</a> <a id="570" class="Symbol">(</a><a id="571" href="Categories.Category.Instance.Setoids.html#560" class="Bound">h</a> <a id="573" href="Function.Equality.html#1540" class="Function Operator"></a> <a id="575" href="Categories.Category.Instance.Setoids.html#558" class="Bound">g</a> <a id="577" href="Function.Equality.html#1540" class="Function Operator"></a> <a id="579" href="Categories.Category.Instance.Setoids.html#556" class="Bound">f</a><a id="580" class="Symbol">)</a>
<a id="584" class="Symbol">;</a> <a id="586" href="Categories.Category.Core.html#1004" class="Field">sym-assoc</a> <a id="596" class="Symbol">=</a> <a id="598" class="Symbol">λ</a> <a id="600" class="Symbol">{</a><a id="601" href="Categories.Category.Instance.Setoids.html#601" class="Bound">_</a> <a id="603" href="Categories.Category.Instance.Setoids.html#603" class="Bound">_</a> <a id="605" href="Categories.Category.Instance.Setoids.html#605" class="Bound">_</a> <a id="607" href="Categories.Category.Instance.Setoids.html#607" class="Bound">D</a><a id="608" class="Symbol">}</a> <a id="610" class="Symbol">{</a><a id="611" href="Categories.Category.Instance.Setoids.html#611" class="Bound">f</a> <a id="613" href="Categories.Category.Instance.Setoids.html#613" class="Bound">g</a> <a id="615" href="Categories.Category.Instance.Setoids.html#615" class="Bound">h</a><a id="616" class="Symbol">}</a> <a id="618" class="Symbol"></a> <a id="620" href="Function.Equality.html#1140" class="Field">cong</a> <a id="625" class="Symbol">(</a><a id="626" href="Categories.Category.Instance.Setoids.html#615" class="Bound">h</a> <a id="628" href="Function.Equality.html#1540" class="Function Operator"></a> <a id="630" href="Categories.Category.Instance.Setoids.html#613" class="Bound">g</a> <a id="632" href="Function.Equality.html#1540" class="Function Operator"></a> <a id="634" href="Categories.Category.Instance.Setoids.html#611" class="Bound">f</a><a id="635" class="Symbol">)</a>
<a id="639" class="Symbol">;</a> <a id="641" href="Categories.Category.Core.html#1096" class="Field">identityˡ</a> <a id="651" class="Symbol">=</a> <a id="653" class="Symbol">λ</a> <a id="655" class="Symbol">{</a><a id="656" href="Categories.Category.Instance.Setoids.html#656" class="Bound">_</a> <a id="658" href="Categories.Category.Instance.Setoids.html#658" class="Bound">_</a><a id="659" class="Symbol">}</a> <a id="661" class="Symbol">{</a><a id="662" href="Categories.Category.Instance.Setoids.html#662" class="Bound">f</a><a id="663" class="Symbol">}</a> <a id="665" class="Symbol"></a> <a id="667" href="Function.Equality.html#1140" class="Field">cong</a> <a id="672" href="Categories.Category.Instance.Setoids.html#662" class="Bound">f</a>
<a id="676" class="Symbol">;</a> <a id="678" href="Categories.Category.Core.html#1145" class="Field">identityʳ</a> <a id="688" class="Symbol">=</a> <a id="690" class="Symbol">λ</a> <a id="692" class="Symbol">{</a><a id="693" href="Categories.Category.Instance.Setoids.html#693" class="Bound">_</a> <a id="695" href="Categories.Category.Instance.Setoids.html#695" class="Bound">_</a><a id="696" class="Symbol">}</a> <a id="698" class="Symbol">{</a><a id="699" href="Categories.Category.Instance.Setoids.html#699" class="Bound">f</a><a id="700" class="Symbol">}</a> <a id="702" class="Symbol"></a> <a id="704" href="Function.Equality.html#1140" class="Field">cong</a> <a id="709" href="Categories.Category.Instance.Setoids.html#699" class="Bound">f</a>
<a id="713" class="Symbol">;</a> <a id="715" href="Categories.Category.Core.html#1339" class="Field">identity²</a> <a id="725" class="Symbol">=</a> <a id="727" class="Symbol">λ</a> <a id="729" href="Categories.Category.Instance.Setoids.html#729" class="Bound">eq</a> <a id="732" class="Symbol"></a> <a id="734" href="Categories.Category.Instance.Setoids.html#729" class="Bound">eq</a>
<a id="739" class="Symbol">;</a> <a id="741" href="Categories.Category.Core.html#1384" class="Field">equiv</a> <a id="751" class="Symbol">=</a> <a id="753" class="Symbol">λ</a> <a id="755" class="Symbol">{</a><a id="756" href="Categories.Category.Instance.Setoids.html#756" class="Bound">A</a> <a id="758" href="Categories.Category.Instance.Setoids.html#758" class="Bound">B</a><a id="759" class="Symbol">}</a> <a id="761" class="Symbol"></a> <a id="763" href="Relation.Binary.Bundles.html#1141" class="Field">Setoid.isEquivalence</a> <a id="784" class="Symbol">(</a><a id="785" href="Categories.Category.Instance.Setoids.html#756" class="Bound">A</a> <a id="787" href="Function.Equality.html#2741" class="Function Operator"></a> <a id="789" href="Categories.Category.Instance.Setoids.html#758" class="Bound">B</a><a id="790" class="Symbol">)</a>
<a id="794" class="Symbol">;</a> <a id="796" href="Categories.Category.Core.html#1438" class="Field">∘-resp-≈</a> <a id="806" class="Symbol">=</a> <a id="808" class="Symbol">λ</a> <a id="810" href="Categories.Category.Instance.Setoids.html#810" class="Bound">f≡h</a> <a id="814" href="Categories.Category.Instance.Setoids.html#814" class="Bound">g≡i</a> <a id="818" href="Categories.Category.Instance.Setoids.html#818" class="Bound">x≡y</a> <a id="822" class="Symbol"></a> <a id="824" href="Categories.Category.Instance.Setoids.html#810" class="Bound">f≡h</a> <a id="828" class="Symbol">(</a><a id="829" href="Categories.Category.Instance.Setoids.html#814" class="Bound">g≡i</a> <a id="833" href="Categories.Category.Instance.Setoids.html#818" class="Bound">x≡y</a><a id="836" class="Symbol">)</a>
<a id="840" class="Symbol">}</a>
</pre></body></html>