mirror of
https://git8.cs.fau.de/theses/bsc-leon-vatthauer.git
synced 2024-05-31 07:28:34 +02:00
506 lines
123 KiB
HTML
506 lines
123 KiB
HTML
|
<!DOCTYPE HTML>
|
|||
|
<html><head><meta charset="utf-8"><title>Algebra.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">-- Morphisms between algebraic structures</a>
|
|||
|
<a id="148" class="Comment">------------------------------------------------------------------------</a>
|
|||
|
|
|||
|
<a id="222" class="Symbol">{-#</a> <a id="226" class="Keyword">OPTIONS</a> <a id="234" class="Pragma">--cubical-compatible</a> <a id="255" class="Pragma">--safe</a> <a id="262" class="Symbol">#-}</a>
|
|||
|
|
|||
|
<a id="267" class="Keyword">open</a> <a id="272" class="Keyword">import</a> <a id="279" href="Relation.Binary.Core.html" class="Module">Relation.Binary.Core</a>
|
|||
|
|
|||
|
<a id="301" class="Keyword">module</a> <a id="308" href="Algebra.Morphism.Structures.html" class="Module">Algebra.Morphism.Structures</a> <a id="336" class="Keyword">where</a>
|
|||
|
|
|||
|
<a id="343" class="Keyword">open</a> <a id="348" class="Keyword">import</a> <a id="355" href="Algebra.Core.html" class="Module">Algebra.Core</a>
|
|||
|
<a id="368" class="Keyword">open</a> <a id="373" class="Keyword">import</a> <a id="380" href="Algebra.Bundles.html" class="Module">Algebra.Bundles</a>
|
|||
|
<a id="396" class="Keyword">import</a> <a id="403" href="Algebra.Morphism.Definitions.html" class="Module">Algebra.Morphism.Definitions</a> <a id="432" class="Symbol">as</a> <a id="435" class="Module">MorphismDefinitions</a>
|
|||
|
<a id="455" class="Keyword">open</a> <a id="460" class="Keyword">import</a> <a id="467" href="Level.html" class="Module">Level</a> <a id="473" class="Keyword">using</a> <a id="479" class="Symbol">(</a><a id="480" href="Agda.Primitive.html#591" class="Postulate">Level</a><a id="485" class="Symbol">;</a> <a id="487" href="Agda.Primitive.html#804" class="Primitive Operator">_⊔_</a><a id="490" class="Symbol">)</a>
|
|||
|
<a id="492" class="Keyword">import</a> <a id="499" href="Function.Definitions.html" class="Module">Function.Definitions</a> <a id="520" class="Symbol">as</a> <a id="523" class="Module">FunctionDefinitions</a>
|
|||
|
<a id="543" class="Keyword">open</a> <a id="548" class="Keyword">import</a> <a id="555" href="Relation.Binary.Morphism.Structures.html" class="Module">Relation.Binary.Morphism.Structures</a>
|
|||
|
|
|||
|
<a id="592" class="Keyword">private</a>
|
|||
|
<a id="602" class="Keyword">variable</a>
|
|||
|
<a id="615" href="Algebra.Morphism.Structures.html#615" class="Generalizable">a</a> <a id="617" href="Algebra.Morphism.Structures.html#617" class="Generalizable">b</a> <a id="619" href="Algebra.Morphism.Structures.html#619" class="Generalizable">ℓ₁</a> <a id="622" href="Algebra.Morphism.Structures.html#622" class="Generalizable">ℓ₂</a> <a id="625" class="Symbol">:</a> <a id="627" href="Agda.Primitive.html#591" class="Postulate">Level</a>
|
|||
|
|
|||
|
<a id="634" class="Comment">------------------------------------------------------------------------</a>
|
|||
|
<a id="707" class="Comment">-- Morphisms over magma-like structures</a>
|
|||
|
<a id="747" class="Comment">------------------------------------------------------------------------</a>
|
|||
|
|
|||
|
<a id="821" class="Keyword">module</a> <a id="MagmaMorphisms"></a><a id="828" href="Algebra.Morphism.Structures.html#828" class="Module">MagmaMorphisms</a> <a id="843" class="Symbol">(</a><a id="844" href="Algebra.Morphism.Structures.html#844" class="Bound">M₁</a> <a id="847" class="Symbol">:</a> <a id="849" href="Algebra.Bundles.html#790" class="Record">RawMagma</a> <a id="858" href="Algebra.Morphism.Structures.html#615" class="Generalizable">a</a> <a id="860" href="Algebra.Morphism.Structures.html#619" class="Generalizable">ℓ₁</a><a id="862" class="Symbol">)</a> <a id="864" class="Symbol">(</a><a id="865" href="Algebra.Morphism.Structures.html#865" class="Bound">M₂</a> <a id="868" class="Symbol">:</a> <a id="870" href="Algebra.Bundles.html#790" class="Record">RawMagma</a> <a id="879" href="Algebra.Morphism.Structures.html#617" class="Generalizable">b</a> <a id="881" href="Algebra.Morphism.Structures.html#622" class="Generalizable">ℓ₂</a><a id="883" class="Symbol">)</a> <a id="885" class="Keyword">where</a>
|
|||
|
|
|||
|
<a id="894" class="Keyword">open</a> <a id="899" href="Algebra.Bundles.html#790" class="Module">RawMagma</a> <a id="908" href="Algebra.Morphism.Structures.html#844" class="Bound">M₁</a> <a id="911" class="Keyword">renaming</a> <a id="920" class="Symbol">(</a><a id="921" href="Algebra.Bundles.html#871" class="Field">Carrier</a> <a id="929" class="Symbol">to</a> <a id="932" class="Field">A</a><a id="933" class="Symbol">;</a> <a id="935" href="Algebra.Bundles.html#891" class="Field Operator">_≈_</a> <a id="939" class="Symbol">to</a> <a id="942" class="Field Operator">_≈₁_</a><a id="946" class="Symbol">;</a> <a id="948" href="Algebra.Bundles.html#919" class="Field Operator">_∙_</a> <a id="952" class="Symbol">to</a> <a id="955" class="Field Operator">_∙_</a><a id="958" class="Symbol">)</a>
|
|||
|
<a id="962" class="Keyword">open</a> <a id="967" href="Algebra.Bundles.html#790" class="Module">RawMagma</a> <a id="976" href="Algebra.Morphism.Structures.html#865" class="Bound">M₂</a> <a id="979" class="Keyword">renaming</a> <a id="988" class="Symbol">(</a><a id="989" href="Algebra.Bundles.html#871" class="Field">Carrier</a> <a id="997" class="Symbol">to</a> <a id="1000" class="Field">B</a><a id="1001" class="Symbol">;</a> <a id="1003" href="Algebra.Bundles.html#891" class="Field Operator">_≈_</a> <a id="1007" class="Symbol">to</a> <a id="1010" class="Field Operator">_≈₂_</a><a id="1014" class="Symbol">;</a> <a id="1016" href="Algebra.Bundles.html#919" class="Field Operator">_∙_</a> <a id="1020" class="Symbol">to</a> <a id="1023" class="Field Operator">_◦_</a><a id="1026" class="Symbol">)</a>
|
|||
|
<a id="1030" class="Keyword">open</a> <a id="1035" href="Algebra.Morphism.Definitions.html" class="Module">MorphismDefinitions</a> <a id="1055" href="Algebra.Morphism.Structures.html#932" class="Function">A</a> <a id="1057" href="Algebra.Morphism.Structures.html#1000" class="Field">B</a> <a id="1059" href="Algebra.Morphism.Structures.html#1010" class="Field Operator">_≈₂_</a>
|
|||
|
<a id="1066" class="Keyword">open</a> <a id="1071" href="Function.Definitions.html" class="Module">FunctionDefinitions</a> <a id="1091" href="Algebra.Morphism.Structures.html#942" class="Function Operator">_≈₁_</a> <a id="1096" href="Algebra.Morphism.Structures.html#1010" class="Field Operator">_≈₂_</a>
|
|||
|
|
|||
|
|
|||
|
<a id="1105" class="Keyword">record</a> <a id="MagmaMorphisms.IsMagmaHomomorphism"></a><a id="1112" href="Algebra.Morphism.Structures.html#1112" class="Record">IsMagmaHomomorphism</a> <a id="1132" class="Symbol">(</a><a id="1133" href="Algebra.Morphism.Structures.html#1133" class="Bound Operator">⟦_⟧</a> <a id="1137" class="Symbol">:</a> <a id="1139" href="Algebra.Morphism.Structures.html#932" class="Function">A</a> <a id="1141" class="Symbol">→</a> <a id="1143" href="Algebra.Morphism.Structures.html#1000" class="Field">B</a><a id="1144" class="Symbol">)</a> <a id="1146" class="Symbol">:</a> <a id="1148" href="Agda.Primitive.html#320" class="Primitive">Set</a> <a id="1152" class="Symbol">(</a><a id="1153" href="Algebra.Morphism.Structures.html#858" class="Bound">a</a> <a id="1155" href="Agda.Primitive.html#804" class="Primitive Operator">⊔</a> <a id="1157" href="Algebra.Morphism.Structures.html#860" class="Bound">ℓ₁</a> <a id="1160" href="Agda.Primitive.html#804" class="Primitive Operator">⊔</a> <a id="1162" href="Algebra.Morphism.Structures.html#881" class="Bound">ℓ₂</a><a id="1164" class="Symbol">)</a> <a id="1166" class="Keyword">where</a>
|
|||
|
<a id="1176" class="Keyword">field</a>
|
|||
|
<a id="MagmaMorphisms.IsMagmaHomomorphism.isRelHomomorphism"></a><a id="1188" href="Algebra.Morphism.Structures.html#1188" class="Field">isRelHomomorphism</a> <a id="1206" class="Symbol">:</a> <a id="1208" href="Relation.Binary.Morphism.Structures.html#715" class="Record">IsRelHomomorphism</a> <a id="1226" href="Algebra.Morphism.Structures.html#942" class="Function Operator">_≈₁_</a> <a id="1231" href="Algebra.Morphism.Structures.html#1010" class="Field Operator">_≈₂_</a> <a id="1236" href="Algebra.Morphism.Structures.html#1133" class="Bound Operator">⟦_⟧</a>
|
|||
|
<a id="MagmaMorphisms.IsMagmaHomomorphism.homo"></a><a id="1246" href="Algebra.Morphism.Structures.html#1246" class="Field">homo</a> <a id="1264" class="Symbol">:</a> <a id="1266" href="Algebra.Morphism.Definitions.html#852" class="Function">Homomorphic₂</a> <a id="1279" href="Algebra.Morphism.Structures.html#1133" class="Bound Operator">⟦_⟧</a> <a id="1283" href="Algebra.Morphism.Structures.html#955" class="Function Operator">_∙_</a> <a id="1287" href="Algebra.Morphism.Structures.html#1023" class="Field Operator">_◦_</a>
|
|||
|
|
|||
|
<a id="1296" class="Keyword">open</a> <a id="1301" href="Relation.Binary.Morphism.Structures.html#715" class="Module">IsRelHomomorphism</a> <a id="1319" href="Algebra.Morphism.Structures.html#1188" class="Field">isRelHomomorphism</a> <a id="1337" class="Keyword">public</a>
|
|||
|
<a id="1350" class="Keyword">renaming</a> <a id="1359" class="Symbol">(</a><a id="1360" href="Relation.Binary.Morphism.Structures.html#846" class="Field">cong</a> <a id="1365" class="Symbol">to</a> <a id="1368" class="Field">⟦⟧-cong</a><a id="1375" class="Symbol">)</a>
|
|||
|
|
|||
|
|
|||
|
<a id="1381" class="Keyword">record</a> <a id="MagmaMorphisms.IsMagmaMonomorphism"></a><a id="1388" href="Algebra.Morphism.Structures.html#1388" class="Record">IsMagmaMonomorphism</a> <a id="1408" class="Symbol">(</a><a id="1409" href="Algebra.Morphism.Structures.html#1409" class="Bound Operator">⟦_⟧</a> <a id="1413" class="Symbol">:</a> <a id="1415" href="Algebra.Morphism.Structures.html#932" class="Function">A</a> <a id="1417" class="Symbol">→</a> <a id="1419" href="Algebra.Morphism.Structures.html#1000" class="Field">B</a><a id="1420" class="Symbol">)</a> <a id="1422" class="Symbol">:</a> <a id="1424" href="Agda.Primitive.html#320" class="Primitive">Set</a> <a id="1428" class="Symbol">(</a><a id="1429" href="Algebra.Morphism.Structures.html#858" class="Bound">a</a> <a id="1431" href="Agda.Primitive.html#804" class="Primitive Operator">⊔</a> <a id="1433" href="Algebra.Morphism.Structures.html#860" class="Bound">ℓ₁</a> <a id="1436" href="Agda.Primitive.html#804" class="Primitive Operator">⊔</a> <a id="1438" href="Algebra.Morphism.Structures.html#881" class="Bound">ℓ₂</a><a id="1440" class="Symbol">)</a> <a id="1442" class="Keyword">where</a>
|
|||
|
<a id="1452" class="Keyword">field</a>
|
|||
|
<a id="MagmaMorphisms.IsMagmaMonomorphism.isMagmaHomomorphism"></a><a id="1464" href="Algebra.Morphism.Structures.html#1464" class="Field">isMagmaHomomorphism</a> <a id="1484" class="Symbol">:</a> <a id="1486" href="Algebra.Morphism.Structures.html#1112" class="Record">IsMagmaHomomorphism</a> <a id="1506" href="Algebra.Morphism.Structures.html#1409" class="Bound Operator">⟦_⟧</a>
|
|||
|
<a id="MagmaMorphisms.IsMagmaMonomorphism.injective"></a><a id="1516" href="Algebra.Morphism.Structures.html#1516" class="Field">injective</a> <a id="1536" class="Symbol">:</a> <a id="1538" href="Function.Definitions.html#898" class="Function">Injective</a> <a id="1548" href="Algebra.Morphism.Structures.html#1409" class="Bound Operator">⟦_⟧</a>
|
|||
|
|
|||
|
<a id="1557" class="Keyword">open</a> <a id="1562" href="Algebra.Morphism.Structures.html#1112" class="Module">IsMagmaHomomorphism</a> <a id="1582" href="Algebra.Morphism.Structures.html#1464" class="Field">isMagmaHomomorphism</a> <a id="1602" class="Keyword">public</a>
|
|||
|
|
|||
|
<a id="MagmaMorphisms.IsMagmaMonomorphism.isRelMonomorphism"></a><a id="1614" href="Algebra.Morphism.Structures.html#1614" class="Function">isRelMonomorphism</a> <a id="1632" class="Symbol">:</a> <a id="1634" href="Relation.Binary.Morphism.Structures.html#889" class="Record">IsRelMonomorphism</a> <a id="1652" href="Algebra.Morphism.Structures.html#942" class="Function Operator">_≈₁_</a> <a id="1657" href="Algebra.Morphism.Structures.html#1010" class="Field Operator">_≈₂_</a> <a id="1662" href="Algebra.Morphism.Structures.html#1409" class="Bound Operator">⟦_⟧</a>
|
|||
|
<a id="1670" href="Algebra.Morphism.Structures.html#1614" class="Function">isRelMonomorphism</a> <a id="1688" class="Symbol">=</a> <a id="1690" class="Keyword">record</a>
|
|||
|
<a id="1703" class="Symbol">{</a> <a id="1705" href="Relation.Binary.Morphism.Structures.html#1020" class="Field">isHomomorphism</a> <a id="1720" class="Symbol">=</a> <a id="1722" href="Algebra.Morphism.Structures.html#1188" class="Function">isRelHomomorphism</a>
|
|||
|
<a id="1746" class="Symbol">;</a> <a id="1748" href="Relation.Binary.Morphism.Structures.html#1073" class="Field">injective</a> <a id="1763" class="Symbol">=</a> <a id="1765" href="Algebra.Morphism.Structures.html#1516" class="Field">injective</a>
|
|||
|
<a id="1781" class="Symbol">}</a>
|
|||
|
|
|||
|
|
|||
|
<a id="1787" class="Keyword">record</a> <a id="MagmaMorphisms.IsMagmaIsomorphism"></a><a id="1794" href="Algebra.Morphism.Structures.html#1794" class="Record">IsMagmaIsomorphism</a> <a id="1813" class="Symbol">(</a><a id="1814" href="Algebra.Morphism.Structures.html#1814" class="Bound Operator">⟦_⟧</a> <a id="1818" class="Symbol">:</a> <a id="1820" href="Algebra.Morphism.Structures.html#932" class="Function">A</a> <a id="1822" class="Symbol">→</a> <a id="1824" href="Algebra.Morphism.Structures.html#1000" class="Field">B</a><a id="1825" class="Symbol">)</a> <a id="1827" class="Symbol">:</a> <a id="1829" href="Agda.Primitive.html#320" class="Primitive">Set</a> <a id="1833" class="Symbol">(</a><a id="1834" href="Algebra.Morphism.Structures.html#858" class="Bound">a</a> <a id="1836" href="Agda.Primitive.html#804" class="Primitive Operator">⊔</a> <a id="1838" href="Algebra.Morphism.Structures.html#879" class="Bound">b</a> <a id="1840" href="Agda.Primitive.html#804" class="Primitive Operator">⊔</a> <a id="1842" href="Algebra.Morphism.Structures.html#860" class="Bound">ℓ₁</a> <a id="1845" href="Agda.Primitive.html#804" class="Primitive Operator">⊔</a> <a id="1847" href="Algebra.Morphism.Structures.html#881" class="Bound">ℓ₂</a><a id="1849" class="Symbol">)</a> <a id="1851" class="Keyword">where</a>
|
|||
|
<a id="1861" class="Keyword">field</a>
|
|||
|
<a id="MagmaMorphisms.IsMagmaIsomorphism.isMagmaMonomorphism"></a><a id="1873" href="Algebra.Morphism.Structures.html#1873" class="Field">isMagmaMonomorphism</a> <a id="1893" class="Symbol">:</a> <a id="1895" href="Algebra.Morphism.Structures.html#1388" class="Record">IsMagmaMonomorphism</a> <a id="1915" href="Algebra.Morphism.Structures.html#1814" class="Bound Operator">⟦_⟧</a>
|
|||
|
<a id="MagmaMorphisms.IsMagmaIsomorphism.surjective"></a><a id="1925" href="Algebra.Morphism.Structures.html#1925" class="Field">surjective</a> <a id="1945" class="Symbol">:</a> <a id="1947" href="Function.Definitions.Core2.html#672" class="Function">Surjective</a> <a id="1958" href="Algebra.Morphism.Structures.html#1814" class="Bound Operator">⟦_⟧</a>
|
|||
|
|
|||
|
<a id="1967" class="Keyword">open</a> <a id="1972" href="Algebra.Morphism.Structures.html#1388" class="Module">IsMagmaMonomorphism</a> <a id="1992" href="Algebra.Morphism.Structures.html#1873" class="Field">isMagmaMonomorphism</a> <a id="2012" class="Keyword">public</a>
|
|||
|
|
|||
|
<a id="MagmaMorphisms.IsMagmaIsomorphism.isRelIsomorphism"></a><a id="2024" href="Algebra.Morphism.Structures.html#2024" class="Function">isRelIsomorphism</a> <a id="2041" class="Symbol">:</a> <a id="2043" href="Relation.Binary.Morphism.Structures.html#1171" class="Record">IsRelIsomorphism</a> <a id="2060" href="Algebra.Morphism.Structures.html#942" class="Function Operator">_≈₁_</a> <a id="2065" href="Algebra.Morphism.Structures.html#1010" class="Field Operator">_≈₂_</a> <a id="2070" href="Algebra.Morphism.Structures.html#1814" class="Bound Operator">⟦_⟧</a>
|
|||
|
<a id="2078" href="Algebra.Morphism.Structures.html#2024" class="Function">isRelIsomorphism</a> <a id="2095" class="Symbol">=</a> <a id="2097" class="Keyword">record</a>
|
|||
|
<a id="2110" class="Symbol">{</a> <a id="2112" href="Relation.Binary.Morphism.Structures.html#1304" class="Field">isMonomorphism</a> <a id="2127" class="Symbol">=</a> <a id="2129" href="Algebra.Morphism.Structures.html#1614" class="Function">isRelMonomorphism</a>
|
|||
|
<a id="2153" class="Symbol">;</a> <a id="2155" href="Relation.Binary.Morphism.Structures.html#1357" class="Field">surjective</a> <a id="2170" class="Symbol">=</a> <a id="2172" href="Algebra.Morphism.Structures.html#1925" class="Field">surjective</a>
|
|||
|
<a id="2189" class="Symbol">}</a>
|
|||
|
|
|||
|
|
|||
|
<a id="2193" class="Comment">------------------------------------------------------------------------</a>
|
|||
|
<a id="2266" class="Comment">-- Morphisms over monoid-like structures</a>
|
|||
|
<a id="2307" class="Comment">------------------------------------------------------------------------</a>
|
|||
|
|
|||
|
<a id="2381" class="Keyword">module</a> <a id="MonoidMorphisms"></a><a id="2388" href="Algebra.Morphism.Structures.html#2388" class="Module">MonoidMorphisms</a> <a id="2404" class="Symbol">(</a><a id="2405" href="Algebra.Morphism.Structures.html#2405" class="Bound">M₁</a> <a id="2408" class="Symbol">:</a> <a id="2410" href="Algebra.Bundles.html#4113" class="Record">RawMonoid</a> <a id="2420" href="Algebra.Morphism.Structures.html#615" class="Generalizable">a</a> <a id="2422" href="Algebra.Morphism.Structures.html#619" class="Generalizable">ℓ₁</a><a id="2424" class="Symbol">)</a> <a id="2426" class="Symbol">(</a><a id="2427" href="Algebra.Morphism.Structures.html#2427" class="Bound">M₂</a> <a id="2430" class="Symbol">:</a> <a id="2432" href="Algebra.Bundles.html#4113" class="Record">RawMonoid</a> <a id="2442" href="Algebra.Morphism.Structures.html#617" class="Generalizable">b</a> <a id="2444" href="Algebra.Morphism.Structures.html#622" class="Generalizable">ℓ₂</a><a id="2446" class="Symbol">)</a> <a id="2448" class="Keyword">where</a>
|
|||
|
|
|||
|
<a id="2457" class="Keyword">open</a> <a id="2462" href="Algebra.Bundles.html#4113" class="Module">RawMonoid</a> <a id="2472" href="Algebra.Morphism.Structures.html#2405" class="Bound">M₁</a> <a id="2475" class="Keyword">renaming</a> <a id="2484" class="Symbol">(</a><a id="2485" href="Algebra.Bundles.html#4195" class="Field">Carrier</a> <a id="2493" class="Symbol">to</a> <a id="2496" class="Field">A</a><a id="2497" class="Symbol">;</a> <a id="2499" href="Algebra.Bundles.html#4215" class="Field Operator">_≈_</a> <a id="2503" class="Symbol">to</a> <a id="2506" class="Field Operator">_≈₁_</a><a id="2510" class="Symbol">;</a> <a id="2512" href="Algebra.Bundles.html#4243" class="Field Operator">_∙_</a> <a id="2516" class="Symbol">to</a> <a id="2519" class="Field Operator">_∙_</a><a id="2522" class="Symbol">;</a> <a id="2524" href="Algebra.Bundles.html#4269" class="Field">ε</a> <a id="2526" class="Symbol">to</a> <a id="2529" class="Field">ε₁</a><a id="2531" class="Symbol">)</a>
|
|||
|
<a id="2535" class="Keyword">open</a> <a id="2540" href="Algebra.Bundles.html#4113" class="Module">RawMonoid</a> <a id="2550" href="Algebra.Morphism.Structures.html#2427" class="Bound">M₂</a> <a id="2553" class="Keyword">renaming</a> <a id="2562" class="Symbol">(</a><a id="2563" href="Algebra.Bundles.html#4195" class="Field">Carrier</a> <a id="2571" class="Symbol">to</a> <a id="2574" class="Field">B</a><a id="2575" class="Symbol">;</a> <a id="2577" href="Algebra.Bundles.html#4215" class="Field Operator">_≈_</a> <a id="2581" class="Symbol">to</a> <a id="2584" class="Field Operator">_≈₂_</a><a id="2588" class="Symbol">;</a> <a id="2590" href="Algebra.Bundles.html#4243" class="Field Operator">_∙_</a> <a id="2594" class="Symbol">to</a> <a id="2597" class="Field Operator">_◦_</a><a id="2600" class="Symbol">;</a> <a id="2602" href="Algebra.Bundles.html#4269" class="Field">ε</a> <a id="2604" class="Symbol">to</a> <a id="2607" class="Field">ε₂</a><a id="2609" class="Symbol">)</a>
|
|||
|
<a id="2613" class="Keyword">open</a> <a id="2618" href="Algebra.Morphism.Definitions.html" class="Module">MorphismDefinitions</a> <a id="2638" href="Algebra.Morphism.Structures.html#2496" class="Function">A</a> <a id="2640" href="Algebra.Morphism.Structures.html#2574" class="Field">B</a> <a id="2642" href="Algebra.Morphism.Structures.html#2584" class="Field Operator">_≈₂_</a>
|
|||
|
<a id="2649" class="Keyword">open</a> <a id="2654" href="Function.Definitions.html" class="Module">FunctionDefinitions</a> <a id="2674" href="Algebra.Morphism.Structures.html#2506" class="Function Operator">_≈₁_</a> <a id="2679" href="Algebra.Morphism.Structures.html#2584" class="Field Operator">_≈₂_</a>
|
|||
|
<a id="2686" class="Keyword">open</a> <a id="2691" href="Algebra.Morphism.Structures.html#828" class="Module">MagmaMorphisms</a> <a id="2706" class="Symbol">(</a><a id="2707" href="Algebra.Bundles.html#4290" class="Function">RawMonoid.rawMagma</a> <a id="2726" href="Algebra.Morphism.Structures.html#2405" class="Bound">M₁</a><a id="2728" class="Symbol">)</a> <a id="2730" class="Symbol">(</a><a id="2731" href="Algebra.Bundles.html#4290" class="Function">RawMonoid.rawMagma</a> <a id="2750" href="Algebra.Morphism.Structures.html#2427" class="Bound">M₂</a><a id="2752" class="Symbol">)</a>
|
|||
|
|
|||
|
<a id="2757" class="Keyword">record</a> <a id="MonoidMorphisms.IsMonoidHomomorphism"></a><a id="2764" href="Algebra.Morphism.Structures.html#2764" class="Record">IsMonoidHomomorphism</a> <a id="2785" class="Symbol">(</a><a id="2786" href="Algebra.Morphism.Structures.html#2786" class="Bound Operator">⟦_⟧</a> <a id="2790" class="Symbol">:</a> <a id="2792" href="Algebra.Morphism.Structures.html#2496" class="Function">A</a> <a id="2794" class="Symbol">→</a> <a id="2796" href="Algebra.Morphism.Structures.html#2574" class="Field">B</a><a id="2797" class="Symbol">)</a> <a id="2799" class="Symbol">:</a> <a id="2801" href="Agda.Primitive.html#320" class="Primitive">Set</a> <a id="2805" class="Symbol">(</a><a id="2806" href="Algebra.Morphism.Structures.html#2420" class="Bound">a</a> <a id="2808" href="Agda.Primitive.html#804" class="Primitive Operator">⊔</a> <a id="2810" href="Algebra.Morphism.Structures.html#2422" class="Bound">ℓ₁</a> <a id="2813" href="Agda.Primitive.html#804" class="Primitive Operator">⊔</a> <a id="2815" href="Algebra.Morphism.Structures.html#2444" class="Bound">ℓ₂</a><a id="2817" class="Symbol">)</a> <a id="2819" class="Keyword">where</a>
|
|||
|
<a id="2829" class="Keyword">field</a>
|
|||
|
<a id="MonoidMorphisms.IsMonoidHomomorphism.isMagmaHomomorphism"></a><a id="2841" href="Algebra.Morphism.Structures.html#2841" class="Field">isMagmaHomomorphism</a> <a id="2861" class="Symbol">:</a> <a id="2863" href="Algebra.Morphism.Structures.html#1112" class="Record">IsMagmaHomomorphism</a> <a id="2883" href="Algebra.Morphism.Structures.html#2786" class="Bound Operator">⟦_⟧</a>
|
|||
|
<a id="MonoidMorphisms.IsMonoidHomomorphism.ε-homo"></a><a id="2893" href="Algebra.Morphism.Structures.html#2893" class="Field">ε-homo</a> <a id="2913" class="Symbol">:</a> <a id="2915" href="Algebra.Morphism.Definitions.html#680" class="Function">Homomorphic₀</a> <a id="2928" href="Algebra.Morphism.Structures.html#2786" class="Bound Operator">⟦_⟧</a> <a id="2932" href="Algebra.Morphism.Structures.html#2529" class="Function">ε₁</a> <a id="2935" href="Algebra.Morphism.Structures.html#2607" class="Field">ε₂</a>
|
|||
|
|
|||
|
<a id="2943" class="Keyword">open</a> <a id="2948" href="Algebra.Morphism.Structures.html#1112" class="Module">IsMagmaHomomorphism</a> <a id="2968" href="Algebra.Morphism.Structures.html#2841" class="Field">isMagmaHomomorphism</a> <a id="2988" class="Keyword">public</a>
|
|||
|
|
|||
|
<a id="2998" class="Keyword">record</a> <a id="MonoidMorphisms.IsMonoidMonomorphism"></a><a id="3005" href="Algebra.Morphism.Structures.html#3005" class="Record">IsMonoidMonomorphism</a> <a id="3026" class="Symbol">(</a><a id="3027" href="Algebra.Morphism.Structures.html#3027" class="Bound Operator">⟦_⟧</a> <a id="3031" class="Symbol">:</a> <a id="3033" href="Algebra.Morphism.Structures.html#2496" class="Function">A</a> <a id="3035" class="Symbol">→</a> <a id="3037" href="Algebra.Morphism.Structures.html#2574" class="Field">B</a><a id="3038" class="Symbol">)</a> <a id="3040" class="Symbol">:</a> <a id="3042" href="Agda.Primitive.html#320" class="Primitive">Set</a> <a id="3046" class="Symbol">(</a><a id="3047" href="Algebra.Morphism.Structures.html#2420" class="Bound">a</a> <a id="3049" href="Agda.Primitive.html#804" class="Primitive Operator">⊔</a> <a id="3051" href="Algebra.Morphism.Structures.html#2422" class="Bound">ℓ₁</a> <a id="3054" href="Agda.Primitive.html#804" class="Primitive Operator">⊔</a> <a id="3056" href="Algebra.Morphism.Structures.html#2444" class="Bound">ℓ₂</a><a id="3058" class="Symbol">)</a> <a id="3060" class="Keyword">where</a>
|
|||
|
<a id="3070" class="Keyword">field</a>
|
|||
|
<a id="MonoidMorphisms.IsMonoidMonomorphism.isMonoidHomomorphism"></a><a id="3082" href="Algebra.Morphism.Structures.html#3082" class="Field">isMonoidHomomorphism</a> <a id="3103" class="Symbol">:</a> <a id="3105" href="Algebra.Morphism.Structures.html#2764" class="Record">IsMonoidHomomorphism</a> <a id="3126" href="Algebra.Morphism.Structures.html#3027" class="Bound Operator">⟦_⟧</a>
|
|||
|
<a id="MonoidMorphisms.IsMonoidMonomorphism.injective"></a><a id="3136" href="Algebra.Morphism.Structures.html#3136" class="Field">injective</a> <a id="3157" class="Symbol">:</a> <a id="3159" href="Function.Definitions.html#898" class="Function">Injective</a> <a id="3169" href="Algebra.Morphism.Structures.html#3027" class="Bound Operator">⟦_⟧</a>
|
|||
|
|
|||
|
<a id="3178" class="Keyword">open</a> <a id="3183" href="Algebra.Morphism.Structures.html#2764" class="Module">IsMonoidHomomorphism</a> <a id="3204" href="Algebra.Morphism.Structures.html#3082" class="Field">isMonoidHomomorphism</a> <a id="3225" class="Keyword">public</a>
|
|||
|
|
|||
|
<a id="MonoidMorphisms.IsMonoidMonomorphism.isMagmaMonomorphism"></a><a id="3237" href="Algebra.Morphism.Structures.html#3237" class="Function">isMagmaMonomorphism</a> <a id="3257" class="Symbol">:</a> <a id="3259" href="Algebra.Morphism.Structures.html#1388" class="Record">IsMagmaMonomorphism</a> <a id="3279" href="Algebra.Morphism.Structures.html#3027" class="Bound Operator">⟦_⟧</a>
|
|||
|
<a id="3287" href="Algebra.Morphism.Structures.html#3237" class="Function">isMagmaMonomorphism</a> <a id="3307" class="Symbol">=</a> <a id="3309" class="Keyword">record</a>
|
|||
|
<a id="3322" class="Symbol">{</a> <a id="3324" href="Algebra.Morphism.Structures.html#1464" class="Field">isMagmaHomomorphism</a> <a id="3344" class="Symbol">=</a> <a id="3346" href="Algebra.Morphism.Structures.html#2841" class="Function">isMagmaHomomorphism</a>
|
|||
|
<a id="3372" class="Symbol">;</a> <a id="3374" href="Algebra.Morphism.Structures.html#1516" class="Field">injective</a> <a id="3394" class="Symbol">=</a> <a id="3396" href="Algebra.Morphism.Structures.html#3136" class="Field">injective</a>
|
|||
|
<a id="3412" class="Symbol">}</a>
|
|||
|
|
|||
|
<a id="3419" class="Keyword">open</a> <a id="3424" href="Algebra.Morphism.Structures.html#1388" class="Module">IsMagmaMonomorphism</a> <a id="3444" href="Algebra.Morphism.Structures.html#3237" class="Function">isMagmaMonomorphism</a> <a id="3464" class="Keyword">public</a>
|
|||
|
<a id="3477" class="Keyword">using</a> <a id="3483" class="Symbol">(</a><a id="3484" href="Algebra.Morphism.Structures.html#1614" class="Function">isRelMonomorphism</a><a id="3501" class="Symbol">)</a>
|
|||
|
|
|||
|
|
|||
|
<a id="3507" class="Keyword">record</a> <a id="MonoidMorphisms.IsMonoidIsomorphism"></a><a id="3514" href="Algebra.Morphism.Structures.html#3514" class="Record">IsMonoidIsomorphism</a> <a id="3534" class="Symbol">(</a><a id="3535" href="Algebra.Morphism.Structures.html#3535" class="Bound Operator">⟦_⟧</a> <a id="3539" class="Symbol">:</a> <a id="3541" href="Algebra.Morphism.Structures.html#2496" class="Function">A</a> <a id="3543" class="Symbol">→</a> <a id="3545" href="Algebra.Morphism.Structures.html#2574" class="Field">B</a><a id="3546" class="Symbol">)</a> <a id="3548" class="Symbol">:</a> <a id="3550" href="Agda.Primitive.html#320" class="Primitive">Set</a> <a id="3554" class="Symbol">(</a><a id="3555" href="Algebra.Morphism.Structures.html#2420" class="Bound">a</a> <a id="3557" href="Agda.Primitive.html#804" class="Primitive Operator">⊔</a> <a id="3559" href="Algebra.Morphism.Structures.html#2442" class="Bound">b</a> <a id="3561" href="Agda.Primitive.html#804" class="Primitive Operator">⊔</a> <a id="3563" href="Algebra.Morphism.Structures.html#2422" class="Bound">ℓ₁</a> <a id="3566" href="Agda.Primitive.html#804" class="Primitive Operator">⊔</a> <a id="3568" href="Algebra.Morphism.Structures.html#2444" class="Bound">ℓ₂</a><a id="3570" class="Symbol">)</a> <a id="3572" class="Keyword">where</a>
|
|||
|
<a id="3582" class="Keyword">field</a>
|
|||
|
<a id="MonoidMorphisms.IsMonoidIsomorphism.isMonoidMonomorphism"></a><a id="3594" href="Algebra.Morphism.Structures.html#3594" class="Field">isMonoidMonomorphism</a> <a id="3615" class="Symbol">:</a> <a id="3617" href="Algebra.Morphism.Structures.html#3005" class="Record">IsMonoidMonomorphism</a> <a id="3638" href="Algebra.Morphism.Structures.html#3535" class="Bound Operator">⟦_⟧</a>
|
|||
|
<a id="MonoidMorphisms.IsMonoidIsomorphism.surjective"></a><a id="3648" href="Algebra.Morphism.Structures.html#3648" class="Field">surjective</a> <a id="3669" class="Symbol">:</a> <a id="3671" href="Function.Definitions.Core2.html#672" class="Function">Surjective</a> <a id="3682" href="Algebra.Morphism.Structures.html#3535" class="Bound Operator">⟦_⟧</a>
|
|||
|
|
|||
|
<a id="3691" class="Keyword">open</a> <a id="3696" href="Algebra.Morphism.Structures.html#3005" class="Module">IsMonoidMonomorphism</a> <a id="3717" href="Algebra.Morphism.Structures.html#3594" class="Field">isMonoidMonomorphism</a> <a id="3738" class="Keyword">public</a>
|
|||
|
|
|||
|
<a id="MonoidMorphisms.IsMonoidIsomorphism.isMagmaIsomorphism"></a><a id="3750" href="Algebra.Morphism.Structures.html#3750" class="Function">isMagmaIsomorphism</a> <a id="3769" class="Symbol">:</a> <a id="3771" href="Algebra.Morphism.Structures.html#1794" class="Record">IsMagmaIsomorphism</a> <a id="3790" href="Algebra.Morphism.Structures.html#3535" class="Bound Operator">⟦_⟧</a>
|
|||
|
<a id="3798" href="Algebra.Morphism.Structures.html#3750" class="Function">isMagmaIsomorphism</a> <a id="3817" class="Symbol">=</a> <a id="3819" class="Keyword">record</a>
|
|||
|
<a id="3832" class="Symbol">{</a> <a id="3834" href="Algebra.Morphism.Structures.html#1873" class="Field">isMagmaMonomorphism</a> <a id="3854" class="Symbol">=</a> <a id="3856" href="Algebra.Morphism.Structures.html#3237" class="Function">isMagmaMonomorphism</a>
|
|||
|
<a id="3882" class="Symbol">;</a> <a id="3884" href="Algebra.Morphism.Structures.html#1925" class="Field">surjective</a> <a id="3904" class="Symbol">=</a> <a id="3906" href="Algebra.Morphism.Structures.html#3648" class="Field">surjective</a>
|
|||
|
<a id="3923" class="Symbol">}</a>
|
|||
|
|
|||
|
<a id="3930" class="Keyword">open</a> <a id="3935" href="Algebra.Morphism.Structures.html#1794" class="Module">IsMagmaIsomorphism</a> <a id="3954" href="Algebra.Morphism.Structures.html#3750" class="Function">isMagmaIsomorphism</a> <a id="3973" class="Keyword">public</a>
|
|||
|
<a id="3986" class="Keyword">using</a> <a id="3992" class="Symbol">(</a><a id="3993" href="Algebra.Morphism.Structures.html#2024" class="Function">isRelIsomorphism</a><a id="4009" class="Symbol">)</a>
|
|||
|
|
|||
|
|
|||
|
<a id="4013" class="Comment">------------------------------------------------------------------------</a>
|
|||
|
<a id="4086" class="Comment">-- Morphisms over group-like structures</a>
|
|||
|
<a id="4126" class="Comment">------------------------------------------------------------------------</a>
|
|||
|
|
|||
|
<a id="4200" class="Keyword">module</a> <a id="GroupMorphisms"></a><a id="4207" href="Algebra.Morphism.Structures.html#4207" class="Module">GroupMorphisms</a> <a id="4222" class="Symbol">(</a><a id="4223" href="Algebra.Morphism.Structures.html#4223" class="Bound">G₁</a> <a id="4226" class="Symbol">:</a> <a id="4228" href="Algebra.Bundles.html#6932" class="Record">RawGroup</a> <a id="4237" href="Algebra.Morphism.Structures.html#615" class="Generalizable">a</a> <a id="4239" href="Algebra.Morphism.Structures.html#619" class="Generalizable">ℓ₁</a><a id="4241" class="Symbol">)</a> <a id="4243" class="Symbol">(</a><a id="4244" href="Algebra.Morphism.Structures.html#4244" class="Bound">G₂</a> <a id="4247" class="Symbol">:</a> <a id="4249" href="Algebra.Bundles.html#6932" class="Record">RawGroup</a> <a id="4258" href="Algebra.Morphism.Structures.html#617" class="Generalizable">b</a> <a id="4260" href="Algebra.Morphism.Structures.html#622" class="Generalizable">ℓ₂</a><a id="4262" class="Symbol">)</a> <a id="4264" class="Keyword">where</a>
|
|||
|
|
|||
|
<a id="4273" class="Keyword">open</a> <a id="4278" href="Algebra.Bundles.html#6932" class="Module">RawGroup</a> <a id="4287" href="Algebra.Morphism.Structures.html#4223" class="Bound">G₁</a> <a id="4290" class="Keyword">renaming</a>
|
|||
|
<a id="4303" class="Symbol">(</a><a id="4304" href="Algebra.Bundles.html#7028" class="Field">Carrier</a> <a id="4312" class="Symbol">to</a> <a id="4315" class="Field">A</a><a id="4316" class="Symbol">;</a> <a id="4318" href="Algebra.Bundles.html#7048" class="Field Operator">_≈_</a> <a id="4322" class="Symbol">to</a> <a id="4325" class="Field Operator">_≈₁_</a><a id="4329" class="Symbol">;</a> <a id="4331" href="Algebra.Bundles.html#7076" class="Field Operator">_∙_</a> <a id="4335" class="Symbol">to</a> <a id="4338" class="Field Operator">_∙_</a><a id="4341" class="Symbol">;</a> <a id="4343" href="Algebra.Bundles.html#7124" class="Field Operator">_⁻¹</a> <a id="4347" class="Symbol">to</a> <a id="4350" class="Field Operator">_⁻¹₁</a><a id="4354" class="Symbol">;</a> <a id="4356" href="Algebra.Bundles.html#7102" class="Field">ε</a> <a id="4358" class="Symbol">to</a> <a id="4361" class="Field">ε₁</a><a id="4363" class="Symbol">)</a>
|
|||
|
<a id="4367" class="Keyword">open</a> <a id="4372" href="Algebra.Bundles.html#6932" class="Module">RawGroup</a> <a id="4381" href="Algebra.Morphism.Structures.html#4244" class="Bound">G₂</a> <a id="4384" class="Keyword">renaming</a>
|
|||
|
<a id="4397" class="Symbol">(</a><a id="4398" href="Algebra.Bundles.html#7028" class="Field">Carrier</a> <a id="4406" class="Symbol">to</a> <a id="4409" class="Field">B</a><a id="4410" class="Symbol">;</a> <a id="4412" href="Algebra.Bundles.html#7048" class="Field Operator">_≈_</a> <a id="4416" class="Symbol">to</a> <a id="4419" class="Field Operator">_≈₂_</a><a id="4423" class="Symbol">;</a> <a id="4425" href="Algebra.Bundles.html#7076" class="Field Operator">_∙_</a> <a id="4429" class="Symbol">to</a> <a id="4432" class="Field Operator">_◦_</a><a id="4435" class="Symbol">;</a> <a id="4437" href="Algebra.Bundles.html#7124" class="Field Operator">_⁻¹</a> <a id="4441" class="Symbol">to</a> <a id="4444" class="Field Operator">_⁻¹₂</a><a id="4448" class="Symbol">;</a> <a id="4450" href="Algebra.Bundles.html#7102" class="Field">ε</a> <a id="4452" class="Symbol">to</a> <a id="4455" class="Field">ε₂</a><a id="4457" class="Symbol">)</a>
|
|||
|
<a id="4461" class="Keyword">open</a> <a id="4466" href="Algebra.Morphism.Definitions.html" class="Module">MorphismDefinitions</a> <a id="4486" href="Algebra.Morphism.Structures.html#4315" class="Function">A</a> <a id="4488" href="Algebra.Morphism.Structures.html#4409" class="Field">B</a> <a id="4490" href="Algebra.Morphism.Structures.html#4419" class="Field Operator">_≈₂_</a>
|
|||
|
<a id="4497" class="Keyword">open</a> <a id="4502" href="Function.Definitions.html" class="Module">FunctionDefinitions</a> <a id="4522" href="Algebra.Morphism.Structures.html#4325" class="Function Operator">_≈₁_</a> <a id="4527" href="Algebra.Morphism.Structures.html#4419" class="Field Operator">_≈₂_</a>
|
|||
|
<a id="4534" class="Keyword">open</a> <a id="4539" href="Algebra.Morphism.Structures.html#828" class="Module">MagmaMorphisms</a> <a id="4554" class="Symbol">(</a><a id="4555" href="Algebra.Bundles.html#4290" class="Function">RawGroup.rawMagma</a> <a id="4573" href="Algebra.Morphism.Structures.html#4223" class="Bound">G₁</a><a id="4575" class="Symbol">)</a> <a id="4577" class="Symbol">(</a><a id="4578" href="Algebra.Bundles.html#4290" class="Function">RawGroup.rawMagma</a> <a id="4596" href="Algebra.Morphism.Structures.html#4244" class="Bound">G₂</a><a id="4598" class="Symbol">)</a>
|
|||
|
<a id="4602" class="Keyword">open</a> <a id="4607" href="Algebra.Morphism.Structures.html#2388" class="Module">MonoidMorphisms</a> <a id="4623" class="Symbol">(</a><a id="4624" href="Algebra.Bundles.html#7149" class="Function">RawGroup.rawMonoid</a> <a id="4643" href="Algebra.Morphism.Structures.html#4223" class="Bound">G₁</a><a id="4645" class="Symbol">)</a> <a id="4647" class="Symbol">(</a><a id="4648" href="Algebra.Bundles.html#7149" class="Function">RawGroup.rawMonoid</a> <a id="4667" href="Algebra.Morphism.Structures.html#4244" class="Bound">G₂</a><a id="4669" class="Symbol">)</a>
|
|||
|
|
|||
|
<a id="4674" class="Keyword">record</a> <a id="GroupMorphisms.IsGroupHomomorphism"></a><a id="4681" href="Algebra.Morphism.Structures.html#4681" class="Record">IsGroupHomomorphism</a> <a id="4701" class="Symbol">(</a><a id="4702" href="Algebra.Morphism.Structures.html#4702" class="Bound Operator">⟦_⟧</a> <a id="4706" class="Symbol">:</a> <a id="4708" href="Algebra.Morphism.Structures.html#4315" class="Function">A</a> <a id="4710" class="Symbol">→</a> <a id="4712" href="Algebra.Morphism.Structures.html#4409" class="Field">B</a><a id="4713" class="Symbol">)</a> <a id="4715" class="Symbol">:</a> <a id="4717" href="Agda.Primitive.html#320" class="Primitive">Set</a> <a id="4721" class="Symbol">(</a><a id="4722" href="Algebra.Morphism.Structures.html#4237" class="Bound">a</a> <a id="4724" href="Agda.Primitive.html#804" class="Primitive Operator">⊔</a> <a id="4726" href="Algebra.Morphism.Structures.html#4239" class="Bound">ℓ₁</a> <a id="4729" href="Agda.Primitive.html#804" class="Primitive Operator">⊔</a> <a id="4731" href="Algebra.Morphism.Structures.html#4260" class="Bound">ℓ₂</a><a id="4733" class="Symbol">)</a> <a id="4735" class="Keyword">where</a>
|
|||
|
<a id="4745" class="Keyword">field</a>
|
|||
|
<a id="GroupMorphisms.IsGroupHomomorphism.isMonoidHomomorphism"></a><a id="4757" href="Algebra.Morphism.Structures.html#4757" class="Field">isMonoidHomomorphism</a> <a id="4778" class="Symbol">:</a> <a id="4780" href="Algebra.Morphism.Structures.html#2764" class="Record">IsMonoidHomomorphism</a> <a id="4801" href="Algebra.Morphism.Structures.html#4702" class="Bound Operator">⟦_⟧</a>
|
|||
|
<a id="GroupMorphisms.IsGroupHomomorphism.⁻¹-homo"></a><a id="4811" href="Algebra.Morphism.Structures.html#4811" class="Field">⁻¹-homo</a> <a id="4832" class="Symbol">:</a> <a id="4834" href="Algebra.Morphism.Definitions.html#753" class="Function">Homomorphic₁</a> <a id="4847" href="Algebra.Morphism.Structures.html#4702" class="Bound Operator">⟦_⟧</a> <a id="4851" href="Algebra.Morphism.Structures.html#4350" class="Function Operator">_⁻¹₁</a> <a id="4856" href="Algebra.Morphism.Structures.html#4444" class="Field Operator">_⁻¹₂</a>
|
|||
|
|
|||
|
<a id="4866" class="Keyword">open</a> <a id="4871" href="Algebra.Morphism.Structures.html#2764" class="Module">IsMonoidHomomorphism</a> <a id="4892" href="Algebra.Morphism.Structures.html#4757" class="Field">isMonoidHomomorphism</a> <a id="4913" class="Keyword">public</a>
|
|||
|
|
|||
|
<a id="4923" class="Keyword">record</a> <a id="GroupMorphisms.IsGroupMonomorphism"></a><a id="4930" href="Algebra.Morphism.Structures.html#4930" class="Record">IsGroupMonomorphism</a> <a id="4950" class="Symbol">(</a><a id="4951" href="Algebra.Morphism.Structures.html#4951" class="Bound Operator">⟦_⟧</a> <a id="4955" class="Symbol">:</a> <a id="4957" href="Algebra.Morphism.Structures.html#4315" class="Function">A</a> <a id="4959" class="Symbol">→</a> <a id="4961" href="Algebra.Morphism.Structures.html#4409" class="Field">B</a><a id="4962" class="Symbol">)</a> <a id="4964" class="Symbol">:</a> <a id="4966" href="Agda.Primitive.html#320" class="Primitive">Set</a> <a id="4970" class="Symbol">(</a><a id="4971" href="Algebra.Morphism.Structures.html#4237" class="Bound">a</a> <a id="4973" href="Agda.Primitive.html#804" class="Primitive Operator">⊔</a> <a id="4975" href="Algebra.Morphism.Structures.html#4239" class="Bound">ℓ₁</a> <a id="4978" href="Agda.Primitive.html#804" class="Primitive Operator">⊔</a> <a id="4980" href="Algebra.Morphism.Structures.html#4260" class="Bound">ℓ₂</a><a id="4982" class="Symbol">)</a> <a id="4984" class="Keyword">where</a>
|
|||
|
<a id="4994" class="Keyword">field</a>
|
|||
|
<a id="GroupMorphisms.IsGroupMonomorphism.isGroupHomomorphism"></a><a id="5006" href="Algebra.Morphism.Structures.html#5006" class="Field">isGroupHomomorphism</a> <a id="5026" class="Symbol">:</a> <a id="5028" href="Algebra.Morphism.Structures.html#4681" class="Record">IsGroupHomomorphism</a> <a id="5048" href="Algebra.Morphism.Structures.html#4951" class="Bound Operator">⟦_⟧</a>
|
|||
|
<a id="GroupMorphisms.IsGroupMonomorphism.injective"></a><a id="5058" href="Algebra.Morphism.Structures.html#5058" class="Field">injective</a> <a id="5078" class="Symbol">:</a> <a id="5080" href="Function.Definitions.html#898" class="Function">Injective</a> <a id="5090" href="Algebra.Morphism.Structures.html#4951" class="Bound Operator">⟦_⟧</a>
|
|||
|
|
|||
|
<a id="5099" class="Keyword">open</a> <a id="5104" href="Algebra.Morphism.Structures.html#4681" class="Module">IsGroupHomomorphism</a> <a id="5124" href="Algebra.Morphism.Structures.html#5006" class="Field">isGroupHomomorphism</a>
|
|||
|
<a id="5150" class="Keyword">renaming</a> <a id="5159" class="Symbol">(</a><a id="5160" href="Algebra.Morphism.Structures.html#1246" class="Function">homo</a> <a id="5165" class="Symbol">to</a> <a id="5168" class="Function">∙-homo</a><a id="5174" class="Symbol">)</a> <a id="5176" class="Keyword">public</a>
|
|||
|
|
|||
|
<a id="GroupMorphisms.IsGroupMonomorphism.isMonoidMonomorphism"></a><a id="5188" href="Algebra.Morphism.Structures.html#5188" class="Function">isMonoidMonomorphism</a> <a id="5209" class="Symbol">:</a> <a id="5211" href="Algebra.Morphism.Structures.html#3005" class="Record">IsMonoidMonomorphism</a> <a id="5232" href="Algebra.Morphism.Structures.html#4951" class="Bound Operator">⟦_⟧</a>
|
|||
|
<a id="5240" href="Algebra.Morphism.Structures.html#5188" class="Function">isMonoidMonomorphism</a> <a id="5261" class="Symbol">=</a> <a id="5263" class="Keyword">record</a>
|
|||
|
<a id="5276" class="Symbol">{</a> <a id="5278" href="Algebra.Morphism.Structures.html#3082" class="Field">isMonoidHomomorphism</a> <a id="5299" class="Symbol">=</a> <a id="5301" href="Algebra.Morphism.Structures.html#4757" class="Function">isMonoidHomomorphism</a>
|
|||
|
<a id="5328" class="Symbol">;</a> <a id="5330" href="Algebra.Morphism.Structures.html#3136" class="Field">injective</a> <a id="5351" class="Symbol">=</a> <a id="5353" href="Algebra.Morphism.Structures.html#5058" class="Field">injective</a>
|
|||
|
<a id="5369" class="Symbol">}</a>
|
|||
|
|
|||
|
<a id="5376" class="Keyword">open</a> <a id="5381" href="Algebra.Morphism.Structures.html#3005" class="Module">IsMonoidMonomorphism</a> <a id="5402" href="Algebra.Morphism.Structures.html#5188" class="Function">isMonoidMonomorphism</a> <a id="5423" class="Keyword">public</a>
|
|||
|
<a id="5436" class="Keyword">using</a> <a id="5442" class="Symbol">(</a><a id="5443" href="Algebra.Morphism.Structures.html#1614" class="Function">isRelMonomorphism</a><a id="5460" class="Symbol">)</a>
|
|||
|
|
|||
|
<a id="5465" class="Keyword">record</a> <a id="GroupMorphisms.IsGroupIsomorphism"></a><a id="5472" href="Algebra.Morphism.Structures.html#5472" class="Record">IsGroupIsomorphism</a> <a id="5491" class="Symbol">(</a><a id="5492" href="Algebra.Morphism.Structures.html#5492" class="Bound Operator">⟦_⟧</a> <a id="5496" class="Symbol">:</a> <a id="5498" href="Algebra.Morphism.Structures.html#4315" class="Function">A</a> <a id="5500" class="Symbol">→</a> <a id="5502" href="Algebra.Morphism.Structures.html#4409" class="Field">B</a><a id="5503" class="Symbol">)</a> <a id="5505" class="Symbol">:</a> <a id="5507" href="Agda.Primitive.html#320" class="Primitive">Set</a> <a id="5511" class="Symbol">(</a><a id="5512" href="Algebra.Morphism.Structures.html#4237" class="Bound">a</a> <a id="5514" href="Agda.Primitive.html#804" class="Primitive Operator">⊔</a> <a id="5516" href="Algebra.Morphism.Structures.html#4258" class="Bound">b</a> <a id="5518" href="Agda.Primitive.html#804" class="Primitive Operator">⊔</a> <a id="5520" href="Algebra.Morphism.Structures.html#4239" class="Bound">ℓ₁</a> <a id="5523" href="Agda.Primitive.html#804" class="Primitive Operator">⊔</a> <a id="5525" href="Algebra.Morphism.Structures.html#4260" class="Bound">ℓ₂</a><a id="5527" class="Symbol">)</a> <a id="5529" class="Keyword">where</a>
|
|||
|
<a id="5539" class="Keyword">field</a>
|
|||
|
<a id="GroupMorphisms.IsGroupIsomorphism.isGroupMonomorphism"></a><a id="5551" href="Algebra.Morphism.Structures.html#5551" class="Field">isGroupMonomorphism</a> <a id="5571" class="Symbol">:</a> <a id="5573" href="Algebra.Morphism.Structures.html#4930" class="Record">IsGroupMonomorphism</a> <a id="5593" href="Algebra.Morphism.Structures.html#5492" class="Bound Operator">⟦_⟧</a>
|
|||
|
<a id="GroupMorphisms.IsGroupIsomorphism.surjective"></a><a id="5603" href="Algebra.Morphism.Structures.html#5603" class="Field">surjective</a> <a id="5623" class="Symbol">:</a> <a id="5625" href="Function.Definitions.Core2.html#672" class="Function">Surjective</a> <a id="5636" href="Algebra.Morphism.Structures.html#5492" class="Bound Operator">⟦_⟧</a>
|
|||
|
|
|||
|
<a id="5645" class="Keyword">open</a> <a id="5650" href="Algebra.Morphism.Structures.html#4930" class="Module">IsGroupMonomorphism</a> <a id="5670" href="Algebra.Morphism.Structures.html#5551" class="Field">isGroupMonomorphism</a> <a id="5690" class="Keyword">public</a>
|
|||
|
|
|||
|
<a id="GroupMorphisms.IsGroupIsomorphism.isMonoidIsomorphism"></a><a id="5702" href="Algebra.Morphism.Structures.html#5702" class="Function">isMonoidIsomorphism</a> <a id="5722" class="Symbol">:</a> <a id="5724" href="Algebra.Morphism.Structures.html#3514" class="Record">IsMonoidIsomorphism</a> <a id="5744" href="Algebra.Morphism.Structures.html#5492" class="Bound Operator">⟦_⟧</a>
|
|||
|
<a id="5752" href="Algebra.Morphism.Structures.html#5702" class="Function">isMonoidIsomorphism</a> <a id="5772" class="Symbol">=</a> <a id="5774" class="Keyword">record</a>
|
|||
|
<a id="5787" class="Symbol">{</a> <a id="5789" href="Algebra.Morphism.Structures.html#3594" class="Field">isMonoidMonomorphism</a> <a id="5810" class="Symbol">=</a> <a id="5812" href="Algebra.Morphism.Structures.html#5188" class="Function">isMonoidMonomorphism</a>
|
|||
|
<a id="5839" class="Symbol">;</a> <a id="5841" href="Algebra.Morphism.Structures.html#3648" class="Field">surjective</a> <a id="5862" class="Symbol">=</a> <a id="5864" href="Algebra.Morphism.Structures.html#5603" class="Field">surjective</a>
|
|||
|
<a id="5881" class="Symbol">}</a>
|
|||
|
|
|||
|
<a id="5888" class="Keyword">open</a> <a id="5893" href="Algebra.Morphism.Structures.html#3514" class="Module">IsMonoidIsomorphism</a> <a id="5913" href="Algebra.Morphism.Structures.html#5702" class="Function">isMonoidIsomorphism</a> <a id="5933" class="Keyword">public</a>
|
|||
|
<a id="5946" class="Keyword">using</a> <a id="5952" class="Symbol">(</a><a id="5953" href="Algebra.Morphism.Structures.html#2024" class="Function">isRelIsomorphism</a><a id="5969" class="Symbol">)</a>
|
|||
|
|
|||
|
|
|||
|
<a id="5973" class="Comment">------------------------------------------------------------------------</a>
|
|||
|
<a id="6046" class="Comment">-- Morphisms over near-semiring-like structures</a>
|
|||
|
<a id="6094" class="Comment">------------------------------------------------------------------------</a>
|
|||
|
|
|||
|
<a id="6168" class="Keyword">module</a> <a id="NearSemiringMorphisms"></a><a id="6175" href="Algebra.Morphism.Structures.html#6175" class="Module">NearSemiringMorphisms</a> <a id="6197" class="Symbol">(</a><a id="6198" href="Algebra.Morphism.Structures.html#6198" class="Bound">R₁</a> <a id="6201" class="Symbol">:</a> <a id="6203" href="Algebra.Bundles.html#10467" class="Record">RawNearSemiring</a> <a id="6219" href="Algebra.Morphism.Structures.html#615" class="Generalizable">a</a> <a id="6221" href="Algebra.Morphism.Structures.html#619" class="Generalizable">ℓ₁</a><a id="6223" class="Symbol">)</a> <a id="6225" class="Symbol">(</a><a id="6226" href="Algebra.Morphism.Structures.html#6226" class="Bound">R₂</a> <a id="6229" class="Symbol">:</a> <a id="6231" href="Algebra.Bundles.html#10467" class="Record">RawNearSemiring</a> <a id="6247" href="Algebra.Morphism.Structures.html#617" class="Generalizable">b</a> <a id="6249" href="Algebra.Morphism.Structures.html#622" class="Generalizable">ℓ₂</a><a id="6251" class="Symbol">)</a> <a id="6253" class="Keyword">where</a>
|
|||
|
|
|||
|
<a id="6262" class="Keyword">open</a> <a id="6267" href="Algebra.Bundles.html#10467" class="Module">RawNearSemiring</a> <a id="6283" href="Algebra.Morphism.Structures.html#6198" class="Bound">R₁</a> <a id="6286" class="Keyword">renaming</a>
|
|||
|
<a id="6299" class="Symbol">(</a> <a id="6301" href="Algebra.Bundles.html#10570" class="Field">Carrier</a> <a id="6309" class="Symbol">to</a> <a id="6312" class="Field">A</a><a id="6313" class="Symbol">;</a> <a id="6315" href="Algebra.Bundles.html#10590" class="Field Operator">_≈_</a> <a id="6319" class="Symbol">to</a> <a id="6322" class="Field Operator">_≈₁_</a>
|
|||
|
<a id="6331" class="Symbol">;</a> <a id="6333" href="Algebra.Bundles.html#10691" class="Function">+-rawMonoid</a> <a id="6345" class="Symbol">to</a> <a id="6348" class="Function">+-rawMonoid₁</a>
|
|||
|
<a id="6365" class="Symbol">;</a> <a id="6367" href="Algebra.Bundles.html#10885" class="Function">*-rawMagma</a> <a id="6378" class="Symbol">to</a> <a id="6381" class="Function">*-rawMagma₁</a><a id="6392" class="Symbol">)</a>
|
|||
|
|
|||
|
<a id="6397" class="Keyword">open</a> <a id="6402" href="Algebra.Bundles.html#10467" class="Module">RawNearSemiring</a> <a id="6418" href="Algebra.Morphism.Structures.html#6226" class="Bound">R₂</a> <a id="6421" class="Keyword">renaming</a>
|
|||
|
<a id="6434" class="Symbol">(</a> <a id="6436" href="Algebra.Bundles.html#10570" class="Field">Carrier</a> <a id="6444" class="Symbol">to</a> <a id="6447" class="Field">B</a><a id="6448" class="Symbol">;</a> <a id="6450" href="Algebra.Bundles.html#10590" class="Field Operator">_≈_</a> <a id="6454" class="Symbol">to</a> <a id="6457" class="Field Operator">_≈₂_</a>
|
|||
|
<a id="6466" class="Symbol">;</a> <a id="6468" href="Algebra.Bundles.html#10691" class="Function">+-rawMonoid</a> <a id="6480" class="Symbol">to</a> <a id="6483" class="Function">+-rawMonoid₂</a>
|
|||
|
<a id="6500" class="Symbol">;</a> <a id="6502" href="Algebra.Bundles.html#10885" class="Function">*-rawMagma</a> <a id="6513" class="Symbol">to</a> <a id="6516" class="Function">*-rawMagma₂</a><a id="6527" class="Symbol">)</a>
|
|||
|
|
|||
|
<a id="6532" class="Keyword">private</a>
|
|||
|
<a id="6544" class="Keyword">module</a> <a id="NearSemiringMorphisms.+"></a><a id="6551" href="Algebra.Morphism.Structures.html#6551" class="Module">+</a> <a id="6553" class="Symbol">=</a> <a id="6555" href="Algebra.Morphism.Structures.html#2388" class="Module">MonoidMorphisms</a> <a id="6571" href="Algebra.Morphism.Structures.html#6348" class="Function">+-rawMonoid₁</a> <a id="6584" href="Algebra.Morphism.Structures.html#6483" class="Function">+-rawMonoid₂</a>
|
|||
|
<a id="6601" class="Keyword">module</a> <a id="NearSemiringMorphisms.*"></a><a id="6608" href="Algebra.Morphism.Structures.html#6608" class="Module">*</a> <a id="6610" class="Symbol">=</a> <a id="6612" href="Algebra.Morphism.Structures.html#828" class="Module">MagmaMorphisms</a> <a id="6627" href="Algebra.Morphism.Structures.html#6381" class="Function">*-rawMagma₁</a> <a id="6639" href="Algebra.Morphism.Structures.html#6516" class="Function">*-rawMagma₂</a>
|
|||
|
|
|||
|
<a id="6654" class="Keyword">open</a> <a id="6659" href="Algebra.Morphism.Definitions.html" class="Module">MorphismDefinitions</a> <a id="6679" href="Algebra.Morphism.Structures.html#6312" class="Function">A</a> <a id="6681" href="Algebra.Morphism.Structures.html#6447" class="Field">B</a> <a id="6683" href="Algebra.Morphism.Structures.html#6457" class="Field Operator">_≈₂_</a>
|
|||
|
<a id="6690" class="Keyword">open</a> <a id="6695" href="Function.Definitions.html" class="Module">FunctionDefinitions</a> <a id="6715" href="Algebra.Morphism.Structures.html#6322" class="Function Operator">_≈₁_</a> <a id="6720" href="Algebra.Morphism.Structures.html#6457" class="Field Operator">_≈₂_</a>
|
|||
|
|
|||
|
<a id="6728" class="Keyword">record</a> <a id="NearSemiringMorphisms.IsNearSemiringHomomorphism"></a><a id="6735" href="Algebra.Morphism.Structures.html#6735" class="Record">IsNearSemiringHomomorphism</a> <a id="6762" class="Symbol">(</a><a id="6763" href="Algebra.Morphism.Structures.html#6763" class="Bound Operator">⟦_⟧</a> <a id="6767" class="Symbol">:</a> <a id="6769" href="Algebra.Morphism.Structures.html#6312" class="Function">A</a> <a id="6771" class="Symbol">→</a> <a id="6773" href="Algebra.Morphism.Structures.html#6447" class="Field">B</a><a id="6774" class="Symbol">)</a> <a id="6776" class="Symbol">:</a> <a id="6778" href="Agda.Primitive.html#320" class="Primitive">Set</a> <a id="6782" class="Symbol">(</a><a id="6783" href="Algebra.Morphism.Structures.html#6219" class="Bound">a</a> <a id="6785" href="Agda.Primitive.html#804" class="Primitive Operator">⊔</a> <a id="6787" href="Algebra.Morphism.Structures.html#6221" class="Bound">ℓ₁</a> <a id="6790" href="Agda.Primitive.html#804" class="Primitive Operator">⊔</a> <a id="6792" href="Algebra.Morphism.Structures.html#6249" class="Bound">ℓ₂</a><a id="6794" class="Symbol">)</a> <a id="6796" class="Keyword">where</a>
|
|||
|
<a id="6806" class="Keyword">field</a>
|
|||
|
<a id="NearSemiringMorphisms.IsNearSemiringHomomorphism.+-isMonoidHomomorphism"></a><a id="6818" href="Algebra.Morphism.Structures.html#6818" class="Field">+-isMonoidHomomorphism</a> <a id="6841" class="Symbol">:</a> <a id="6843" href="Algebra.Morphism.Structures.html#2764" class="Record">+.IsMonoidHomomorphism</a> <a id="6866" href="Algebra.Morphism.Structures.html#6763" class="Bound Operator">⟦_⟧</a>
|
|||
|
<a id="NearSemiringMorphisms.IsNearSemiringHomomorphism.*-isMagmaHomomorphism"></a><a id="6876" href="Algebra.Morphism.Structures.html#6876" class="Field">*-isMagmaHomomorphism</a> <a id="6899" class="Symbol">:</a> <a id="6901" href="Algebra.Morphism.Structures.html#1112" class="Record">*.IsMagmaHomomorphism</a> <a id="6923" href="Algebra.Morphism.Structures.html#6763" class="Bound Operator">⟦_⟧</a>
|
|||
|
|
|||
|
<a id="6932" class="Keyword">open</a> <a id="6937" href="Algebra.Morphism.Structures.html#2764" class="Module">+.IsMonoidHomomorphism</a> <a id="6960" href="Algebra.Morphism.Structures.html#6818" class="Field">+-isMonoidHomomorphism</a> <a id="6983" class="Keyword">renaming</a>
|
|||
|
<a id="6998" class="Symbol">(</a><a id="6999" href="Algebra.Morphism.Structures.html#1246" class="Function">homo</a> <a id="7004" class="Symbol">to</a> <a id="7007" class="Function">+-homo</a><a id="7013" class="Symbol">;</a> <a id="7015" href="Algebra.Morphism.Structures.html#2893" class="Field">ε-homo</a> <a id="7022" class="Symbol">to</a> <a id="7025" class="Field">0#-homo</a><a id="7032" class="Symbol">)</a> <a id="7034" class="Keyword">public</a>
|
|||
|
|
|||
|
<a id="7046" class="Keyword">open</a> <a id="7051" href="Algebra.Morphism.Structures.html#1112" class="Module">*.IsMagmaHomomorphism</a> <a id="7073" href="Algebra.Morphism.Structures.html#6876" class="Field">*-isMagmaHomomorphism</a> <a id="7095" class="Keyword">renaming</a>
|
|||
|
<a id="7110" class="Symbol">(</a><a id="7111" href="Algebra.Morphism.Structures.html#1246" class="Field">homo</a> <a id="7116" class="Symbol">to</a> <a id="7119" class="Field">*-homo</a><a id="7125" class="Symbol">)</a> <a id="7127" class="Keyword">public</a>
|
|||
|
|
|||
|
<a id="7137" class="Keyword">record</a> <a id="NearSemiringMorphisms.IsNearSemiringMonomorphism"></a><a id="7144" href="Algebra.Morphism.Structures.html#7144" class="Record">IsNearSemiringMonomorphism</a> <a id="7171" class="Symbol">(</a><a id="7172" href="Algebra.Morphism.Structures.html#7172" class="Bound Operator">⟦_⟧</a> <a id="7176" class="Symbol">:</a> <a id="7178" href="Algebra.Morphism.Structures.html#6312" class="Function">A</a> <a id="7180" class="Symbol">→</a> <a id="7182" href="Algebra.Morphism.Structures.html#6447" class="Field">B</a><a id="7183" class="Symbol">)</a> <a id="7185" class="Symbol">:</a> <a id="7187" href="Agda.Primitive.html#320" class="Primitive">Set</a> <a id="7191" class="Symbol">(</a><a id="7192" href="Algebra.Morphism.Structures.html#6219" class="Bound">a</a> <a id="7194" href="Agda.Primitive.html#804" class="Primitive Operator">⊔</a> <a id="7196" href="Algebra.Morphism.Structures.html#6221" class="Bound">ℓ₁</a> <a id="7199" href="Agda.Primitive.html#804" class="Primitive Operator">⊔</a> <a id="7201" href="Algebra.Morphism.Structures.html#6249" class="Bound">ℓ₂</a><a id="7203" class="Symbol">)</a> <a id="7205" class="Keyword">where</a>
|
|||
|
<a id="7215" class="Keyword">field</a>
|
|||
|
<a id="NearSemiringMorphisms.IsNearSemiringMonomorphism.isNearSemiringHomomorphism"></a><a id="7227" href="Algebra.Morphism.Structures.html#7227" class="Field">isNearSemiringHomomorphism</a> <a id="7254" class="Symbol">:</a> <a id="7256" href="Algebra.Morphism.Structures.html#6735" class="Record">IsNearSemiringHomomorphism</a> <a id="7283" href="Algebra.Morphism.Structures.html#7172" class="Bound Operator">⟦_⟧</a>
|
|||
|
<a id="NearSemiringMorphisms.IsNearSemiringMonomorphism.injective"></a><a id="7293" href="Algebra.Morphism.Structures.html#7293" class="Field">injective</a> <a id="7312" class="Symbol">:</a> <a id="7314" href="Function.Definitions.html#898" class="Function">Injective</a> <a id="7324" href="Algebra.Morphism.Structures.html#7172" class="Bound Operator">⟦_⟧</a>
|
|||
|
|
|||
|
<a id="7333" class="Keyword">open</a> <a id="7338" href="Algebra.Morphism.Structures.html#6735" class="Module">IsNearSemiringHomomorphism</a> <a id="7365" href="Algebra.Morphism.Structures.html#7227" class="Field">isNearSemiringHomomorphism</a> <a id="7392" class="Keyword">public</a>
|
|||
|
|
|||
|
<a id="NearSemiringMorphisms.IsNearSemiringMonomorphism.+-isMonoidMonomorphism"></a><a id="7404" href="Algebra.Morphism.Structures.html#7404" class="Function">+-isMonoidMonomorphism</a> <a id="7427" class="Symbol">:</a> <a id="7429" href="Algebra.Morphism.Structures.html#3005" class="Record">+.IsMonoidMonomorphism</a> <a id="7452" href="Algebra.Morphism.Structures.html#7172" class="Bound Operator">⟦_⟧</a>
|
|||
|
<a id="7460" href="Algebra.Morphism.Structures.html#7404" class="Function">+-isMonoidMonomorphism</a> <a id="7483" class="Symbol">=</a> <a id="7485" class="Keyword">record</a>
|
|||
|
<a id="7498" class="Symbol">{</a> <a id="7500" href="Algebra.Morphism.Structures.html#3082" class="Field">isMonoidHomomorphism</a> <a id="7521" class="Symbol">=</a> <a id="7523" href="Algebra.Morphism.Structures.html#6818" class="Function">+-isMonoidHomomorphism</a>
|
|||
|
<a id="7552" class="Symbol">;</a> <a id="7554" href="Algebra.Morphism.Structures.html#3136" class="Field">injective</a> <a id="7575" class="Symbol">=</a> <a id="7577" href="Algebra.Morphism.Structures.html#7293" class="Field">injective</a>
|
|||
|
<a id="7593" class="Symbol">}</a>
|
|||
|
|
|||
|
<a id="NearSemiringMorphisms.IsNearSemiringMonomorphism.*-isMagmaMonomorphism"></a><a id="7600" href="Algebra.Morphism.Structures.html#7600" class="Function">*-isMagmaMonomorphism</a> <a id="7622" class="Symbol">:</a> <a id="7624" href="Algebra.Morphism.Structures.html#1388" class="Record">*.IsMagmaMonomorphism</a> <a id="7646" href="Algebra.Morphism.Structures.html#7172" class="Bound Operator">⟦_⟧</a>
|
|||
|
<a id="7654" href="Algebra.Morphism.Structures.html#7600" class="Function">*-isMagmaMonomorphism</a> <a id="7676" class="Symbol">=</a> <a id="7678" class="Keyword">record</a>
|
|||
|
<a id="7691" class="Symbol">{</a> <a id="7693" href="Algebra.Morphism.Structures.html#1464" class="Field">isMagmaHomomorphism</a> <a id="7713" class="Symbol">=</a> <a id="7715" href="Algebra.Morphism.Structures.html#6876" class="Function">*-isMagmaHomomorphism</a>
|
|||
|
<a id="7743" class="Symbol">;</a> <a id="7745" href="Algebra.Morphism.Structures.html#1516" class="Field">injective</a> <a id="7765" class="Symbol">=</a> <a id="7767" href="Algebra.Morphism.Structures.html#7293" class="Field">injective</a>
|
|||
|
<a id="7783" class="Symbol">}</a>
|
|||
|
|
|||
|
<a id="7790" class="Keyword">open</a> <a id="7795" href="Algebra.Morphism.Structures.html#1388" class="Module">*.IsMagmaMonomorphism</a> <a id="7817" href="Algebra.Morphism.Structures.html#7600" class="Function">*-isMagmaMonomorphism</a> <a id="7839" class="Keyword">public</a>
|
|||
|
<a id="7852" class="Keyword">using</a> <a id="7858" class="Symbol">(</a><a id="7859" href="Algebra.Morphism.Structures.html#1614" class="Function">isRelMonomorphism</a><a id="7876" class="Symbol">)</a>
|
|||
|
|
|||
|
<a id="7881" class="Keyword">record</a> <a id="NearSemiringMorphisms.IsNearSemiringIsomorphism"></a><a id="7888" href="Algebra.Morphism.Structures.html#7888" class="Record">IsNearSemiringIsomorphism</a> <a id="7914" class="Symbol">(</a><a id="7915" href="Algebra.Morphism.Structures.html#7915" class="Bound Operator">⟦_⟧</a> <a id="7919" class="Symbol">:</a> <a id="7921" href="Algebra.Morphism.Structures.html#6312" class="Function">A</a> <a id="7923" class="Symbol">→</a> <a id="7925" href="Algebra.Morphism.Structures.html#6447" class="Field">B</a><a id="7926" class="Symbol">)</a> <a id="7928" class="Symbol">:</a> <a id="7930" href="Agda.Primitive.html#320" class="Primitive">Set</a> <a id="7934" class="Symbol">(</a><a id="7935" href="Algebra.Morphism.Structures.html#6219" class="Bound">a</a> <a id="7937" href="Agda.Primitive.html#804" class="Primitive Operator">⊔</a> <a id="7939" href="Algebra.Morphism.Structures.html#6247" class="Bound">b</a> <a id="7941" href="Agda.Primitive.html#804" class="Primitive Operator">⊔</a> <a id="7943" href="Algebra.Morphism.Structures.html#6221" class="Bound">ℓ₁</a> <a id="7946" href="Agda.Primitive.html#804" class="Primitive Operator">⊔</a> <a id="7948" href="Algebra.Morphism.Structures.html#6249" class="Bound">ℓ₂</a><a id="7950" class="Symbol">)</a> <a id="7952" class="Keyword">where</a>
|
|||
|
<a id="7962" class="Keyword">field</a>
|
|||
|
<a id="NearSemiringMorphisms.IsNearSemiringIsomorphism.isNearSemiringMonomorphism"></a><a id="7974" href="Algebra.Morphism.Structures.html#7974" class="Field">isNearSemiringMonomorphism</a> <a id="8001" class="Symbol">:</a> <a id="8003" href="Algebra.Morphism.Structures.html#7144" class="Record">IsNearSemiringMonomorphism</a> <a id="8030" href="Algebra.Morphism.Structures.html#7915" class="Bound Operator">⟦_⟧</a>
|
|||
|
<a id="NearSemiringMorphisms.IsNearSemiringIsomorphism.surjective"></a><a id="8040" href="Algebra.Morphism.Structures.html#8040" class="Field">surjective</a> <a id="8059" class="Symbol">:</a> <a id="8061" href="Function.Definitions.Core2.html#672" class="Function">Surjective</a> <a id="8072" href="Algebra.Morphism.Structures.html#7915" class="Bound Operator">⟦_⟧</a>
|
|||
|
|
|||
|
<a id="8081" class="Keyword">open</a> <a id="8086" href="Algebra.Morphism.Structures.html#7144" class="Module">IsNearSemiringMonomorphism</a> <a id="8113" href="Algebra.Morphism.Structures.html#7974" class="Field">isNearSemiringMonomorphism</a> <a id="8140" class="Keyword">public</a>
|
|||
|
|
|||
|
<a id="NearSemiringMorphisms.IsNearSemiringIsomorphism.+-isMonoidIsomorphism"></a><a id="8152" href="Algebra.Morphism.Structures.html#8152" class="Function">+-isMonoidIsomorphism</a> <a id="8174" class="Symbol">:</a> <a id="8176" href="Algebra.Morphism.Structures.html#3514" class="Record">+.IsMonoidIsomorphism</a> <a id="8198" href="Algebra.Morphism.Structures.html#7915" class="Bound Operator">⟦_⟧</a>
|
|||
|
<a id="8206" href="Algebra.Morphism.Structures.html#8152" class="Function">+-isMonoidIsomorphism</a> <a id="8228" class="Symbol">=</a> <a id="8230" class="Keyword">record</a>
|
|||
|
<a id="8243" class="Symbol">{</a> <a id="8245" href="Algebra.Morphism.Structures.html#3594" class="Field">isMonoidMonomorphism</a> <a id="8266" class="Symbol">=</a> <a id="8268" href="Algebra.Morphism.Structures.html#7404" class="Function">+-isMonoidMonomorphism</a>
|
|||
|
<a id="8297" class="Symbol">;</a> <a id="8299" href="Algebra.Morphism.Structures.html#3648" class="Field">surjective</a> <a id="8320" class="Symbol">=</a> <a id="8322" href="Algebra.Morphism.Structures.html#8040" class="Field">surjective</a>
|
|||
|
<a id="8339" class="Symbol">}</a>
|
|||
|
|
|||
|
<a id="NearSemiringMorphisms.IsNearSemiringIsomorphism.*-isMagmaIsomorphism"></a><a id="8346" href="Algebra.Morphism.Structures.html#8346" class="Function">*-isMagmaIsomorphism</a> <a id="8367" class="Symbol">:</a> <a id="8369" href="Algebra.Morphism.Structures.html#1794" class="Record">*.IsMagmaIsomorphism</a> <a id="8390" href="Algebra.Morphism.Structures.html#7915" class="Bound Operator">⟦_⟧</a>
|
|||
|
<a id="8398" href="Algebra.Morphism.Structures.html#8346" class="Function">*-isMagmaIsomorphism</a> <a id="8419" class="Symbol">=</a> <a id="8421" class="Keyword">record</a>
|
|||
|
<a id="8434" class="Symbol">{</a> <a id="8436" href="Algebra.Morphism.Structures.html#1873" class="Field">isMagmaMonomorphism</a> <a id="8456" class="Symbol">=</a> <a id="8458" href="Algebra.Morphism.Structures.html#7600" class="Function">*-isMagmaMonomorphism</a>
|
|||
|
<a id="8486" class="Symbol">;</a> <a id="8488" href="Algebra.Morphism.Structures.html#1925" class="Field">surjective</a> <a id="8508" class="Symbol">=</a> <a id="8510" href="Algebra.Morphism.Structures.html#8040" class="Field">surjective</a>
|
|||
|
<a id="8527" class="Symbol">}</a>
|
|||
|
|
|||
|
<a id="8534" class="Keyword">open</a> <a id="8539" href="Algebra.Morphism.Structures.html#1794" class="Module">*.IsMagmaIsomorphism</a> <a id="8560" href="Algebra.Morphism.Structures.html#8346" class="Function">*-isMagmaIsomorphism</a> <a id="8581" class="Keyword">public</a>
|
|||
|
<a id="8594" class="Keyword">using</a> <a id="8600" class="Symbol">(</a><a id="8601" href="Algebra.Morphism.Structures.html#2024" class="Function">isRelIsomorphism</a><a id="8617" class="Symbol">)</a>
|
|||
|
|
|||
|
|
|||
|
<a id="8621" class="Comment">------------------------------------------------------------------------</a>
|
|||
|
<a id="8694" class="Comment">-- Morphisms over semiring-like structures</a>
|
|||
|
<a id="8737" class="Comment">------------------------------------------------------------------------</a>
|
|||
|
|
|||
|
<a id="8811" class="Keyword">module</a> <a id="SemiringMorphisms"></a><a id="8818" href="Algebra.Morphism.Structures.html#8818" class="Module">SemiringMorphisms</a> <a id="8836" class="Symbol">(</a><a id="8837" href="Algebra.Morphism.Structures.html#8837" class="Bound">R₁</a> <a id="8840" class="Symbol">:</a> <a id="8842" href="Algebra.Bundles.html#14073" class="Record">RawSemiring</a> <a id="8854" href="Algebra.Morphism.Structures.html#615" class="Generalizable">a</a> <a id="8856" href="Algebra.Morphism.Structures.html#619" class="Generalizable">ℓ₁</a><a id="8858" class="Symbol">)</a> <a id="8860" class="Symbol">(</a><a id="8861" href="Algebra.Morphism.Structures.html#8861" class="Bound">R₂</a> <a id="8864" class="Symbol">:</a> <a id="8866" href="Algebra.Bundles.html#14073" class="Record">RawSemiring</a> <a id="8878" href="Algebra.Morphism.Structures.html#617" class="Generalizable">b</a> <a id="8880" href="Algebra.Morphism.Structures.html#622" class="Generalizable">ℓ₂</a><a id="8882" class="Symbol">)</a> <a id="8884" class="Keyword">where</a>
|
|||
|
|
|||
|
<a id="8893" class="Keyword">open</a> <a id="8898" href="Algebra.Bundles.html#14073" class="Module">RawSemiring</a> <a id="8910" href="Algebra.Morphism.Structures.html#8837" class="Bound">R₁</a> <a id="8913" class="Keyword">renaming</a>
|
|||
|
<a id="8926" class="Symbol">(</a> <a id="8928" href="Algebra.Bundles.html#14172" class="Field">Carrier</a> <a id="8936" class="Symbol">to</a> <a id="8939" class="Field">A</a><a id="8940" class="Symbol">;</a> <a id="8942" href="Algebra.Bundles.html#14192" class="Field Operator">_≈_</a> <a id="8946" class="Symbol">to</a> <a id="8949" class="Field Operator">_≈₁_</a>
|
|||
|
<a id="8958" class="Symbol">;</a> <a id="8960" href="Algebra.Bundles.html#10691" class="Function">+-rawMonoid</a> <a id="8972" class="Symbol">to</a> <a id="8975" class="Function">+-rawMonoid₁</a>
|
|||
|
<a id="8992" class="Symbol">;</a> <a id="8994" href="Algebra.Bundles.html#14552" class="Function">*-rawMonoid</a> <a id="9006" class="Symbol">to</a> <a id="9009" class="Function">*-rawMonoid₁</a><a id="9021" class="Symbol">)</a>
|
|||
|
|
|||
|
<a id="9026" class="Keyword">open</a> <a id="9031" href="Algebra.Bundles.html#14073" class="Module">RawSemiring</a> <a id="9043" href="Algebra.Morphism.Structures.html#8861" class="Bound">R₂</a> <a id="9046" class="Keyword">renaming</a>
|
|||
|
<a id="9059" class="Symbol">(</a> <a id="9061" href="Algebra.Bundles.html#14172" class="Field">Carrier</a> <a id="9069" class="Symbol">to</a> <a id="9072" class="Field">B</a><a id="9073" class="Symbol">;</a> <a id="9075" href="Algebra.Bundles.html#14192" class="Field Operator">_≈_</a> <a id="9079" class="Symbol">to</a> <a id="9082" class="Field Operator">_≈₂_</a>
|
|||
|
<a id="9091" class="Symbol">;</a> <a id="9093" href="Algebra.Bundles.html#10691" class="Function">+-rawMonoid</a> <a id="9105" class="Symbol">to</a> <a id="9108" class="Function">+-rawMonoid₂</a>
|
|||
|
<a id="9125" class="Symbol">;</a> <a id="9127" href="Algebra.Bundles.html#14552" class="Function">*-rawMonoid</a> <a id="9139" class="Symbol">to</a> <a id="9142" class="Function">*-rawMonoid₂</a><a id="9154" class="Symbol">)</a>
|
|||
|
|
|||
|
<a id="9159" class="Keyword">private</a>
|
|||
|
<a id="9171" class="Keyword">module</a> <a id="SemiringMorphisms.+"></a><a id="9178" href="Algebra.Morphism.Structures.html#9178" class="Module">+</a> <a id="9180" class="Symbol">=</a> <a id="9182" href="Algebra.Morphism.Structures.html#2388" class="Module">MonoidMorphisms</a> <a id="9198" href="Algebra.Morphism.Structures.html#8975" class="Function">+-rawMonoid₁</a> <a id="9211" href="Algebra.Morphism.Structures.html#9108" class="Function">+-rawMonoid₂</a>
|
|||
|
<a id="9228" class="Keyword">module</a> <a id="SemiringMorphisms.*"></a><a id="9235" href="Algebra.Morphism.Structures.html#9235" class="Module">*</a> <a id="9237" class="Symbol">=</a> <a id="9239" href="Algebra.Morphism.Structures.html#2388" class="Module">MonoidMorphisms</a> <a id="9255" href="Algebra.Morphism.Structures.html#9009" class="Function">*-rawMonoid₁</a> <a id="9268" href="Algebra.Morphism.Structures.html#9142" class="Function">*-rawMonoid₂</a>
|
|||
|
|
|||
|
<a id="9284" class="Keyword">open</a> <a id="9289" href="Algebra.Morphism.Definitions.html" class="Module">MorphismDefinitions</a> <a id="9309" href="Algebra.Morphism.Structures.html#8939" class="Function">A</a> <a id="9311" href="Algebra.Morphism.Structures.html#9072" class="Field">B</a> <a id="9313" href="Algebra.Morphism.Structures.html#9082" class="Field Operator">_≈₂_</a>
|
|||
|
<a id="9320" class="Keyword">open</a> <a id="9325" href="Function.Definitions.html" class="Module">FunctionDefinitions</a> <a id="9345" href="Algebra.Morphism.Structures.html#8949" class="Function Operator">_≈₁_</a> <a id="9350" href="Algebra.Morphism.Structures.html#9082" class="Field Operator">_≈₂_</a>
|
|||
|
|
|||
|
<a id="9358" class="Keyword">record</a> <a id="SemiringMorphisms.IsSemiringHomomorphism"></a><a id="9365" href="Algebra.Morphism.Structures.html#9365" class="Record">IsSemiringHomomorphism</a> <a id="9388" class="Symbol">(</a><a id="9389" href="Algebra.Morphism.Structures.html#9389" class="Bound Operator">⟦_⟧</a> <a id="9393" class="Symbol">:</a> <a id="9395" href="Algebra.Morphism.Structures.html#8939" class="Function">A</a> <a id="9397" class="Symbol">→</a> <a id="9399" href="Algebra.Morphism.Structures.html#9072" class="Field">B</a><a id="9400" class="Symbol">)</a> <a id="9402" class="Symbol">:</a> <a id="9404" href="Agda.Primitive.html#320" class="Primitive">Set</a> <a id="9408" class="Symbol">(</a><a id="9409" href="Algebra.Morphism.Structures.html#8854" class="Bound">a</a> <a id="9411" href="Agda.Primitive.html#804" class="Primitive Operator">⊔</a> <a id="9413" href="Algebra.Morphism.Structures.html#8856" class="Bound">ℓ₁</a> <a id="9416" href="Agda.Primitive.html#804" class="Primitive Operator">⊔</a> <a id="9418" href="Algebra.Morphism.Structures.html#8880" class="Bound">ℓ₂</a><a id="9420" class="Symbol">)</a> <a id="9422" class="Keyword">where</a>
|
|||
|
<a id="9432" class="Keyword">field</a>
|
|||
|
<a id="SemiringMorphisms.IsSemiringHomomorphism.+-isMonoidHomomorphism"></a><a id="9444" href="Algebra.Morphism.Structures.html#9444" class="Field">+-isMonoidHomomorphism</a> <a id="9467" class="Symbol">:</a> <a id="9469" href="Algebra.Morphism.Structures.html#2764" class="Record">+.IsMonoidHomomorphism</a> <a id="9492" href="Algebra.Morphism.Structures.html#9389" class="Bound Operator">⟦_⟧</a>
|
|||
|
<a id="SemiringMorphisms.IsSemiringHomomorphism.*-isMonoidHomomorphism"></a><a id="9502" href="Algebra.Morphism.Structures.html#9502" class="Field">*-isMonoidHomomorphism</a> <a id="9525" class="Symbol">:</a> <a id="9527" href="Algebra.Morphism.Structures.html#2764" class="Record">*.IsMonoidHomomorphism</a> <a id="9550" href="Algebra.Morphism.Structures.html#9389" class="Bound Operator">⟦_⟧</a>
|
|||
|
|
|||
|
<a id="9559" class="Keyword">open</a> <a id="9564" href="Algebra.Morphism.Structures.html#2764" class="Module">+.IsMonoidHomomorphism</a> <a id="9587" href="Algebra.Morphism.Structures.html#9444" class="Field">+-isMonoidHomomorphism</a> <a id="9610" class="Keyword">renaming</a>
|
|||
|
<a id="9625" class="Symbol">(</a><a id="9626" href="Algebra.Morphism.Structures.html#1246" class="Function">homo</a> <a id="9631" class="Symbol">to</a> <a id="9634" class="Function">+-homo</a><a id="9640" class="Symbol">;</a> <a id="9642" href="Algebra.Morphism.Structures.html#2893" class="Field">ε-homo</a> <a id="9649" class="Symbol">to</a> <a id="9652" class="Field">0#-homo</a><a id="9659" class="Symbol">)</a> <a id="9661" class="Keyword">public</a>
|
|||
|
|
|||
|
<a id="9673" class="Keyword">open</a> <a id="9678" href="Algebra.Morphism.Structures.html#2764" class="Module">*.IsMonoidHomomorphism</a> <a id="9701" href="Algebra.Morphism.Structures.html#9502" class="Field">*-isMonoidHomomorphism</a> <a id="9724" class="Keyword">renaming</a>
|
|||
|
<a id="9739" class="Symbol">(</a><a id="9740" href="Algebra.Morphism.Structures.html#1246" class="Function">homo</a> <a id="9745" class="Symbol">to</a> <a id="9748" class="Function">*-homo</a><a id="9754" class="Symbol">;</a> <a id="9756" href="Algebra.Morphism.Structures.html#2893" class="Field">ε-homo</a> <a id="9763" class="Symbol">to</a> <a id="9766" class="Field">1#-homo</a><a id="9773" class="Symbol">)</a> <a id="9775" class="Keyword">public</a>
|
|||
|
|
|||
|
<a id="9785" class="Keyword">record</a> <a id="SemiringMorphisms.IsSemiringMonomorphism"></a><a id="9792" href="Algebra.Morphism.Structures.html#9792" class="Record">IsSemiringMonomorphism</a> <a id="9815" class="Symbol">(</a><a id="9816" href="Algebra.Morphism.Structures.html#9816" class="Bound Operator">⟦_⟧</a> <a id="9820" class="Symbol">:</a> <a id="9822" href="Algebra.Morphism.Structures.html#8939" class="Function">A</a> <a id="9824" class="Symbol">→</a> <a id="9826" href="Algebra.Morphism.Structures.html#9072" class="Field">B</a><a id="9827" class="Symbol">)</a> <a id="9829" class="Symbol">:</a> <a id="9831" href="Agda.Primitive.html#320" class="Primitive">Set</a> <a id="9835" class="Symbol">(</a><a id="9836" href="Algebra.Morphism.Structures.html#8854" class="Bound">a</a> <a id="9838" href="Agda.Primitive.html#804" class="Primitive Operator">⊔</a> <a id="9840" href="Algebra.Morphism.Structures.html#8856" class="Bound">ℓ₁</a> <a id="9843" href="Agda.Primitive.html#804" class="Primitive Operator">⊔</a> <a id="9845" href="Algebra.Morphism.Structures.html#8880" class="Bound">ℓ₂</a><a id="9847" class="Symbol">)</a> <a id="9849" class="Keyword">where</a>
|
|||
|
<a id="9859" class="Keyword">field</a>
|
|||
|
<a id="SemiringMorphisms.IsSemiringMonomorphism.isSemiringHomomorphism"></a><a id="9871" href="Algebra.Morphism.Structures.html#9871" class="Field">isSemiringHomomorphism</a> <a id="9894" class="Symbol">:</a> <a id="9896" href="Algebra.Morphism.Structures.html#9365" class="Record">IsSemiringHomomorphism</a> <a id="9919" href="Algebra.Morphism.Structures.html#9816" class="Bound Operator">⟦_⟧</a>
|
|||
|
<a id="SemiringMorphisms.IsSemiringMonomorphism.injective"></a><a id="9929" href="Algebra.Morphism.Structures.html#9929" class="Field">injective</a> <a id="9952" class="Symbol">:</a> <a id="9954" href="Function.Definitions.html#898" class="Function">Injective</a> <a id="9964" href="Algebra.Morphism.Structures.html#9816" class="Bound Operator">⟦_⟧</a>
|
|||
|
|
|||
|
<a id="9973" class="Keyword">open</a> <a id="9978" href="Algebra.Morphism.Structures.html#9365" class="Module">IsSemiringHomomorphism</a> <a id="10001" href="Algebra.Morphism.Structures.html#9871" class="Field">isSemiringHomomorphism</a> <a id="10024" class="Keyword">public</a>
|
|||
|
|
|||
|
<a id="SemiringMorphisms.IsSemiringMonomorphism.+-isMonoidMonomorphism"></a><a id="10036" href="Algebra.Morphism.Structures.html#10036" class="Function">+-isMonoidMonomorphism</a> <a id="10059" class="Symbol">:</a> <a id="10061" href="Algebra.Morphism.Structures.html#3005" class="Record">+.IsMonoidMonomorphism</a> <a id="10084" href="Algebra.Morphism.Structures.html#9816" class="Bound Operator">⟦_⟧</a>
|
|||
|
<a id="10092" href="Algebra.Morphism.Structures.html#10036" class="Function">+-isMonoidMonomorphism</a> <a id="10115" class="Symbol">=</a> <a id="10117" class="Keyword">record</a>
|
|||
|
<a id="10130" class="Symbol">{</a> <a id="10132" href="Algebra.Morphism.Structures.html#3082" class="Field">isMonoidHomomorphism</a> <a id="10153" class="Symbol">=</a> <a id="10155" href="Algebra.Morphism.Structures.html#9444" class="Function">+-isMonoidHomomorphism</a>
|
|||
|
<a id="10184" class="Symbol">;</a> <a id="10186" href="Algebra.Morphism.Structures.html#3136" class="Field">injective</a> <a id="10207" class="Symbol">=</a> <a id="10209" href="Algebra.Morphism.Structures.html#9929" class="Field">injective</a>
|
|||
|
<a id="10225" class="Symbol">}</a>
|
|||
|
|
|||
|
<a id="SemiringMorphisms.IsSemiringMonomorphism.*-isMonoidMonomorphism"></a><a id="10232" href="Algebra.Morphism.Structures.html#10232" class="Function">*-isMonoidMonomorphism</a> <a id="10255" class="Symbol">:</a> <a id="10257" href="Algebra.Morphism.Structures.html#3005" class="Record">*.IsMonoidMonomorphism</a> <a id="10280" href="Algebra.Morphism.Structures.html#9816" class="Bound Operator">⟦_⟧</a>
|
|||
|
<a id="10288" href="Algebra.Morphism.Structures.html#10232" class="Function">*-isMonoidMonomorphism</a> <a id="10311" class="Symbol">=</a> <a id="10313" class="Keyword">record</a>
|
|||
|
<a id="10326" class="Symbol">{</a> <a id="10328" href="Algebra.Morphism.Structures.html#3082" class="Field">isMonoidHomomorphism</a> <a id="10349" class="Symbol">=</a> <a id="10351" href="Algebra.Morphism.Structures.html#9502" class="Function">*-isMonoidHomomorphism</a>
|
|||
|
<a id="10380" class="Symbol">;</a> <a id="10382" href="Algebra.Morphism.Structures.html#3136" class="Field">injective</a> <a id="10403" class="Symbol">=</a> <a id="10405" href="Algebra.Morphism.Structures.html#9929" class="Field">injective</a>
|
|||
|
<a id="10421" class="Symbol">}</a>
|
|||
|
|
|||
|
<a id="10428" class="Keyword">open</a> <a id="10433" href="Algebra.Morphism.Structures.html#3005" class="Module">*.IsMonoidMonomorphism</a> <a id="10456" href="Algebra.Morphism.Structures.html#10232" class="Function">*-isMonoidMonomorphism</a> <a id="10479" class="Keyword">public</a>
|
|||
|
<a id="10492" class="Keyword">using</a> <a id="10498" class="Symbol">(</a><a id="10499" href="Algebra.Morphism.Structures.html#1614" class="Function">isRelMonomorphism</a><a id="10516" class="Symbol">)</a>
|
|||
|
|
|||
|
<a id="10521" class="Keyword">record</a> <a id="SemiringMorphisms.IsSemiringIsomorphism"></a><a id="10528" href="Algebra.Morphism.Structures.html#10528" class="Record">IsSemiringIsomorphism</a> <a id="10550" class="Symbol">(</a><a id="10551" href="Algebra.Morphism.Structures.html#10551" class="Bound Operator">⟦_⟧</a> <a id="10555" class="Symbol">:</a> <a id="10557" href="Algebra.Morphism.Structures.html#8939" class="Function">A</a> <a id="10559" class="Symbol">→</a> <a id="10561" href="Algebra.Morphism.Structures.html#9072" class="Field">B</a><a id="10562" class="Symbol">)</a> <a id="10564" class="Symbol">:</a> <a id="10566" href="Agda.Primitive.html#320" class="Primitive">Set</a> <a id="10570" class="Symbol">(</a><a id="10571" href="Algebra.Morphism.Structures.html#8854" class="Bound">a</a> <a id="10573" href="Agda.Primitive.html#804" class="Primitive Operator">⊔</a> <a id="10575" href="Algebra.Morphism.Structures.html#8878" class="Bound">b</a> <a id="10577" href="Agda.Primitive.html#804" class="Primitive Operator">⊔</a> <a id="10579" href="Algebra.Morphism.Structures.html#8856" class="Bound">ℓ₁</a> <a id="10582" href="Agda.Primitive.html#804" class="Primitive Operator">⊔</a> <a id="10584" href="Algebra.Morphism.Structures.html#8880" class="Bound">ℓ₂</a><a id="10586" class="Symbol">)</a> <a id="10588" class="Keyword">where</a>
|
|||
|
<a id="10598" class="Keyword">field</a>
|
|||
|
<a id="SemiringMorphisms.IsSemiringIsomorphism.isSemiringMonomorphism"></a><a id="10610" href="Algebra.Morphism.Structures.html#10610" class="Field">isSemiringMonomorphism</a> <a id="10633" class="Symbol">:</a> <a id="10635" href="Algebra.Morphism.Structures.html#9792" class="Record">IsSemiringMonomorphism</a> <a id="10658" href="Algebra.Morphism.Structures.html#10551" class="Bound Operator">⟦_⟧</a>
|
|||
|
<a id="SemiringMorphisms.IsSemiringIsomorphism.surjective"></a><a id="10668" href="Algebra.Morphism.Structures.html#10668" class="Field">surjective</a> <a id="10687" class="Symbol">:</a> <a id="10689" href="Function.Definitions.Core2.html#672" class="Function">Surjective</a> <a id="10700" href="Algebra.Morphism.Structures.html#10551" class="Bound Operator">⟦_⟧</a>
|
|||
|
|
|||
|
<a id="10709" class="Keyword">open</a> <a id="10714" href="Algebra.Morphism.Structures.html#9792" class="Module">IsSemiringMonomorphism</a> <a id="10737" href="Algebra.Morphism.Structures.html#10610" class="Field">isSemiringMonomorphism</a> <a id="10760" class="Keyword">public</a>
|
|||
|
|
|||
|
<a id="SemiringMorphisms.IsSemiringIsomorphism.+-isMonoidIsomorphism"></a><a id="10772" href="Algebra.Morphism.Structures.html#10772" class="Function">+-isMonoidIsomorphism</a> <a id="10794" class="Symbol">:</a> <a id="10796" href="Algebra.Morphism.Structures.html#3514" class="Record">+.IsMonoidIsomorphism</a> <a id="10818" href="Algebra.Morphism.Structures.html#10551" class="Bound Operator">⟦_⟧</a>
|
|||
|
<a id="10826" href="Algebra.Morphism.Structures.html#10772" class="Function">+-isMonoidIsomorphism</a> <a id="10848" class="Symbol">=</a> <a id="10850" class="Keyword">record</a>
|
|||
|
<a id="10863" class="Symbol">{</a> <a id="10865" href="Algebra.Morphism.Structures.html#3594" class="Field">isMonoidMonomorphism</a> <a id="10886" class="Symbol">=</a> <a id="10888" href="Algebra.Morphism.Structures.html#10036" class="Function">+-isMonoidMonomorphism</a>
|
|||
|
<a id="10917" class="Symbol">;</a> <a id="10919" href="Algebra.Morphism.Structures.html#3648" class="Field">surjective</a> <a id="10940" class="Symbol">=</a> <a id="10942" href="Algebra.Morphism.Structures.html#10668" class="Field">surjective</a>
|
|||
|
<a id="10959" class="Symbol">}</a>
|
|||
|
|
|||
|
<a id="SemiringMorphisms.IsSemiringIsomorphism.*-isMonoidIsomorphism"></a><a id="10966" href="Algebra.Morphism.Structures.html#10966" class="Function">*-isMonoidIsomorphism</a> <a id="10988" class="Symbol">:</a> <a id="10990" href="Algebra.Morphism.Structures.html#3514" class="Record">*.IsMonoidIsomorphism</a> <a id="11012" href="Algebra.Morphism.Structures.html#10551" class="Bound Operator">⟦_⟧</a>
|
|||
|
<a id="11020" href="Algebra.Morphism.Structures.html#10966" class="Function">*-isMonoidIsomorphism</a> <a id="11042" class="Symbol">=</a> <a id="11044" class="Keyword">record</a>
|
|||
|
<a id="11057" class="Symbol">{</a> <a id="11059" href="Algebra.Morphism.Structures.html#3594" class="Field">isMonoidMonomorphism</a> <a id="11080" class="Symbol">=</a> <a id="11082" href="Algebra.Morphism.Structures.html#10232" class="Function">*-isMonoidMonomorphism</a>
|
|||
|
<a id="11111" class="Symbol">;</a> <a id="11113" href="Algebra.Morphism.Structures.html#3648" class="Field">surjective</a> <a id="11134" class="Symbol">=</a> <a id="11136" href="Algebra.Morphism.Structures.html#10668" class="Field">surjective</a>
|
|||
|
<a id="11153" class="Symbol">}</a>
|
|||
|
|
|||
|
<a id="11160" class="Keyword">open</a> <a id="11165" href="Algebra.Morphism.Structures.html#3514" class="Module">*.IsMonoidIsomorphism</a> <a id="11187" href="Algebra.Morphism.Structures.html#10966" class="Function">*-isMonoidIsomorphism</a> <a id="11209" class="Keyword">public</a>
|
|||
|
<a id="11222" class="Keyword">using</a> <a id="11228" class="Symbol">(</a><a id="11229" href="Algebra.Morphism.Structures.html#2024" class="Function">isRelIsomorphism</a><a id="11245" class="Symbol">)</a>
|
|||
|
|
|||
|
|
|||
|
<a id="11249" class="Comment">------------------------------------------------------------------------</a>
|
|||
|
<a id="11322" class="Comment">-- Morphisms over ring-like structures</a>
|
|||
|
<a id="11361" class="Comment">------------------------------------------------------------------------</a>
|
|||
|
|
|||
|
<a id="11435" class="Keyword">module</a> <a id="RingMorphisms"></a><a id="11442" href="Algebra.Morphism.Structures.html#11442" class="Module">RingMorphisms</a> <a id="11456" class="Symbol">(</a><a id="11457" href="Algebra.Morphism.Structures.html#11457" class="Bound">R₁</a> <a id="11460" class="Symbol">:</a> <a id="11462" href="Algebra.Bundles.html#20205" class="Record">RawRing</a> <a id="11470" href="Algebra.Morphism.Structures.html#615" class="Generalizable">a</a> <a id="11472" href="Algebra.Morphism.Structures.html#619" class="Generalizable">ℓ₁</a><a id="11474" class="Symbol">)</a> <a id="11476" class="Symbol">(</a><a id="11477" href="Algebra.Morphism.Structures.html#11477" class="Bound">R₂</a> <a id="11480" class="Symbol">:</a> <a id="11482" href="Algebra.Bundles.html#20205" class="Record">RawRing</a> <a id="11490" href="Algebra.Morphism.Structures.html#617" class="Generalizable">b</a> <a id="11492" href="Algebra.Morphism.Structures.html#622" class="Generalizable">ℓ₂</a><a id="11494" class="Symbol">)</a> <a id="11496" class="Keyword">where</a>
|
|||
|
|
|||
|
<a id="11505" class="Keyword">open</a> <a id="11510" href="Algebra.Bundles.html#20205" class="Module">RawRing</a> <a id="11518" href="Algebra.Morphism.Structures.html#11457" class="Bound">R₁</a> <a id="11521" class="Keyword">renaming</a>
|
|||
|
<a id="11534" class="Symbol">(</a> <a id="11536" href="Algebra.Bundles.html#20314" class="Field">Carrier</a> <a id="11544" class="Symbol">to</a> <a id="11547" class="Field">A</a><a id="11548" class="Symbol">;</a> <a id="11550" href="Algebra.Bundles.html#20334" class="Field Operator">_≈_</a> <a id="11554" class="Symbol">to</a> <a id="11557" class="Field Operator">_≈₁_</a>
|
|||
|
<a id="11566" class="Symbol">;</a> <a id="11568" href="Algebra.Bundles.html#14552" class="Function">*-rawMonoid</a> <a id="11580" class="Symbol">to</a> <a id="11583" class="Function">*-rawMonoid₁</a>
|
|||
|
<a id="11600" class="Symbol">;</a> <a id="11602" href="Algebra.Bundles.html#20748" class="Function">+-rawGroup</a> <a id="11613" class="Symbol">to</a> <a id="11616" class="Function">+-rawGroup₁</a><a id="11627" class="Symbol">)</a>
|
|||
|
|
|||
|
<a id="11632" class="Keyword">open</a> <a id="11637" href="Algebra.Bundles.html#20205" class="Module">RawRing</a> <a id="11645" href="Algebra.Morphism.Structures.html#11477" class="Bound">R₂</a> <a id="11648" class="Keyword">renaming</a>
|
|||
|
<a id="11661" class="Symbol">(</a> <a id="11663" href="Algebra.Bundles.html#20314" class="Field">Carrier</a> <a id="11671" class="Symbol">to</a> <a id="11674" class="Field">B</a><a id="11675" class="Symbol">;</a> <a id="11677" href="Algebra.Bundles.html#20334" class="Field Operator">_≈_</a> <a id="11681" class="Symbol">to</a> <a id="11684" class="Field Operator">_≈₂_</a>
|
|||
|
<a id="11693" class="Symbol">;</a> <a id="11695" href="Algebra.Bundles.html#14552" class="Function">*-rawMonoid</a> <a id="11707" class="Symbol">to</a> <a id="11710" class="Function">*-rawMonoid₂</a>
|
|||
|
<a id="11727" class="Symbol">;</a> <a id="11729" href="Algebra.Bundles.html#20748" class="Function">+-rawGroup</a> <a id="11740" class="Symbol">to</a> <a id="11743" class="Function">+-rawGroup₂</a><a id="11754" class="Symbol">)</a>
|
|||
|
|
|||
|
<a id="11759" class="Keyword">module</a> <a id="RingMorphisms.+"></a><a id="11766" href="Algebra.Morphism.Structures.html#11766" class="Module">+</a> <a id="11768" class="Symbol">=</a> <a id="11770" href="Algebra.Morphism.Structures.html#4207" class="Module">GroupMorphisms</a> <a id="11785" href="Algebra.Morphism.Structures.html#11616" class="Function">+-rawGroup₁</a> <a id="11797" href="Algebra.Morphism.Structures.html#11743" class="Function">+-rawGroup₂</a>
|
|||
|
<a id="11811" class="Keyword">module</a> <a id="RingMorphisms.*"></a><a id="11818" href="Algebra.Morphism.Structures.html#11818" class="Module">*</a> <a id="11820" class="Symbol">=</a> <a id="11822" href="Algebra.Morphism.Structures.html#2388" class="Module">MonoidMorphisms</a> <a id="11838" href="Algebra.Morphism.Structures.html#11583" class="Function">*-rawMonoid₁</a> <a id="11851" href="Algebra.Morphism.Structures.html#11710" class="Function">*-rawMonoid₂</a>
|
|||
|
|
|||
|
<a id="11867" class="Keyword">open</a> <a id="11872" href="Algebra.Morphism.Definitions.html" class="Module">MorphismDefinitions</a> <a id="11892" href="Algebra.Morphism.Structures.html#11547" class="Function">A</a> <a id="11894" href="Algebra.Morphism.Structures.html#11674" class="Field">B</a> <a id="11896" href="Algebra.Morphism.Structures.html#11684" class="Field Operator">_≈₂_</a>
|
|||
|
<a id="11903" class="Keyword">open</a> <a id="11908" href="Function.Definitions.html" class="Module">FunctionDefinitions</a> <a id="11928" href="Algebra.Morphism.Structures.html#11557" class="Function Operator">_≈₁_</a> <a id="11933" href="Algebra.Morphism.Structures.html#11684" class="Field Operator">_≈₂_</a>
|
|||
|
|
|||
|
<a id="11941" class="Keyword">record</a> <a id="RingMorphisms.IsRingHomomorphism"></a><a id="11948" href="Algebra.Morphism.Structures.html#11948" class="Record">IsRingHomomorphism</a> <a id="11967" class="Symbol">(</a><a id="11968" href="Algebra.Morphism.Structures.html#11968" class="Bound Operator">⟦_⟧</a> <a id="11972" class="Symbol">:</a> <a id="11974" href="Algebra.Morphism.Structures.html#11547" class="Function">A</a> <a id="11976" class="Symbol">→</a> <a id="11978" href="Algebra.Morphism.Structures.html#11674" class="Field">B</a><a id="11979" class="Symbol">)</a> <a id="11981" class="Symbol">:</a> <a id="11983" href="Agda.Primitive.html#320" class="Primitive">Set</a> <a id="11987" class="Symbol">(</a><a id="11988" href="Algebra.Morphism.Structures.html#11470" class="Bound">a</a> <a id="11990" href="Agda.Primitive.html#804" class="Primitive Operator">⊔</a> <a id="11992" href="Algebra.Morphism.Structures.html#11472" class="Bound">ℓ₁</a> <a id="11995" href="Agda.Primitive.html#804" class="Primitive Operator">⊔</a> <a id="11997" href="Algebra.Morphism.Structures.html#11492" class="Bound">ℓ₂</a><a id="11999" class="Symbol">)</a> <a id="12001" class="Keyword">where</a>
|
|||
|
<a id="12011" class="Keyword">field</a>
|
|||
|
<a id="RingMorphisms.IsRingHomomorphism.+-isGroupHomomorphism"></a><a id="12023" href="Algebra.Morphism.Structures.html#12023" class="Field">+-isGroupHomomorphism</a> <a id="12046" class="Symbol">:</a> <a id="12048" href="Algebra.Morphism.Structures.html#4681" class="Record">+.IsGroupHomomorphism</a> <a id="12071" href="Algebra.Morphism.Structures.html#11968" class="Bound Operator">⟦_⟧</a>
|
|||
|
<a id="RingMorphisms.IsRingHomomorphism.*-isMonoidHomomorphism"></a><a id="12081" href="Algebra.Morphism.Structures.html#12081" class="Field">*-isMonoidHomomorphism</a> <a id="12104" class="Symbol">:</a> <a id="12106" href="Algebra.Morphism.Structures.html#2764" class="Record">*.IsMonoidHomomorphism</a> <a id="12129" href="Algebra.Morphism.Structures.html#11968" class="Bound Operator">⟦_⟧</a>
|
|||
|
|
|||
|
<a id="12138" class="Keyword">open</a> <a id="12143" href="Algebra.Morphism.Structures.html#4681" class="Module">+.IsGroupHomomorphism</a> <a id="12165" href="Algebra.Morphism.Structures.html#12023" class="Field">+-isGroupHomomorphism</a> <a id="12187" class="Keyword">renaming</a>
|
|||
|
<a id="12202" class="Symbol">(</a><a id="12203" href="Algebra.Morphism.Structures.html#1246" class="Function">homo</a> <a id="12208" class="Symbol">to</a> <a id="12211" class="Function">+-homo</a><a id="12217" class="Symbol">;</a> <a id="12219" href="Algebra.Morphism.Structures.html#2893" class="Function">ε-homo</a> <a id="12226" class="Symbol">to</a> <a id="12229" class="Function">0#-homo</a><a id="12236" class="Symbol">)</a> <a id="12238" class="Keyword">public</a>
|
|||
|
|
|||
|
<a id="12250" class="Keyword">open</a> <a id="12255" href="Algebra.Morphism.Structures.html#2764" class="Module">*.IsMonoidHomomorphism</a> <a id="12278" href="Algebra.Morphism.Structures.html#12081" class="Field">*-isMonoidHomomorphism</a> <a id="12301" class="Keyword">renaming</a>
|
|||
|
<a id="12316" class="Symbol">(</a><a id="12317" href="Algebra.Morphism.Structures.html#1246" class="Function">homo</a> <a id="12322" class="Symbol">to</a> <a id="12325" class="Function">*-homo</a><a id="12331" class="Symbol">;</a> <a id="12333" href="Algebra.Morphism.Structures.html#2893" class="Field">ε-homo</a> <a id="12340" class="Symbol">to</a> <a id="12343" class="Field">1#-homo</a><a id="12350" class="Symbol">)</a> <a id="12352" class="Keyword">public</a>
|
|||
|
|
|||
|
<a id="12362" class="Keyword">record</a> <a id="RingMorphisms.IsRingMonomorphism"></a><a id="12369" href="Algebra.Morphism.Structures.html#12369" class="Record">IsRingMonomorphism</a> <a id="12388" class="Symbol">(</a><a id="12389" href="Algebra.Morphism.Structures.html#12389" class="Bound Operator">⟦_⟧</a> <a id="12393" class="Symbol">:</a> <a id="12395" href="Algebra.Morphism.Structures.html#11547" class="Function">A</a> <a id="12397" class="Symbol">→</a> <a id="12399" href="Algebra.Morphism.Structures.html#11674" class="Field">B</a><a id="12400" class="Symbol">)</a> <a id="12402" class="Symbol">:</a> <a id="12404" href="Agda.Primitive.html#320" class="Primitive">Set</a> <a id="12408" class="Symbol">(</a><a id="12409" href="Algebra.Morphism.Structures.html#11470" class="Bound">a</a> <a id="12411" href="Agda.Primitive.html#804" class="Primitive Operator">⊔</a> <a id="12413" href="Algebra.Morphism.Structures.html#11472" class="Bound">ℓ₁</a> <a id="12416" href="Agda.Primitive.html#804" class="Primitive Operator">⊔</a> <a id="12418" href="Algebra.Morphism.Structures.html#11492" class="Bound">ℓ₂</a><a id="12420" class="Symbol">)</a> <a id="12422" class="Keyword">where</a>
|
|||
|
<a id="12432" class="Keyword">field</a>
|
|||
|
<a id="RingMorphisms.IsRingMonomorphism.isRingHomomorphism"></a><a id="12444" href="Algebra.Morphism.Structures.html#12444" class="Field">isRingHomomorphism</a> <a id="12463" class="Symbol">:</a> <a id="12465" href="Algebra.Morphism.Structures.html#11948" class="Record">IsRingHomomorphism</a> <a id="12484" href="Algebra.Morphism.Structures.html#12389" class="Bound Operator">⟦_⟧</a>
|
|||
|
<a id="RingMorphisms.IsRingMonomorphism.injective"></a><a id="12494" href="Algebra.Morphism.Structures.html#12494" class="Field">injective</a> <a id="12513" class="Symbol">:</a> <a id="12515" href="Function.Definitions.html#898" class="Function">Injective</a> <a id="12525" href="Algebra.Morphism.Structures.html#12389" class="Bound Operator">⟦_⟧</a>
|
|||
|
|
|||
|
<a id="12534" class="Keyword">open</a> <a id="12539" href="Algebra.Morphism.Structures.html#11948" class="Module">IsRingHomomorphism</a> <a id="12558" href="Algebra.Morphism.Structures.html#12444" class="Field">isRingHomomorphism</a> <a id="12577" class="Keyword">public</a>
|
|||
|
|
|||
|
<a id="RingMorphisms.IsRingMonomorphism.+-isGroupMonomorphism"></a><a id="12589" href="Algebra.Morphism.Structures.html#12589" class="Function">+-isGroupMonomorphism</a> <a id="12611" class="Symbol">:</a> <a id="12613" href="Algebra.Morphism.Structures.html#4930" class="Record">+.IsGroupMonomorphism</a> <a id="12635" href="Algebra.Morphism.Structures.html#12389" class="Bound Operator">⟦_⟧</a>
|
|||
|
<a id="12643" href="Algebra.Morphism.Structures.html#12589" class="Function">+-isGroupMonomorphism</a> <a id="12665" class="Symbol">=</a> <a id="12667" class="Keyword">record</a>
|
|||
|
<a id="12680" class="Symbol">{</a> <a id="12682" href="Algebra.Morphism.Structures.html#5006" class="Field">isGroupHomomorphism</a> <a id="12702" class="Symbol">=</a> <a id="12704" href="Algebra.Morphism.Structures.html#12023" class="Function">+-isGroupHomomorphism</a>
|
|||
|
<a id="12732" class="Symbol">;</a> <a id="12734" href="Algebra.Morphism.Structures.html#5058" class="Field">injective</a> <a id="12754" class="Symbol">=</a> <a id="12756" href="Algebra.Morphism.Structures.html#12494" class="Field">injective</a>
|
|||
|
<a id="12772" class="Symbol">}</a>
|
|||
|
|
|||
|
<a id="RingMorphisms.IsRingMonomorphism.*-isMonoidMonomorphism"></a><a id="12779" href="Algebra.Morphism.Structures.html#12779" class="Function">*-isMonoidMonomorphism</a> <a id="12802" class="Symbol">:</a> <a id="12804" href="Algebra.Morphism.Structures.html#3005" class="Record">*.IsMonoidMonomorphism</a> <a id="12827" href="Algebra.Morphism.Structures.html#12389" class="Bound Operator">⟦_⟧</a>
|
|||
|
<a id="12835" href="Algebra.Morphism.Structures.html#12779" class="Function">*-isMonoidMonomorphism</a> <a id="12858" class="Symbol">=</a> <a id="12860" class="Keyword">record</a>
|
|||
|
<a id="12873" class="Symbol">{</a> <a id="12875" href="Algebra.Morphism.Structures.html#3082" class="Field">isMonoidHomomorphism</a> <a id="12896" class="Symbol">=</a> <a id="12898" href="Algebra.Morphism.Structures.html#12081" class="Function">*-isMonoidHomomorphism</a>
|
|||
|
<a id="12927" class="Symbol">;</a> <a id="12929" href="Algebra.Morphism.Structures.html#3136" class="Field">injective</a> <a id="12950" class="Symbol">=</a> <a id="12952" href="Algebra.Morphism.Structures.html#12494" class="Field">injective</a>
|
|||
|
<a id="12968" class="Symbol">}</a>
|
|||
|
|
|||
|
<a id="12975" class="Keyword">open</a> <a id="12980" href="Algebra.Morphism.Structures.html#3005" class="Module">*.IsMonoidMonomorphism</a> <a id="13003" href="Algebra.Morphism.Structures.html#12779" class="Function">*-isMonoidMonomorphism</a> <a id="13026" class="Keyword">public</a>
|
|||
|
<a id="13039" class="Keyword">using</a> <a id="13045" class="Symbol">(</a><a id="13046" href="Algebra.Morphism.Structures.html#1614" class="Function">isRelMonomorphism</a><a id="13063" class="Symbol">)</a>
|
|||
|
|
|||
|
<a id="13068" class="Keyword">record</a> <a id="RingMorphisms.IsRingIsomorphism"></a><a id="13075" href="Algebra.Morphism.Structures.html#13075" class="Record">IsRingIsomorphism</a> <a id="13093" class="Symbol">(</a><a id="13094" href="Algebra.Morphism.Structures.html#13094" class="Bound Operator">⟦_⟧</a> <a id="13098" class="Symbol">:</a> <a id="13100" href="Algebra.Morphism.Structures.html#11547" class="Function">A</a> <a id="13102" class="Symbol">→</a> <a id="13104" href="Algebra.Morphism.Structures.html#11674" class="Field">B</a><a id="13105" class="Symbol">)</a> <a id="13107" class="Symbol">:</a> <a id="13109" href="Agda.Primitive.html#320" class="Primitive">Set</a> <a id="13113" class="Symbol">(</a><a id="13114" href="Algebra.Morphism.Structures.html#11470" class="Bound">a</a> <a id="13116" href="Agda.Primitive.html#804" class="Primitive Operator">⊔</a> <a id="13118" href="Algebra.Morphism.Structures.html#11490" class="Bound">b</a> <a id="13120" href="Agda.Primitive.html#804" class="Primitive Operator">⊔</a> <a id="13122" href="Algebra.Morphism.Structures.html#11472" class="Bound">ℓ₁</a> <a id="13125" href="Agda.Primitive.html#804" class="Primitive Operator">⊔</a> <a id="13127" href="Algebra.Morphism.Structures.html#11492" class="Bound">ℓ₂</a><a id="13129" class="Symbol">)</a> <a id="13131" class="Keyword">where</a>
|
|||
|
<a id="13141" class="Keyword">field</a>
|
|||
|
<a id="RingMorphisms.IsRingIsomorphism.isRingMonomorphism"></a><a id="13153" href="Algebra.Morphism.Structures.html#13153" class="Field">isRingMonomorphism</a> <a id="13172" class="Symbol">:</a> <a id="13174" href="Algebra.Morphism.Structures.html#12369" class="Record">IsRingMonomorphism</a> <a id="13193" href="Algebra.Morphism.Structures.html#13094" class="Bound Operator">⟦_⟧</a>
|
|||
|
<a id="RingMorphisms.IsRingIsomorphism.surjective"></a><a id="13203" href="Algebra.Morphism.Structures.html#13203" class="Field">surjective</a> <a id="13222" class="Symbol">:</a> <a id="13224" href="Function.Definitions.Core2.html#672" class="Function">Surjective</a> <a id="13235" href="Algebra.Morphism.Structures.html#13094" class="Bound Operator">⟦_⟧</a>
|
|||
|
|
|||
|
<a id="13244" class="Keyword">open</a> <a id="13249" href="Algebra.Morphism.Structures.html#12369" class="Module">IsRingMonomorphism</a> <a id="13268" href="Algebra.Morphism.Structures.html#13153" class="Field">isRingMonomorphism</a> <a id="13287" class="Keyword">public</a>
|
|||
|
|
|||
|
<a id="RingMorphisms.IsRingIsomorphism.+-isGroupIsomorphism"></a><a id="13299" href="Algebra.Morphism.Structures.html#13299" class="Function">+-isGroupIsomorphism</a> <a id="13320" class="Symbol">:</a> <a id="13322" href="Algebra.Morphism.Structures.html#5472" class="Record">+.IsGroupIsomorphism</a> <a id="13343" href="Algebra.Morphism.Structures.html#13094" class="Bound Operator">⟦_⟧</a>
|
|||
|
<a id="13351" href="Algebra.Morphism.Structures.html#13299" class="Function">+-isGroupIsomorphism</a> <a id="13372" class="Symbol">=</a> <a id="13374" class="Keyword">record</a>
|
|||
|
<a id="13387" class="Symbol">{</a> <a id="13389" href="Algebra.Morphism.Structures.html#5551" class="Field">isGroupMonomorphism</a> <a id="13409" class="Symbol">=</a> <a id="13411" href="Algebra.Morphism.Structures.html#12589" class="Function">+-isGroupMonomorphism</a>
|
|||
|
<a id="13439" class="Symbol">;</a> <a id="13441" href="Algebra.Morphism.Structures.html#5603" class="Field">surjective</a> <a id="13461" class="Symbol">=</a> <a id="13463" href="Algebra.Morphism.Structures.html#13203" class="Field">surjective</a>
|
|||
|
<a id="13480" class="Symbol">}</a>
|
|||
|
|
|||
|
<a id="RingMorphisms.IsRingIsomorphism.*-isMonoidIsomorphism"></a><a id="13487" href="Algebra.Morphism.Structures.html#13487" class="Function">*-isMonoidIsomorphism</a> <a id="13509" class="Symbol">:</a> <a id="13511" href="Algebra.Morphism.Structures.html#3514" class="Record">*.IsMonoidIsomorphism</a> <a id="13533" href="Algebra.Morphism.Structures.html#13094" class="Bound Operator">⟦_⟧</a>
|
|||
|
<a id="13541" href="Algebra.Morphism.Structures.html#13487" class="Function">*-isMonoidIsomorphism</a> <a id="13563" class="Symbol">=</a> <a id="13565" class="Keyword">record</a>
|
|||
|
<a id="13578" class="Symbol">{</a> <a id="13580" href="Algebra.Morphism.Structures.html#3594" class="Field">isMonoidMonomorphism</a> <a id="13601" class="Symbol">=</a> <a id="13603" href="Algebra.Morphism.Structures.html#12779" class="Function">*-isMonoidMonomorphism</a>
|
|||
|
<a id="13632" class="Symbol">;</a> <a id="13634" href="Algebra.Morphism.Structures.html#3648" class="Field">surjective</a> <a id="13655" class="Symbol">=</a> <a id="13657" href="Algebra.Morphism.Structures.html#13203" class="Field">surjective</a>
|
|||
|
<a id="13674" class="Symbol">}</a>
|
|||
|
|
|||
|
<a id="13681" class="Keyword">open</a> <a id="13686" href="Algebra.Morphism.Structures.html#3514" class="Module">*.IsMonoidIsomorphism</a> <a id="13708" href="Algebra.Morphism.Structures.html#13487" class="Function">*-isMonoidIsomorphism</a> <a id="13730" class="Keyword">public</a>
|
|||
|
<a id="13743" class="Keyword">using</a> <a id="13749" class="Symbol">(</a><a id="13750" href="Algebra.Morphism.Structures.html#2024" class="Function">isRelIsomorphism</a><a id="13766" class="Symbol">)</a>
|
|||
|
|
|||
|
|
|||
|
<a id="13770" class="Comment">------------------------------------------------------------------------</a>
|
|||
|
<a id="13843" class="Comment">-- Morphisms over lattice-like structures</a>
|
|||
|
<a id="13885" class="Comment">------------------------------------------------------------------------</a>
|
|||
|
|
|||
|
<a id="13959" class="Keyword">module</a> <a id="LatticeMorphisms"></a><a id="13966" href="Algebra.Morphism.Structures.html#13966" class="Module">LatticeMorphisms</a> <a id="13983" class="Symbol">(</a><a id="13984" href="Algebra.Morphism.Structures.html#13984" class="Bound">L₁</a> <a id="13987" class="Symbol">:</a> <a id="13989" href="Algebra.Bundles.html#8764" class="Record">RawLattice</a> <a id="14000" href="Algebra.Morphism.Structures.html#615" class="Generalizable">a</a> <a id="14002" href="Algebra.Morphism.Structures.html#619" class="Generalizable">ℓ₁</a><a id="14004" class="Symbol">)</a> <a id="14006" class="Symbol">(</a><a id="14007" href="Algebra.Morphism.Structures.html#14007" class="Bound">L₂</a> <a id="14010" class="Symbol">:</a> <a id="14012" href="Algebra.Bundles.html#8764" class="Record">RawLattice</a> <a id="14023" href="Algebra.Morphism.Structures.html#617" class="Generalizable">b</a> <a id="14025" href="Algebra.Morphism.Structures.html#622" class="Generalizable">ℓ₂</a><a id="14027" class="Symbol">)</a> <a id="14029" class="Keyword">where</a>
|
|||
|
|
|||
|
<a id="14038" class="Keyword">open</a> <a id="14043" href="Algebra.Bundles.html#8764" class="Module">RawLattice</a> <a id="14054" href="Algebra.Morphism.Structures.html#13984" class="Bound">L₁</a> <a id="14057" class="Keyword">renaming</a>
|
|||
|
<a id="14070" class="Symbol">(</a> <a id="14072" href="Algebra.Bundles.html#8862" class="Field">Carrier</a> <a id="14080" class="Symbol">to</a> <a id="14083" class="Field">A</a><a id="14084" class="Symbol">;</a> <a id="14086" href="Algebra.Bundles.html#8882" class="Field Operator">_≈_</a> <a id="14090" class="Symbol">to</a> <a id="14093" class="Field Operator">_≈₁_</a>
|
|||
|
<a id="14102" class="Symbol">;</a> <a id="14104" href="Algebra.Bundles.html#9037" class="Function">∧-rawMagma</a> <a id="14115" class="Symbol">to</a> <a id="14118" class="Function">∧-rawMagma₁</a>
|
|||
|
<a id="14134" class="Symbol">;</a> <a id="14136" href="Algebra.Bundles.html#8961" class="Function">∨-rawMagma</a> <a id="14147" class="Symbol">to</a> <a id="14150" class="Function">∨-rawMagma₁</a><a id="14161" class="Symbol">)</a>
|
|||
|
|
|||
|
<a id="14166" class="Keyword">open</a> <a id="14171" href="Algebra.Bundles.html#8764" class="Module">RawLattice</a> <a id="14182" href="Algebra.Morphism.Structures.html#14007" class="Bound">L₂</a> <a id="14185" class="Keyword">renaming</a>
|
|||
|
<a id="14198" class="Symbol">(</a> <a id="14200" href="Algebra.Bundles.html#8862" class="Field">Carrier</a> <a id="14208" class="Symbol">to</a> <a id="14211" class="Field">B</a><a id="14212" class="Symbol">;</a> <a id="14214" href="Algebra.Bundles.html#8882" class="Field Operator">_≈_</a> <a id="14218" class="Symbol">to</a> <a id="14221" class="Field Operator">_≈₂_</a>
|
|||
|
<a id="14230" class="Symbol">;</a> <a id="14232" href="Algebra.Bundles.html#9037" class="Function">∧-rawMagma</a> <a id="14243" class="Symbol">to</a> <a id="14246" class="Function">∧-rawMagma₂</a>
|
|||
|
<a id="14262" class="Symbol">;</a> <a id="14264" href="Algebra.Bundles.html#8961" class="Function">∨-rawMagma</a> <a id="14275" class="Symbol">to</a> <a id="14278" class="Function">∨-rawMagma₂</a><a id="14289" class="Symbol">)</a>
|
|||
|
|
|||
|
<a id="14294" class="Keyword">module</a> <a id="LatticeMorphisms.∨"></a><a id="14301" href="Algebra.Morphism.Structures.html#14301" class="Module">∨</a> <a id="14303" class="Symbol">=</a> <a id="14305" href="Algebra.Morphism.Structures.html#828" class="Module">MagmaMorphisms</a> <a id="14320" href="Algebra.Morphism.Structures.html#14150" class="Function">∨-rawMagma₁</a> <a id="14332" href="Algebra.Morphism.Structures.html#14278" class="Function">∨-rawMagma₂</a>
|
|||
|
<a id="14346" class="Keyword">module</a> <a id="LatticeMorphisms.∧"></a><a id="14353" href="Algebra.Morphism.Structures.html#14353" class="Module">∧</a> <a id="14355" class="Symbol">=</a> <a id="14357" href="Algebra.Morphism.Structures.html#828" class="Module">MagmaMorphisms</a> <a id="14372" href="Algebra.Morphism.Structures.html#14118" class="Function">∧-rawMagma₁</a> <a id="14384" href="Algebra.Morphism.Structures.html#14246" class="Function">∧-rawMagma₂</a>
|
|||
|
|
|||
|
<a id="14399" class="Keyword">open</a> <a id="14404" href="Algebra.Morphism.Definitions.html" class="Module">MorphismDefinitions</a> <a id="14424" href="Algebra.Morphism.Structures.html#14083" class="Function">A</a> <a id="14426" href="Algebra.Morphism.Structures.html#14211" class="Field">B</a> <a id="14428" href="Algebra.Morphism.Structures.html#14221" class="Field Operator">_≈₂_</a>
|
|||
|
<a id="14435" class="Keyword">open</a> <a id="14440" href="Function.Definitions.html" class="Module">FunctionDefinitions</a> <a id="14460" href="Algebra.Morphism.Structures.html#14093" class="Function Operator">_≈₁_</a> <a id="14465" href="Algebra.Morphism.Structures.html#14221" class="Field Operator">_≈₂_</a>
|
|||
|
|
|||
|
<a id="14473" class="Keyword">record</a> <a id="LatticeMorphisms.IsLatticeHomomorphism"></a><a id="14480" href="Algebra.Morphism.Structures.html#14480" class="Record">IsLatticeHomomorphism</a> <a id="14502" class="Symbol">(</a><a id="14503" href="Algebra.Morphism.Structures.html#14503" class="Bound Operator">⟦_⟧</a> <a id="14507" class="Symbol">:</a> <a id="14509" href="Algebra.Morphism.Structures.html#14083" class="Function">A</a> <a id="14511" class="Symbol">→</a> <a id="14513" href="Algebra.Morphism.Structures.html#14211" class="Field">B</a><a id="14514" class="Symbol">)</a> <a id="14516" class="Symbol">:</a> <a id="14518" href="Agda.Primitive.html#320" class="Primitive">Set</a> <a id="14522" class="Symbol">(</a><a id="14523" href="Algebra.Morphism.Structures.html#14000" class="Bound">a</a> <a id="14525" href="Agda.Primitive.html#804" class="Primitive Operator">⊔</a> <a id="14527" href="Algebra.Morphism.Structures.html#14002" class="Bound">ℓ₁</a> <a id="14530" href="Agda.Primitive.html#804" class="Primitive Operator">⊔</a> <a id="14532" href="Algebra.Morphism.Structures.html#14025" class="Bound">ℓ₂</a><a id="14534" class="Symbol">)</a> <a id="14536" class="Keyword">where</a>
|
|||
|
<a id="14546" class="Keyword">field</a>
|
|||
|
<a id="LatticeMorphisms.IsLatticeHomomorphism.∨-isMagmaHomomorphism"></a><a id="14558" href="Algebra.Morphism.Structures.html#14558" class="Field">∨-isMagmaHomomorphism</a> <a id="14580" class="Symbol">:</a> <a id="14582" href="Algebra.Morphism.Structures.html#1112" class="Record">∨.IsMagmaHomomorphism</a> <a id="14604" href="Algebra.Morphism.Structures.html#14503" class="Bound Operator">⟦_⟧</a>
|
|||
|
<a id="LatticeMorphisms.IsLatticeHomomorphism.∧-isMagmaHomomorphism"></a><a id="14614" href="Algebra.Morphism.Structures.html#14614" class="Field">∧-isMagmaHomomorphism</a> <a id="14636" class="Symbol">:</a> <a id="14638" href="Algebra.Morphism.Structures.html#1112" class="Record">∧.IsMagmaHomomorphism</a> <a id="14660" href="Algebra.Morphism.Structures.html#14503" class="Bound Operator">⟦_⟧</a>
|
|||
|
|
|||
|
<a id="14669" class="Keyword">open</a> <a id="14674" href="Algebra.Morphism.Structures.html#1112" class="Module">∨.IsMagmaHomomorphism</a> <a id="14696" href="Algebra.Morphism.Structures.html#14558" class="Field">∨-isMagmaHomomorphism</a> <a id="14718" class="Keyword">renaming</a>
|
|||
|
<a id="14733" class="Symbol">(</a><a id="14734" href="Algebra.Morphism.Structures.html#1246" class="Field">homo</a> <a id="14739" class="Symbol">to</a> <a id="14742" class="Field">∨-homo</a><a id="14748" class="Symbol">)</a> <a id="14750" class="Keyword">public</a>
|
|||
|
|
|||
|
<a id="14762" class="Keyword">open</a> <a id="14767" href="Algebra.Morphism.Structures.html#1112" class="Module">∧.IsMagmaHomomorphism</a> <a id="14789" href="Algebra.Morphism.Structures.html#14614" class="Field">∧-isMagmaHomomorphism</a> <a id="14811" class="Keyword">renaming</a>
|
|||
|
<a id="14826" class="Symbol">(</a><a id="14827" href="Algebra.Morphism.Structures.html#1246" class="Field">homo</a> <a id="14832" class="Symbol">to</a> <a id="14835" class="Field">∧-homo</a><a id="14841" class="Symbol">)</a> <a id="14843" class="Keyword">public</a>
|
|||
|
|
|||
|
<a id="14853" class="Keyword">record</a> <a id="LatticeMorphisms.IsLatticeMonomorphism"></a><a id="14860" href="Algebra.Morphism.Structures.html#14860" class="Record">IsLatticeMonomorphism</a> <a id="14882" class="Symbol">(</a><a id="14883" href="Algebra.Morphism.Structures.html#14883" class="Bound Operator">⟦_⟧</a> <a id="14887" class="Symbol">:</a> <a id="14889" href="Algebra.Morphism.Structures.html#14083" class="Function">A</a> <a id="14891" class="Symbol">→</a> <a id="14893" href="Algebra.Morphism.Structures.html#14211" class="Field">B</a><a id="14894" class="Symbol">)</a> <a id="14896" class="Symbol">:</a> <a id="14898" href="Agda.Primitive.html#320" class="Primitive">Set</a> <a id="14902" class="Symbol">(</a><a id="14903" href="Algebra.Morphism.Structures.html#14000" class="Bound">a</a> <a id="14905" href="Agda.Primitive.html#804" class="Primitive Operator">⊔</a> <a id="14907" href="Algebra.Morphism.Structures.html#14002" class="Bound">ℓ₁</a> <a id="14910" href="Agda.Primitive.html#804" class="Primitive Operator">⊔</a> <a id="14912" href="Algebra.Morphism.Structures.html#14025" class="Bound">ℓ₂</a><a id="14914" class="Symbol">)</a> <a id="14916" class="Keyword">where</a>
|
|||
|
<a id="14926" class="Keyword">field</a>
|
|||
|
<a id="LatticeMorphisms.IsLatticeMonomorphism.isLatticeHomomorphism"></a><a id="14938" href="Algebra.Morphism.Structures.html#14938" class="Field">isLatticeHomomorphism</a> <a id="14960" class="Symbol">:</a> <a id="14962" href="Algebra.Morphism.Structures.html#14480" class="Record">IsLatticeHomomorphism</a> <a id="14984" href="Algebra.Morphism.Structures.html#14883" class="Bound Operator">⟦_⟧</a>
|
|||
|
<a id="LatticeMorphisms.IsLatticeMonomorphism.injective"></a><a id="14994" href="Algebra.Morphism.Structures.html#14994" class="Field">injective</a> <a id="15016" class="Symbol">:</a> <a id="15018" href="Function.Definitions.html#898" class="Function">Injective</a> <a id="15028" href="Algebra.Morphism.Structures.html#14883" class="Bound Operator">⟦_⟧</a>
|
|||
|
|
|||
|
<a id="15037" class="Keyword">open</a> <a id="15042" href="Algebra.Morphism.Structures.html#14480" class="Module">IsLatticeHomomorphism</a> <a id="15064" href="Algebra.Morphism.Structures.html#14938" class="Field">isLatticeHomomorphism</a> <a id="15086" class="Keyword">public</a>
|
|||
|
|
|||
|
<a id="LatticeMorphisms.IsLatticeMonomorphism.∨-isMagmaMonomorphism"></a><a id="15098" href="Algebra.Morphism.Structures.html#15098" class="Function">∨-isMagmaMonomorphism</a> <a id="15120" class="Symbol">:</a> <a id="15122" href="Algebra.Morphism.Structures.html#1388" class="Record">∨.IsMagmaMonomorphism</a> <a id="15144" href="Algebra.Morphism.Structures.html#14883" class="Bound Operator">⟦_⟧</a>
|
|||
|
<a id="15152" href="Algebra.Morphism.Structures.html#15098" class="Function">∨-isMagmaMonomorphism</a> <a id="15174" class="Symbol">=</a> <a id="15176" class="Keyword">record</a>
|
|||
|
<a id="15189" class="Symbol">{</a> <a id="15191" href="Algebra.Morphism.Structures.html#1464" class="Field">isMagmaHomomorphism</a> <a id="15211" class="Symbol">=</a> <a id="15213" href="Algebra.Morphism.Structures.html#14558" class="Function">∨-isMagmaHomomorphism</a>
|
|||
|
<a id="15241" class="Symbol">;</a> <a id="15243" href="Algebra.Morphism.Structures.html#1516" class="Field">injective</a> <a id="15263" class="Symbol">=</a> <a id="15265" href="Algebra.Morphism.Structures.html#14994" class="Field">injective</a>
|
|||
|
<a id="15281" class="Symbol">}</a>
|
|||
|
|
|||
|
<a id="LatticeMorphisms.IsLatticeMonomorphism.∧-isMagmaMonomorphism"></a><a id="15288" href="Algebra.Morphism.Structures.html#15288" class="Function">∧-isMagmaMonomorphism</a> <a id="15310" class="Symbol">:</a> <a id="15312" href="Algebra.Morphism.Structures.html#1388" class="Record">∧.IsMagmaMonomorphism</a> <a id="15334" href="Algebra.Morphism.Structures.html#14883" class="Bound Operator">⟦_⟧</a>
|
|||
|
<a id="15342" href="Algebra.Morphism.Structures.html#15288" class="Function">∧-isMagmaMonomorphism</a> <a id="15364" class="Symbol">=</a> <a id="15366" class="Keyword">record</a>
|
|||
|
<a id="15379" class="Symbol">{</a> <a id="15381" href="Algebra.Morphism.Structures.html#1464" class="Field">isMagmaHomomorphism</a> <a id="15401" class="Symbol">=</a> <a id="15403" href="Algebra.Morphism.Structures.html#14614" class="Function">∧-isMagmaHomomorphism</a>
|
|||
|
<a id="15431" class="Symbol">;</a> <a id="15433" href="Algebra.Morphism.Structures.html#1516" class="Field">injective</a> <a id="15453" class="Symbol">=</a> <a id="15455" href="Algebra.Morphism.Structures.html#14994" class="Field">injective</a>
|
|||
|
<a id="15471" class="Symbol">}</a>
|
|||
|
|
|||
|
<a id="15478" class="Keyword">open</a> <a id="15483" href="Algebra.Morphism.Structures.html#1388" class="Module">∧.IsMagmaMonomorphism</a> <a id="15505" href="Algebra.Morphism.Structures.html#15288" class="Function">∧-isMagmaMonomorphism</a> <a id="15527" class="Keyword">public</a>
|
|||
|
<a id="15540" class="Keyword">using</a> <a id="15546" class="Symbol">(</a><a id="15547" href="Algebra.Morphism.Structures.html#1614" class="Function">isRelMonomorphism</a><a id="15564" class="Symbol">)</a>
|
|||
|
|
|||
|
<a id="15569" class="Keyword">record</a> <a id="LatticeMorphisms.IsLatticeIsomorphism"></a><a id="15576" href="Algebra.Morphism.Structures.html#15576" class="Record">IsLatticeIsomorphism</a> <a id="15597" class="Symbol">(</a><a id="15598" href="Algebra.Morphism.Structures.html#15598" class="Bound Operator">⟦_⟧</a> <a id="15602" class="Symbol">:</a> <a id="15604" href="Algebra.Morphism.Structures.html#14083" class="Function">A</a> <a id="15606" class="Symbol">→</a> <a id="15608" href="Algebra.Morphism.Structures.html#14211" class="Field">B</a><a id="15609" class="Symbol">)</a> <a id="15611" class="Symbol">:</a> <a id="15613" href="Agda.Primitive.html#320" class="Primitive">Set</a> <a id="15617" class="Symbol">(</a><a id="15618" href="Algebra.Morphism.Structures.html#14000" class="Bound">a</a> <a id="15620" href="Agda.Primitive.html#804" class="Primitive Operator">⊔</a> <a id="15622" href="Algebra.Morphism.Structures.html#14023" class="Bound">b</a> <a id="15624" href="Agda.Primitive.html#804" class="Primitive Operator">⊔</a> <a id="15626" href="Algebra.Morphism.Structures.html#14002" class="Bound">ℓ₁</a> <a id="15629" href="Agda.Primitive.html#804" class="Primitive Operator">⊔</a> <a id="15631" href="Algebra.Morphism.Structures.html#14025" class="Bound">ℓ₂</a><a id="15633" class="Symbol">)</a> <a id="15635" class="Keyword">where</a>
|
|||
|
<a id="15645" class="Keyword">field</a>
|
|||
|
<a id="LatticeMorphisms.IsLatticeIsomorphism.isLatticeMonomorphism"></a><a id="15657" href="Algebra.Morphism.Structures.html#15657" class="Field">isLatticeMonomorphism</a> <a id="15679" class="Symbol">:</a> <a id="15681" href="Algebra.Morphism.Structures.html#14860" class="Record">IsLatticeMonomorphism</a> <a id="15703" href="Algebra.Morphism.Structures.html#15598" class="Bound Operator">⟦_⟧</a>
|
|||
|
<a id="LatticeMorphisms.IsLatticeIsomorphism.surjective"></a><a id="15713" href="Algebra.Morphism.Structures.html#15713" class="Field">surjective</a> <a id="15735" class="Symbol">:</a> <a id="15737" href="Function.Definitions.Core2.html#672" class="Function">Surjective</a> <a id="15748" href="Algebra.Morphism.Structures.html#15598" class="Bound Operator">⟦_⟧</a>
|
|||
|
|
|||
|
<a id="15757" class="Keyword">open</a> <a id="15762" href="Algebra.Morphism.Structures.html#14860" class="Module">IsLatticeMonomorphism</a> <a id="15784" href="Algebra.Morphism.Structures.html#15657" class="Field">isLatticeMonomorphism</a> <a id="15806" class="Keyword">public</a>
|
|||
|
|
|||
|
<a id="LatticeMorphisms.IsLatticeIsomorphism.∨-isMagmaIsomorphism"></a><a id="15818" href="Algebra.Morphism.Structures.html#15818" class="Function">∨-isMagmaIsomorphism</a> <a id="15839" class="Symbol">:</a> <a id="15841" href="Algebra.Morphism.Structures.html#1794" class="Record">∨.IsMagmaIsomorphism</a> <a id="15862" href="Algebra.Morphism.Structures.html#15598" class="Bound Operator">⟦_⟧</a>
|
|||
|
<a id="15870" href="Algebra.Morphism.Structures.html#15818" class="Function">∨-isMagmaIsomorphism</a> <a id="15891" class="Symbol">=</a> <a id="15893" class="Keyword">record</a>
|
|||
|
<a id="15906" class="Symbol">{</a> <a id="15908" href="Algebra.Morphism.Structures.html#1873" class="Field">isMagmaMonomorphism</a> <a id="15928" class="Symbol">=</a> <a id="15930" href="Algebra.Morphism.Structures.html#15098" class="Function">∨-isMagmaMonomorphism</a>
|
|||
|
<a id="15958" class="Symbol">;</a> <a id="15960" href="Algebra.Morphism.Structures.html#1925" class="Field">surjective</a> <a id="15980" class="Symbol">=</a> <a id="15982" href="Algebra.Morphism.Structures.html#15713" class="Field">surjective</a>
|
|||
|
<a id="15999" class="Symbol">}</a>
|
|||
|
|
|||
|
<a id="LatticeMorphisms.IsLatticeIsomorphism.∧-isMagmaIsomorphism"></a><a id="16006" href="Algebra.Morphism.Structures.html#16006" class="Function">∧-isMagmaIsomorphism</a> <a id="16027" class="Symbol">:</a> <a id="16029" href="Algebra.Morphism.Structures.html#1794" class="Record">∧.IsMagmaIsomorphism</a> <a id="16050" href="Algebra.Morphism.Structures.html#15598" class="Bound Operator">⟦_⟧</a>
|
|||
|
<a id="16058" href="Algebra.Morphism.Structures.html#16006" class="Function">∧-isMagmaIsomorphism</a> <a id="16079" class="Symbol">=</a> <a id="16081" class="Keyword">record</a>
|
|||
|
<a id="16094" class="Symbol">{</a> <a id="16096" href="Algebra.Morphism.Structures.html#1873" class="Field">isMagmaMonomorphism</a> <a id="16116" class="Symbol">=</a> <a id="16118" href="Algebra.Morphism.Structures.html#15288" class="Function">∧-isMagmaMonomorphism</a>
|
|||
|
<a id="16146" class="Symbol">;</a> <a id="16148" href="Algebra.Morphism.Structures.html#1925" class="Field">surjective</a> <a id="16168" class="Symbol">=</a> <a id="16170" href="Algebra.Morphism.Structures.html#15713" class="Field">surjective</a>
|
|||
|
<a id="16187" class="Symbol">}</a>
|
|||
|
|
|||
|
<a id="16194" class="Keyword">open</a> <a id="16199" href="Algebra.Morphism.Structures.html#1794" class="Module">∧.IsMagmaIsomorphism</a> <a id="16220" href="Algebra.Morphism.Structures.html#16006" class="Function">∧-isMagmaIsomorphism</a> <a id="16241" class="Keyword">public</a>
|
|||
|
<a id="16254" class="Keyword">using</a> <a id="16260" class="Symbol">(</a><a id="16261" href="Algebra.Morphism.Structures.html#2024" class="Function">isRelIsomorphism</a><a id="16277" class="Symbol">)</a>
|
|||
|
|
|||
|
<a id="16280" class="Comment">------------------------------------------------------------------------</a>
|
|||
|
<a id="16353" class="Comment">-- Re-export contents of modules publicly</a>
|
|||
|
|
|||
|
<a id="16396" class="Keyword">open</a> <a id="16401" href="Algebra.Morphism.Structures.html#828" class="Module">MagmaMorphisms</a> <a id="16416" class="Keyword">public</a>
|
|||
|
<a id="16423" class="Keyword">open</a> <a id="16428" href="Algebra.Morphism.Structures.html#2388" class="Module">MonoidMorphisms</a> <a id="16444" class="Keyword">public</a>
|
|||
|
<a id="16451" class="Keyword">open</a> <a id="16456" href="Algebra.Morphism.Structures.html#4207" class="Module">GroupMorphisms</a> <a id="16471" class="Keyword">public</a>
|
|||
|
<a id="16478" class="Keyword">open</a> <a id="16483" href="Algebra.Morphism.Structures.html#6175" class="Module">NearSemiringMorphisms</a> <a id="16505" class="Keyword">public</a>
|
|||
|
<a id="16512" class="Keyword">open</a> <a id="16517" href="Algebra.Morphism.Structures.html#8818" class="Module">SemiringMorphisms</a> <a id="16535" class="Keyword">public</a>
|
|||
|
<a id="16542" class="Keyword">open</a> <a id="16547" href="Algebra.Morphism.Structures.html#11442" class="Module">RingMorphisms</a> <a id="16561" class="Keyword">public</a>
|
|||
|
<a id="16568" class="Keyword">open</a> <a id="16573" href="Algebra.Morphism.Structures.html#13966" class="Module">LatticeMorphisms</a> <a id="16590" class="Keyword">public</a>
|
|||
|
</pre></body></html>
|