mirror of
https://git8.cs.fau.de/theses/bsc-leon-vatthauer.git
synced 2024-05-31 07:28:34 +02:00
119 lines
No EOL
38 KiB
HTML
119 lines
No EOL
38 KiB
HTML
<!DOCTYPE HTML>
|
||
<html><head><meta charset="utf-8"><title>Relation.Binary.Morphism.Structures</title><link rel="stylesheet" href="Agda.css"></head><body><pre class="Agda"><a id="1" class="Comment">------------------------------------------------------------------------</a>
|
||
<a id="74" class="Comment">-- The Agda standard library</a>
|
||
<a id="103" class="Comment">--</a>
|
||
<a id="106" class="Comment">-- Order morphisms</a>
|
||
<a id="125" class="Comment">------------------------------------------------------------------------</a>
|
||
|
||
<a id="199" class="Symbol">{-#</a> <a id="203" class="Keyword">OPTIONS</a> <a id="211" class="Pragma">--cubical-compatible</a> <a id="232" class="Pragma">--safe</a> <a id="239" class="Symbol">#-}</a>
|
||
|
||
<a id="244" class="Keyword">open</a> <a id="249" class="Keyword">import</a> <a id="256" href="Relation.Binary.Core.html" class="Module">Relation.Binary.Core</a> <a id="277" class="Keyword">using</a> <a id="283" class="Symbol">(</a><a id="284" href="Relation.Binary.Core.html#896" class="Function">Rel</a><a id="287" class="Symbol">)</a>
|
||
|
||
<a id="290" class="Keyword">module</a> <a id="297" href="Relation.Binary.Morphism.Structures.html" class="Module">Relation.Binary.Morphism.Structures</a>
|
||
<a id="335" class="Symbol">{</a><a id="336" href="Relation.Binary.Morphism.Structures.html#336" class="Bound">a</a> <a id="338" href="Relation.Binary.Morphism.Structures.html#338" class="Bound">b</a><a id="339" class="Symbol">}</a> <a id="341" class="Symbol">{</a><a id="342" href="Relation.Binary.Morphism.Structures.html#342" class="Bound">A</a> <a id="344" class="Symbol">:</a> <a id="346" href="Agda.Primitive.html#388" class="Primitive">Set</a> <a id="350" href="Relation.Binary.Morphism.Structures.html#336" class="Bound">a</a><a id="351" class="Symbol">}</a> <a id="353" class="Symbol">{</a><a id="354" href="Relation.Binary.Morphism.Structures.html#354" class="Bound">B</a> <a id="356" class="Symbol">:</a> <a id="358" href="Agda.Primitive.html#388" class="Primitive">Set</a> <a id="362" href="Relation.Binary.Morphism.Structures.html#338" class="Bound">b</a><a id="363" class="Symbol">}</a>
|
||
<a id="367" class="Keyword">where</a>
|
||
|
||
<a id="374" class="Keyword">open</a> <a id="379" class="Keyword">import</a> <a id="386" href="Data.Product.Base.html" class="Module">Data.Product.Base</a> <a id="404" class="Keyword">using</a> <a id="410" class="Symbol">(</a><a id="411" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">_,_</a><a id="414" class="Symbol">)</a>
|
||
<a id="416" class="Keyword">open</a> <a id="421" class="Keyword">import</a> <a id="428" href="Function.Definitions.html" class="Module">Function.Definitions</a>
|
||
<a id="449" class="Keyword">open</a> <a id="454" class="Keyword">import</a> <a id="461" href="Level.html" class="Module">Level</a> <a id="467" class="Keyword">using</a> <a id="473" class="Symbol">(</a><a id="474" href="Agda.Primitive.html#742" class="Postulate">Level</a><a id="479" class="Symbol">;</a> <a id="481" href="Agda.Primitive.html#961" class="Primitive Operator">_⊔_</a><a id="484" class="Symbol">)</a>
|
||
<a id="486" class="Keyword">open</a> <a id="491" class="Keyword">import</a> <a id="498" href="Relation.Binary.Morphism.Definitions.html" class="Module">Relation.Binary.Morphism.Definitions</a> <a id="535" href="Relation.Binary.Morphism.Structures.html#342" class="Bound">A</a> <a id="537" href="Relation.Binary.Morphism.Structures.html#354" class="Bound">B</a>
|
||
|
||
<a id="540" class="Keyword">private</a>
|
||
<a id="550" class="Keyword">variable</a>
|
||
<a id="563" href="Relation.Binary.Morphism.Structures.html#563" class="Generalizable">ℓ₁</a> <a id="566" href="Relation.Binary.Morphism.Structures.html#566" class="Generalizable">ℓ₂</a> <a id="569" href="Relation.Binary.Morphism.Structures.html#569" class="Generalizable">ℓ₃</a> <a id="572" href="Relation.Binary.Morphism.Structures.html#572" class="Generalizable">ℓ₄</a> <a id="575" class="Symbol">:</a> <a id="577" href="Agda.Primitive.html#742" class="Postulate">Level</a>
|
||
|
||
<a id="584" class="Comment">------------------------------------------------------------------------</a>
|
||
<a id="657" class="Comment">-- Relations</a>
|
||
<a id="670" class="Comment">------------------------------------------------------------------------</a>
|
||
|
||
<a id="744" class="Keyword">record</a> <a id="IsRelHomomorphism"></a><a id="751" href="Relation.Binary.Morphism.Structures.html#751" class="Record">IsRelHomomorphism</a> <a id="769" class="Symbol">(</a><a id="770" href="Relation.Binary.Morphism.Structures.html#770" class="Bound Operator">_∼₁_</a> <a id="775" class="Symbol">:</a> <a id="777" href="Relation.Binary.Core.html#896" class="Function">Rel</a> <a id="781" href="Relation.Binary.Morphism.Structures.html#342" class="Bound">A</a> <a id="783" href="Relation.Binary.Morphism.Structures.html#563" class="Generalizable">ℓ₁</a><a id="785" class="Symbol">)</a> <a id="787" class="Symbol">(</a><a id="788" href="Relation.Binary.Morphism.Structures.html#788" class="Bound Operator">_∼₂_</a> <a id="793" class="Symbol">:</a> <a id="795" href="Relation.Binary.Core.html#896" class="Function">Rel</a> <a id="799" href="Relation.Binary.Morphism.Structures.html#354" class="Bound">B</a> <a id="801" href="Relation.Binary.Morphism.Structures.html#566" class="Generalizable">ℓ₂</a><a id="803" class="Symbol">)</a>
|
||
<a id="830" class="Symbol">(</a><a id="831" href="Relation.Binary.Morphism.Structures.html#831" class="Bound Operator">⟦_⟧</a> <a id="835" class="Symbol">:</a> <a id="837" href="Relation.Binary.Morphism.Structures.html#342" class="Bound">A</a> <a id="839" class="Symbol">→</a> <a id="841" href="Relation.Binary.Morphism.Structures.html#354" class="Bound">B</a><a id="842" class="Symbol">)</a> <a id="844" class="Symbol">:</a> <a id="846" href="Agda.Primitive.html#388" class="Primitive">Set</a> <a id="850" class="Symbol">(</a><a id="851" href="Relation.Binary.Morphism.Structures.html#336" class="Bound">a</a> <a id="853" href="Agda.Primitive.html#961" class="Primitive Operator">⊔</a> <a id="855" href="Relation.Binary.Morphism.Structures.html#783" class="Bound">ℓ₁</a> <a id="858" href="Agda.Primitive.html#961" class="Primitive Operator">⊔</a> <a id="860" href="Relation.Binary.Morphism.Structures.html#801" class="Bound">ℓ₂</a><a id="862" class="Symbol">)</a> <a id="864" class="Keyword">where</a>
|
||
<a id="872" class="Keyword">field</a>
|
||
<a id="IsRelHomomorphism.cong"></a><a id="882" href="Relation.Binary.Morphism.Structures.html#882" class="Field">cong</a> <a id="887" class="Symbol">:</a> <a id="889" href="Relation.Binary.Morphism.Definitions.html#815" class="Function">Homomorphic₂</a> <a id="902" href="Relation.Binary.Morphism.Structures.html#770" class="Bound Operator">_∼₁_</a> <a id="907" href="Relation.Binary.Morphism.Structures.html#788" class="Bound Operator">_∼₂_</a> <a id="912" href="Relation.Binary.Morphism.Structures.html#831" class="Bound Operator">⟦_⟧</a>
|
||
|
||
|
||
<a id="918" class="Keyword">record</a> <a id="IsRelMonomorphism"></a><a id="925" href="Relation.Binary.Morphism.Structures.html#925" class="Record">IsRelMonomorphism</a> <a id="943" class="Symbol">(</a><a id="944" href="Relation.Binary.Morphism.Structures.html#944" class="Bound Operator">_∼₁_</a> <a id="949" class="Symbol">:</a> <a id="951" href="Relation.Binary.Core.html#896" class="Function">Rel</a> <a id="955" href="Relation.Binary.Morphism.Structures.html#342" class="Bound">A</a> <a id="957" href="Relation.Binary.Morphism.Structures.html#563" class="Generalizable">ℓ₁</a><a id="959" class="Symbol">)</a> <a id="961" class="Symbol">(</a><a id="962" href="Relation.Binary.Morphism.Structures.html#962" class="Bound Operator">_∼₂_</a> <a id="967" class="Symbol">:</a> <a id="969" href="Relation.Binary.Core.html#896" class="Function">Rel</a> <a id="973" href="Relation.Binary.Morphism.Structures.html#354" class="Bound">B</a> <a id="975" href="Relation.Binary.Morphism.Structures.html#566" class="Generalizable">ℓ₂</a><a id="977" class="Symbol">)</a>
|
||
<a id="1004" class="Symbol">(</a><a id="1005" href="Relation.Binary.Morphism.Structures.html#1005" class="Bound Operator">⟦_⟧</a> <a id="1009" class="Symbol">:</a> <a id="1011" href="Relation.Binary.Morphism.Structures.html#342" class="Bound">A</a> <a id="1013" class="Symbol">→</a> <a id="1015" href="Relation.Binary.Morphism.Structures.html#354" class="Bound">B</a><a id="1016" class="Symbol">)</a> <a id="1018" class="Symbol">:</a> <a id="1020" href="Agda.Primitive.html#388" class="Primitive">Set</a> <a id="1024" class="Symbol">(</a><a id="1025" href="Relation.Binary.Morphism.Structures.html#336" class="Bound">a</a> <a id="1027" href="Agda.Primitive.html#961" class="Primitive Operator">⊔</a> <a id="1029" href="Relation.Binary.Morphism.Structures.html#957" class="Bound">ℓ₁</a> <a id="1032" href="Agda.Primitive.html#961" class="Primitive Operator">⊔</a> <a id="1034" href="Relation.Binary.Morphism.Structures.html#975" class="Bound">ℓ₂</a><a id="1036" class="Symbol">)</a> <a id="1038" class="Keyword">where</a>
|
||
<a id="1046" class="Keyword">field</a>
|
||
<a id="IsRelMonomorphism.isHomomorphism"></a><a id="1056" href="Relation.Binary.Morphism.Structures.html#1056" class="Field">isHomomorphism</a> <a id="1071" class="Symbol">:</a> <a id="1073" href="Relation.Binary.Morphism.Structures.html#751" class="Record">IsRelHomomorphism</a> <a id="1091" href="Relation.Binary.Morphism.Structures.html#944" class="Bound Operator">_∼₁_</a> <a id="1096" href="Relation.Binary.Morphism.Structures.html#962" class="Bound Operator">_∼₂_</a> <a id="1101" href="Relation.Binary.Morphism.Structures.html#1005" class="Bound Operator">⟦_⟧</a>
|
||
<a id="IsRelMonomorphism.injective"></a><a id="1109" href="Relation.Binary.Morphism.Structures.html#1109" class="Field">injective</a> <a id="1124" class="Symbol">:</a> <a id="1126" href="Function.Definitions.html#842" class="Function">Injective</a> <a id="1136" href="Relation.Binary.Morphism.Structures.html#944" class="Bound Operator">_∼₁_</a> <a id="1141" href="Relation.Binary.Morphism.Structures.html#962" class="Bound Operator">_∼₂_</a> <a id="1146" href="Relation.Binary.Morphism.Structures.html#1005" class="Bound Operator">⟦_⟧</a>
|
||
|
||
<a id="1153" class="Keyword">open</a> <a id="1158" href="Relation.Binary.Morphism.Structures.html#751" class="Module">IsRelHomomorphism</a> <a id="1176" href="Relation.Binary.Morphism.Structures.html#1056" class="Field">isHomomorphism</a> <a id="1191" class="Keyword">public</a>
|
||
|
||
|
||
<a id="1200" class="Keyword">record</a> <a id="IsRelIsomorphism"></a><a id="1207" href="Relation.Binary.Morphism.Structures.html#1207" class="Record">IsRelIsomorphism</a> <a id="1224" class="Symbol">(</a><a id="1225" href="Relation.Binary.Morphism.Structures.html#1225" class="Bound Operator">_∼₁_</a> <a id="1230" class="Symbol">:</a> <a id="1232" href="Relation.Binary.Core.html#896" class="Function">Rel</a> <a id="1236" href="Relation.Binary.Morphism.Structures.html#342" class="Bound">A</a> <a id="1238" href="Relation.Binary.Morphism.Structures.html#563" class="Generalizable">ℓ₁</a><a id="1240" class="Symbol">)</a> <a id="1242" class="Symbol">(</a><a id="1243" href="Relation.Binary.Morphism.Structures.html#1243" class="Bound Operator">_∼₂_</a> <a id="1248" class="Symbol">:</a> <a id="1250" href="Relation.Binary.Core.html#896" class="Function">Rel</a> <a id="1254" href="Relation.Binary.Morphism.Structures.html#354" class="Bound">B</a> <a id="1256" href="Relation.Binary.Morphism.Structures.html#566" class="Generalizable">ℓ₂</a><a id="1258" class="Symbol">)</a>
|
||
<a id="1284" class="Symbol">(</a><a id="1285" href="Relation.Binary.Morphism.Structures.html#1285" class="Bound Operator">⟦_⟧</a> <a id="1289" class="Symbol">:</a> <a id="1291" href="Relation.Binary.Morphism.Structures.html#342" class="Bound">A</a> <a id="1293" class="Symbol">→</a> <a id="1295" href="Relation.Binary.Morphism.Structures.html#354" class="Bound">B</a><a id="1296" class="Symbol">)</a> <a id="1298" class="Symbol">:</a> <a id="1300" href="Agda.Primitive.html#388" class="Primitive">Set</a> <a id="1304" class="Symbol">(</a><a id="1305" href="Relation.Binary.Morphism.Structures.html#336" class="Bound">a</a> <a id="1307" href="Agda.Primitive.html#961" class="Primitive Operator">⊔</a> <a id="1309" href="Relation.Binary.Morphism.Structures.html#338" class="Bound">b</a> <a id="1311" href="Agda.Primitive.html#961" class="Primitive Operator">⊔</a> <a id="1313" href="Relation.Binary.Morphism.Structures.html#1238" class="Bound">ℓ₁</a> <a id="1316" href="Agda.Primitive.html#961" class="Primitive Operator">⊔</a> <a id="1318" href="Relation.Binary.Morphism.Structures.html#1256" class="Bound">ℓ₂</a><a id="1320" class="Symbol">)</a> <a id="1322" class="Keyword">where</a>
|
||
<a id="1330" class="Keyword">field</a>
|
||
<a id="IsRelIsomorphism.isMonomorphism"></a><a id="1340" href="Relation.Binary.Morphism.Structures.html#1340" class="Field">isMonomorphism</a> <a id="1355" class="Symbol">:</a> <a id="1357" href="Relation.Binary.Morphism.Structures.html#925" class="Record">IsRelMonomorphism</a> <a id="1375" href="Relation.Binary.Morphism.Structures.html#1225" class="Bound Operator">_∼₁_</a> <a id="1380" href="Relation.Binary.Morphism.Structures.html#1243" class="Bound Operator">_∼₂_</a> <a id="1385" href="Relation.Binary.Morphism.Structures.html#1285" class="Bound Operator">⟦_⟧</a>
|
||
<a id="IsRelIsomorphism.surjective"></a><a id="1393" href="Relation.Binary.Morphism.Structures.html#1393" class="Field">surjective</a> <a id="1408" class="Symbol">:</a> <a id="1410" href="Function.Definitions.html#919" class="Function">Surjective</a> <a id="1421" href="Relation.Binary.Morphism.Structures.html#1225" class="Bound Operator">_∼₁_</a> <a id="1426" href="Relation.Binary.Morphism.Structures.html#1243" class="Bound Operator">_∼₂_</a> <a id="1431" href="Relation.Binary.Morphism.Structures.html#1285" class="Bound Operator">⟦_⟧</a>
|
||
|
||
<a id="1438" class="Keyword">open</a> <a id="1443" href="Relation.Binary.Morphism.Structures.html#925" class="Module">IsRelMonomorphism</a> <a id="1461" href="Relation.Binary.Morphism.Structures.html#1340" class="Field">isMonomorphism</a> <a id="1476" class="Keyword">public</a>
|
||
|
||
<a id="IsRelIsomorphism.bijective"></a><a id="1486" href="Relation.Binary.Morphism.Structures.html#1486" class="Function">bijective</a> <a id="1496" class="Symbol">:</a> <a id="1498" href="Function.Definitions.html#1008" class="Function">Bijective</a> <a id="1508" href="Relation.Binary.Morphism.Structures.html#1225" class="Bound Operator">_∼₁_</a> <a id="1513" href="Relation.Binary.Morphism.Structures.html#1243" class="Bound Operator">_∼₂_</a> <a id="1518" href="Relation.Binary.Morphism.Structures.html#1285" class="Bound Operator">⟦_⟧</a>
|
||
<a id="1524" href="Relation.Binary.Morphism.Structures.html#1486" class="Function">bijective</a> <a id="1534" class="Symbol">=</a> <a id="1536" href="Relation.Binary.Morphism.Structures.html#1109" class="Function">injective</a> <a id="1546" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="1548" href="Relation.Binary.Morphism.Structures.html#1393" class="Field">surjective</a>
|
||
|
||
|
||
<a id="1561" class="Comment">------------------------------------------------------------------------</a>
|
||
<a id="1634" class="Comment">-- Orders</a>
|
||
<a id="1644" class="Comment">------------------------------------------------------------------------</a>
|
||
|
||
<a id="1718" class="Keyword">record</a> <a id="IsOrderHomomorphism"></a><a id="1725" href="Relation.Binary.Morphism.Structures.html#1725" class="Record">IsOrderHomomorphism</a> <a id="1745" class="Symbol">(</a><a id="1746" href="Relation.Binary.Morphism.Structures.html#1746" class="Bound Operator">_≈₁_</a> <a id="1751" class="Symbol">:</a> <a id="1753" href="Relation.Binary.Core.html#896" class="Function">Rel</a> <a id="1757" href="Relation.Binary.Morphism.Structures.html#342" class="Bound">A</a> <a id="1759" href="Relation.Binary.Morphism.Structures.html#563" class="Generalizable">ℓ₁</a><a id="1761" class="Symbol">)</a> <a id="1763" class="Symbol">(</a><a id="1764" href="Relation.Binary.Morphism.Structures.html#1764" class="Bound Operator">_≈₂_</a> <a id="1769" class="Symbol">:</a> <a id="1771" href="Relation.Binary.Core.html#896" class="Function">Rel</a> <a id="1775" href="Relation.Binary.Morphism.Structures.html#354" class="Bound">B</a> <a id="1777" href="Relation.Binary.Morphism.Structures.html#566" class="Generalizable">ℓ₂</a><a id="1779" class="Symbol">)</a>
|
||
<a id="1808" class="Symbol">(</a><a id="1809" href="Relation.Binary.Morphism.Structures.html#1809" class="Bound Operator">_≲₁_</a> <a id="1814" class="Symbol">:</a> <a id="1816" href="Relation.Binary.Core.html#896" class="Function">Rel</a> <a id="1820" href="Relation.Binary.Morphism.Structures.html#342" class="Bound">A</a> <a id="1822" href="Relation.Binary.Morphism.Structures.html#569" class="Generalizable">ℓ₃</a><a id="1824" class="Symbol">)</a> <a id="1826" class="Symbol">(</a><a id="1827" href="Relation.Binary.Morphism.Structures.html#1827" class="Bound Operator">_≲₂_</a> <a id="1832" class="Symbol">:</a> <a id="1834" href="Relation.Binary.Core.html#896" class="Function">Rel</a> <a id="1838" href="Relation.Binary.Morphism.Structures.html#354" class="Bound">B</a> <a id="1840" href="Relation.Binary.Morphism.Structures.html#572" class="Generalizable">ℓ₄</a><a id="1842" class="Symbol">)</a>
|
||
<a id="1871" class="Symbol">(</a><a id="1872" href="Relation.Binary.Morphism.Structures.html#1872" class="Bound Operator">⟦_⟧</a> <a id="1876" class="Symbol">:</a> <a id="1878" href="Relation.Binary.Morphism.Structures.html#342" class="Bound">A</a> <a id="1880" class="Symbol">→</a> <a id="1882" href="Relation.Binary.Morphism.Structures.html#354" class="Bound">B</a><a id="1883" class="Symbol">)</a> <a id="1885" class="Symbol">:</a> <a id="1887" href="Agda.Primitive.html#388" class="Primitive">Set</a> <a id="1891" class="Symbol">(</a><a id="1892" href="Relation.Binary.Morphism.Structures.html#336" class="Bound">a</a> <a id="1894" href="Agda.Primitive.html#961" class="Primitive Operator">⊔</a> <a id="1896" href="Relation.Binary.Morphism.Structures.html#1759" class="Bound">ℓ₁</a> <a id="1899" href="Agda.Primitive.html#961" class="Primitive Operator">⊔</a> <a id="1901" href="Relation.Binary.Morphism.Structures.html#1777" class="Bound">ℓ₂</a> <a id="1904" href="Agda.Primitive.html#961" class="Primitive Operator">⊔</a> <a id="1906" href="Relation.Binary.Morphism.Structures.html#1822" class="Bound">ℓ₃</a> <a id="1909" href="Agda.Primitive.html#961" class="Primitive Operator">⊔</a> <a id="1911" href="Relation.Binary.Morphism.Structures.html#1840" class="Bound">ℓ₄</a><a id="1913" class="Symbol">)</a>
|
||
<a id="1942" class="Keyword">where</a>
|
||
<a id="1950" class="Keyword">field</a>
|
||
<a id="IsOrderHomomorphism.cong"></a><a id="1960" href="Relation.Binary.Morphism.Structures.html#1960" class="Field">cong</a> <a id="1966" class="Symbol">:</a> <a id="1968" href="Relation.Binary.Morphism.Definitions.html#815" class="Function">Homomorphic₂</a> <a id="1981" href="Relation.Binary.Morphism.Structures.html#1746" class="Bound Operator">_≈₁_</a> <a id="1986" href="Relation.Binary.Morphism.Structures.html#1764" class="Bound Operator">_≈₂_</a> <a id="1991" href="Relation.Binary.Morphism.Structures.html#1872" class="Bound Operator">⟦_⟧</a>
|
||
<a id="IsOrderHomomorphism.mono"></a><a id="1999" href="Relation.Binary.Morphism.Structures.html#1999" class="Field">mono</a> <a id="2005" class="Symbol">:</a> <a id="2007" href="Relation.Binary.Morphism.Definitions.html#815" class="Function">Homomorphic₂</a> <a id="2020" href="Relation.Binary.Morphism.Structures.html#1809" class="Bound Operator">_≲₁_</a> <a id="2025" href="Relation.Binary.Morphism.Structures.html#1827" class="Bound Operator">_≲₂_</a> <a id="2030" href="Relation.Binary.Morphism.Structures.html#1872" class="Bound Operator">⟦_⟧</a>
|
||
|
||
<a id="2037" class="Keyword">module</a> <a id="IsOrderHomomorphism.Eq"></a><a id="2044" href="Relation.Binary.Morphism.Structures.html#2044" class="Module">Eq</a> <a id="2047" class="Keyword">where</a>
|
||
<a id="IsOrderHomomorphism.Eq.isRelHomomorphism"></a><a id="2057" href="Relation.Binary.Morphism.Structures.html#2057" class="Function">isRelHomomorphism</a> <a id="2075" class="Symbol">:</a> <a id="2077" href="Relation.Binary.Morphism.Structures.html#751" class="Record">IsRelHomomorphism</a> <a id="2095" href="Relation.Binary.Morphism.Structures.html#1746" class="Bound Operator">_≈₁_</a> <a id="2100" href="Relation.Binary.Morphism.Structures.html#1764" class="Bound Operator">_≈₂_</a> <a id="2105" href="Relation.Binary.Morphism.Structures.html#1872" class="Bound Operator">⟦_⟧</a>
|
||
<a id="2113" href="Relation.Binary.Morphism.Structures.html#2057" class="Function">isRelHomomorphism</a> <a id="2131" class="Symbol">=</a> <a id="2133" class="Keyword">record</a> <a id="2140" class="Symbol">{</a> <a id="2142" href="Relation.Binary.Morphism.Structures.html#882" class="Field">cong</a> <a id="2147" class="Symbol">=</a> <a id="2149" href="Relation.Binary.Morphism.Structures.html#1960" class="Field">cong</a> <a id="2154" class="Symbol">}</a>
|
||
|
||
<a id="IsOrderHomomorphism.isRelHomomorphism"></a><a id="2159" href="Relation.Binary.Morphism.Structures.html#2159" class="Function">isRelHomomorphism</a> <a id="2177" class="Symbol">:</a> <a id="2179" href="Relation.Binary.Morphism.Structures.html#751" class="Record">IsRelHomomorphism</a> <a id="2197" href="Relation.Binary.Morphism.Structures.html#1809" class="Bound Operator">_≲₁_</a> <a id="2202" href="Relation.Binary.Morphism.Structures.html#1827" class="Bound Operator">_≲₂_</a> <a id="2207" href="Relation.Binary.Morphism.Structures.html#1872" class="Bound Operator">⟦_⟧</a>
|
||
<a id="2213" href="Relation.Binary.Morphism.Structures.html#2159" class="Function">isRelHomomorphism</a> <a id="2231" class="Symbol">=</a> <a id="2233" class="Keyword">record</a> <a id="2240" class="Symbol">{</a> <a id="2242" href="Relation.Binary.Morphism.Structures.html#882" class="Field">cong</a> <a id="2247" class="Symbol">=</a> <a id="2249" href="Relation.Binary.Morphism.Structures.html#1999" class="Field">mono</a> <a id="2254" class="Symbol">}</a>
|
||
|
||
|
||
<a id="2258" class="Keyword">record</a> <a id="IsOrderMonomorphism"></a><a id="2265" href="Relation.Binary.Morphism.Structures.html#2265" class="Record">IsOrderMonomorphism</a> <a id="2285" class="Symbol">(</a><a id="2286" href="Relation.Binary.Morphism.Structures.html#2286" class="Bound Operator">_≈₁_</a> <a id="2291" class="Symbol">:</a> <a id="2293" href="Relation.Binary.Core.html#896" class="Function">Rel</a> <a id="2297" href="Relation.Binary.Morphism.Structures.html#342" class="Bound">A</a> <a id="2299" href="Relation.Binary.Morphism.Structures.html#563" class="Generalizable">ℓ₁</a><a id="2301" class="Symbol">)</a> <a id="2303" class="Symbol">(</a><a id="2304" href="Relation.Binary.Morphism.Structures.html#2304" class="Bound Operator">_≈₂_</a> <a id="2309" class="Symbol">:</a> <a id="2311" href="Relation.Binary.Core.html#896" class="Function">Rel</a> <a id="2315" href="Relation.Binary.Morphism.Structures.html#354" class="Bound">B</a> <a id="2317" href="Relation.Binary.Morphism.Structures.html#566" class="Generalizable">ℓ₂</a><a id="2319" class="Symbol">)</a>
|
||
<a id="2348" class="Symbol">(</a><a id="2349" href="Relation.Binary.Morphism.Structures.html#2349" class="Bound Operator">_≲₁_</a> <a id="2354" class="Symbol">:</a> <a id="2356" href="Relation.Binary.Core.html#896" class="Function">Rel</a> <a id="2360" href="Relation.Binary.Morphism.Structures.html#342" class="Bound">A</a> <a id="2362" href="Relation.Binary.Morphism.Structures.html#569" class="Generalizable">ℓ₃</a><a id="2364" class="Symbol">)</a> <a id="2366" class="Symbol">(</a><a id="2367" href="Relation.Binary.Morphism.Structures.html#2367" class="Bound Operator">_≲₂_</a> <a id="2372" class="Symbol">:</a> <a id="2374" href="Relation.Binary.Core.html#896" class="Function">Rel</a> <a id="2378" href="Relation.Binary.Morphism.Structures.html#354" class="Bound">B</a> <a id="2380" href="Relation.Binary.Morphism.Structures.html#572" class="Generalizable">ℓ₄</a><a id="2382" class="Symbol">)</a>
|
||
<a id="2411" class="Symbol">(</a><a id="2412" href="Relation.Binary.Morphism.Structures.html#2412" class="Bound Operator">⟦_⟧</a> <a id="2416" class="Symbol">:</a> <a id="2418" href="Relation.Binary.Morphism.Structures.html#342" class="Bound">A</a> <a id="2420" class="Symbol">→</a> <a id="2422" href="Relation.Binary.Morphism.Structures.html#354" class="Bound">B</a><a id="2423" class="Symbol">)</a> <a id="2425" class="Symbol">:</a> <a id="2427" href="Agda.Primitive.html#388" class="Primitive">Set</a> <a id="2431" class="Symbol">(</a><a id="2432" href="Relation.Binary.Morphism.Structures.html#336" class="Bound">a</a> <a id="2434" href="Agda.Primitive.html#961" class="Primitive Operator">⊔</a> <a id="2436" href="Relation.Binary.Morphism.Structures.html#2299" class="Bound">ℓ₁</a> <a id="2439" href="Agda.Primitive.html#961" class="Primitive Operator">⊔</a> <a id="2441" href="Relation.Binary.Morphism.Structures.html#2317" class="Bound">ℓ₂</a> <a id="2444" href="Agda.Primitive.html#961" class="Primitive Operator">⊔</a> <a id="2446" href="Relation.Binary.Morphism.Structures.html#2362" class="Bound">ℓ₃</a> <a id="2449" href="Agda.Primitive.html#961" class="Primitive Operator">⊔</a> <a id="2451" href="Relation.Binary.Morphism.Structures.html#2380" class="Bound">ℓ₄</a><a id="2453" class="Symbol">)</a>
|
||
<a id="2482" class="Keyword">where</a>
|
||
<a id="2490" class="Keyword">field</a>
|
||
<a id="IsOrderMonomorphism.isOrderHomomorphism"></a><a id="2500" href="Relation.Binary.Morphism.Structures.html#2500" class="Field">isOrderHomomorphism</a> <a id="2520" class="Symbol">:</a> <a id="2522" href="Relation.Binary.Morphism.Structures.html#1725" class="Record">IsOrderHomomorphism</a> <a id="2542" href="Relation.Binary.Morphism.Structures.html#2286" class="Bound Operator">_≈₁_</a> <a id="2547" href="Relation.Binary.Morphism.Structures.html#2304" class="Bound Operator">_≈₂_</a> <a id="2552" href="Relation.Binary.Morphism.Structures.html#2349" class="Bound Operator">_≲₁_</a> <a id="2557" href="Relation.Binary.Morphism.Structures.html#2367" class="Bound Operator">_≲₂_</a> <a id="2562" href="Relation.Binary.Morphism.Structures.html#2412" class="Bound Operator">⟦_⟧</a>
|
||
<a id="IsOrderMonomorphism.injective"></a><a id="2570" href="Relation.Binary.Morphism.Structures.html#2570" class="Field">injective</a> <a id="2590" class="Symbol">:</a> <a id="2592" href="Function.Definitions.html#842" class="Function">Injective</a> <a id="2602" href="Relation.Binary.Morphism.Structures.html#2286" class="Bound Operator">_≈₁_</a> <a id="2607" href="Relation.Binary.Morphism.Structures.html#2304" class="Bound Operator">_≈₂_</a> <a id="2612" href="Relation.Binary.Morphism.Structures.html#2412" class="Bound Operator">⟦_⟧</a>
|
||
<a id="IsOrderMonomorphism.cancel"></a><a id="2620" href="Relation.Binary.Morphism.Structures.html#2620" class="Field">cancel</a> <a id="2640" class="Symbol">:</a> <a id="2642" href="Function.Definitions.html#842" class="Function">Injective</a> <a id="2652" href="Relation.Binary.Morphism.Structures.html#2349" class="Bound Operator">_≲₁_</a> <a id="2657" href="Relation.Binary.Morphism.Structures.html#2367" class="Bound Operator">_≲₂_</a> <a id="2662" href="Relation.Binary.Morphism.Structures.html#2412" class="Bound Operator">⟦_⟧</a>
|
||
|
||
<a id="2669" class="Keyword">open</a> <a id="2674" href="Relation.Binary.Morphism.Structures.html#1725" class="Module">IsOrderHomomorphism</a> <a id="2694" href="Relation.Binary.Morphism.Structures.html#2500" class="Field">isOrderHomomorphism</a> <a id="2714" class="Keyword">public</a>
|
||
<a id="2725" class="Keyword">hiding</a> <a id="2732" class="Symbol">(</a><a id="2733" class="Keyword">module</a> <a id="2740" href="Relation.Binary.Morphism.Structures.html#2044" class="Module">Eq</a><a id="2742" class="Symbol">)</a>
|
||
|
||
<a id="2747" class="Keyword">module</a> <a id="IsOrderMonomorphism.Eq"></a><a id="2754" href="Relation.Binary.Morphism.Structures.html#2754" class="Module">Eq</a> <a id="2757" class="Keyword">where</a>
|
||
<a id="IsOrderMonomorphism.Eq.isRelMonomorphism"></a><a id="2767" href="Relation.Binary.Morphism.Structures.html#2767" class="Function">isRelMonomorphism</a> <a id="2785" class="Symbol">:</a> <a id="2787" href="Relation.Binary.Morphism.Structures.html#925" class="Record">IsRelMonomorphism</a> <a id="2805" href="Relation.Binary.Morphism.Structures.html#2286" class="Bound Operator">_≈₁_</a> <a id="2810" href="Relation.Binary.Morphism.Structures.html#2304" class="Bound Operator">_≈₂_</a> <a id="2815" href="Relation.Binary.Morphism.Structures.html#2412" class="Bound Operator">⟦_⟧</a>
|
||
<a id="2823" href="Relation.Binary.Morphism.Structures.html#2767" class="Function">isRelMonomorphism</a> <a id="2841" class="Symbol">=</a> <a id="2843" class="Keyword">record</a>
|
||
<a id="2856" class="Symbol">{</a> <a id="2858" href="Relation.Binary.Morphism.Structures.html#1056" class="Field">isHomomorphism</a> <a id="2873" class="Symbol">=</a> <a id="2875" href="Relation.Binary.Morphism.Structures.html#2057" class="Function">IsOrderHomomorphism.Eq.isRelHomomorphism</a> <a id="2916" href="Relation.Binary.Morphism.Structures.html#2500" class="Field">isOrderHomomorphism</a>
|
||
<a id="2942" class="Symbol">;</a> <a id="2944" href="Relation.Binary.Morphism.Structures.html#1109" class="Field">injective</a> <a id="2959" class="Symbol">=</a> <a id="2961" href="Relation.Binary.Morphism.Structures.html#2570" class="Field">injective</a>
|
||
<a id="2977" class="Symbol">}</a>
|
||
|
||
<a id="IsOrderMonomorphism.isRelMonomorphism"></a><a id="2982" href="Relation.Binary.Morphism.Structures.html#2982" class="Function">isRelMonomorphism</a> <a id="3000" class="Symbol">:</a> <a id="3002" href="Relation.Binary.Morphism.Structures.html#925" class="Record">IsRelMonomorphism</a> <a id="3020" href="Relation.Binary.Morphism.Structures.html#2349" class="Bound Operator">_≲₁_</a> <a id="3025" href="Relation.Binary.Morphism.Structures.html#2367" class="Bound Operator">_≲₂_</a> <a id="3030" href="Relation.Binary.Morphism.Structures.html#2412" class="Bound Operator">⟦_⟧</a>
|
||
<a id="3036" href="Relation.Binary.Morphism.Structures.html#2982" class="Function">isRelMonomorphism</a> <a id="3054" class="Symbol">=</a> <a id="3056" class="Keyword">record</a>
|
||
<a id="3067" class="Symbol">{</a> <a id="3069" href="Relation.Binary.Morphism.Structures.html#1056" class="Field">isHomomorphism</a> <a id="3084" class="Symbol">=</a> <a id="3086" href="Relation.Binary.Morphism.Structures.html#2159" class="Function">isRelHomomorphism</a>
|
||
<a id="3108" class="Symbol">;</a> <a id="3110" href="Relation.Binary.Morphism.Structures.html#1109" class="Field">injective</a> <a id="3125" class="Symbol">=</a> <a id="3127" href="Relation.Binary.Morphism.Structures.html#2620" class="Field">cancel</a>
|
||
<a id="3138" class="Symbol">}</a>
|
||
|
||
|
||
<a id="3142" class="Keyword">record</a> <a id="IsOrderIsomorphism"></a><a id="3149" href="Relation.Binary.Morphism.Structures.html#3149" class="Record">IsOrderIsomorphism</a> <a id="3168" class="Symbol">(</a><a id="3169" href="Relation.Binary.Morphism.Structures.html#3169" class="Bound Operator">_≈₁_</a> <a id="3174" class="Symbol">:</a> <a id="3176" href="Relation.Binary.Core.html#896" class="Function">Rel</a> <a id="3180" href="Relation.Binary.Morphism.Structures.html#342" class="Bound">A</a> <a id="3182" href="Relation.Binary.Morphism.Structures.html#563" class="Generalizable">ℓ₁</a><a id="3184" class="Symbol">)</a> <a id="3186" class="Symbol">(</a><a id="3187" href="Relation.Binary.Morphism.Structures.html#3187" class="Bound Operator">_≈₂_</a> <a id="3192" class="Symbol">:</a> <a id="3194" href="Relation.Binary.Core.html#896" class="Function">Rel</a> <a id="3198" href="Relation.Binary.Morphism.Structures.html#354" class="Bound">B</a> <a id="3200" href="Relation.Binary.Morphism.Structures.html#566" class="Generalizable">ℓ₂</a><a id="3202" class="Symbol">)</a>
|
||
<a id="3230" class="Symbol">(</a><a id="3231" href="Relation.Binary.Morphism.Structures.html#3231" class="Bound Operator">_≲₁_</a> <a id="3236" class="Symbol">:</a> <a id="3238" href="Relation.Binary.Core.html#896" class="Function">Rel</a> <a id="3242" href="Relation.Binary.Morphism.Structures.html#342" class="Bound">A</a> <a id="3244" href="Relation.Binary.Morphism.Structures.html#569" class="Generalizable">ℓ₃</a><a id="3246" class="Symbol">)</a> <a id="3248" class="Symbol">(</a><a id="3249" href="Relation.Binary.Morphism.Structures.html#3249" class="Bound Operator">_≲₂_</a> <a id="3254" class="Symbol">:</a> <a id="3256" href="Relation.Binary.Core.html#896" class="Function">Rel</a> <a id="3260" href="Relation.Binary.Morphism.Structures.html#354" class="Bound">B</a> <a id="3262" href="Relation.Binary.Morphism.Structures.html#572" class="Generalizable">ℓ₄</a><a id="3264" class="Symbol">)</a>
|
||
<a id="3292" class="Symbol">(</a><a id="3293" href="Relation.Binary.Morphism.Structures.html#3293" class="Bound Operator">⟦_⟧</a> <a id="3297" class="Symbol">:</a> <a id="3299" href="Relation.Binary.Morphism.Structures.html#342" class="Bound">A</a> <a id="3301" class="Symbol">→</a> <a id="3303" href="Relation.Binary.Morphism.Structures.html#354" class="Bound">B</a><a id="3304" class="Symbol">)</a> <a id="3306" class="Symbol">:</a> <a id="3308" href="Agda.Primitive.html#388" class="Primitive">Set</a> <a id="3312" class="Symbol">(</a><a id="3313" href="Relation.Binary.Morphism.Structures.html#336" class="Bound">a</a> <a id="3315" href="Agda.Primitive.html#961" class="Primitive Operator">⊔</a> <a id="3317" href="Relation.Binary.Morphism.Structures.html#338" class="Bound">b</a> <a id="3319" href="Agda.Primitive.html#961" class="Primitive Operator">⊔</a> <a id="3321" href="Relation.Binary.Morphism.Structures.html#3182" class="Bound">ℓ₁</a> <a id="3324" href="Agda.Primitive.html#961" class="Primitive Operator">⊔</a> <a id="3326" href="Relation.Binary.Morphism.Structures.html#3200" class="Bound">ℓ₂</a> <a id="3329" href="Agda.Primitive.html#961" class="Primitive Operator">⊔</a> <a id="3331" href="Relation.Binary.Morphism.Structures.html#3244" class="Bound">ℓ₃</a> <a id="3334" href="Agda.Primitive.html#961" class="Primitive Operator">⊔</a> <a id="3336" href="Relation.Binary.Morphism.Structures.html#3262" class="Bound">ℓ₄</a><a id="3338" class="Symbol">)</a>
|
||
<a id="3366" class="Keyword">where</a>
|
||
<a id="3374" class="Keyword">field</a>
|
||
<a id="IsOrderIsomorphism.isOrderMonomorphism"></a><a id="3384" href="Relation.Binary.Morphism.Structures.html#3384" class="Field">isOrderMonomorphism</a> <a id="3404" class="Symbol">:</a> <a id="3406" href="Relation.Binary.Morphism.Structures.html#2265" class="Record">IsOrderMonomorphism</a> <a id="3426" href="Relation.Binary.Morphism.Structures.html#3169" class="Bound Operator">_≈₁_</a> <a id="3431" href="Relation.Binary.Morphism.Structures.html#3187" class="Bound Operator">_≈₂_</a> <a id="3436" href="Relation.Binary.Morphism.Structures.html#3231" class="Bound Operator">_≲₁_</a> <a id="3441" href="Relation.Binary.Morphism.Structures.html#3249" class="Bound Operator">_≲₂_</a> <a id="3446" href="Relation.Binary.Morphism.Structures.html#3293" class="Bound Operator">⟦_⟧</a>
|
||
<a id="IsOrderIsomorphism.surjective"></a><a id="3454" href="Relation.Binary.Morphism.Structures.html#3454" class="Field">surjective</a> <a id="3474" class="Symbol">:</a> <a id="3476" href="Function.Definitions.html#919" class="Function">Surjective</a> <a id="3487" href="Relation.Binary.Morphism.Structures.html#3169" class="Bound Operator">_≈₁_</a> <a id="3492" href="Relation.Binary.Morphism.Structures.html#3187" class="Bound Operator">_≈₂_</a> <a id="3497" href="Relation.Binary.Morphism.Structures.html#3293" class="Bound Operator">⟦_⟧</a>
|
||
|
||
<a id="3504" class="Keyword">open</a> <a id="3509" href="Relation.Binary.Morphism.Structures.html#2265" class="Module">IsOrderMonomorphism</a> <a id="3529" href="Relation.Binary.Morphism.Structures.html#3384" class="Field">isOrderMonomorphism</a> <a id="3549" class="Keyword">public</a>
|
||
<a id="3560" class="Keyword">hiding</a> <a id="3567" class="Symbol">(</a><a id="3568" class="Keyword">module</a> <a id="3575" href="Relation.Binary.Morphism.Structures.html#2754" class="Module">Eq</a><a id="3577" class="Symbol">)</a>
|
||
|
||
<a id="3582" class="Keyword">module</a> <a id="IsOrderIsomorphism.Eq"></a><a id="3589" href="Relation.Binary.Morphism.Structures.html#3589" class="Module">Eq</a> <a id="3592" class="Keyword">where</a>
|
||
<a id="IsOrderIsomorphism.Eq.isRelIsomorphism"></a><a id="3602" href="Relation.Binary.Morphism.Structures.html#3602" class="Function">isRelIsomorphism</a> <a id="3619" class="Symbol">:</a> <a id="3621" href="Relation.Binary.Morphism.Structures.html#1207" class="Record">IsRelIsomorphism</a> <a id="3638" href="Relation.Binary.Morphism.Structures.html#3169" class="Bound Operator">_≈₁_</a> <a id="3643" href="Relation.Binary.Morphism.Structures.html#3187" class="Bound Operator">_≈₂_</a> <a id="3648" href="Relation.Binary.Morphism.Structures.html#3293" class="Bound Operator">⟦_⟧</a>
|
||
<a id="3656" href="Relation.Binary.Morphism.Structures.html#3602" class="Function">isRelIsomorphism</a> <a id="3673" class="Symbol">=</a> <a id="3675" class="Keyword">record</a>
|
||
<a id="3688" class="Symbol">{</a> <a id="3690" href="Relation.Binary.Morphism.Structures.html#1340" class="Field">isMonomorphism</a> <a id="3705" class="Symbol">=</a> <a id="3707" href="Relation.Binary.Morphism.Structures.html#2767" class="Function">IsOrderMonomorphism.Eq.isRelMonomorphism</a> <a id="3748" href="Relation.Binary.Morphism.Structures.html#3384" class="Field">isOrderMonomorphism</a>
|
||
<a id="3774" class="Symbol">;</a> <a id="3776" href="Relation.Binary.Morphism.Structures.html#1393" class="Field">surjective</a> <a id="3791" class="Symbol">=</a> <a id="3793" href="Relation.Binary.Morphism.Structures.html#3454" class="Field">surjective</a>
|
||
<a id="3810" class="Symbol">}</a>
|
||
</pre></body></html> |