mirror of
https://git8.cs.fau.de/theses/bsc-leon-vatthauer.git
synced 2024-05-31 07:28:34 +02:00
216 lines
107 KiB
HTML
216 lines
107 KiB
HTML
|
<!DOCTYPE HTML>
|
|||
|
<html><head><meta charset="utf-8"><title>Algebra.Consequences.Setoid</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">-- Relations between properties of functions, such as associativity and</a>
|
|||
|
<a id="178" class="Comment">-- commutativity, when the underlying relation is a setoid</a>
|
|||
|
<a id="237" class="Comment">------------------------------------------------------------------------</a>
|
|||
|
|
|||
|
<a id="311" class="Symbol">{-#</a> <a id="315" class="Keyword">OPTIONS</a> <a id="323" class="Pragma">--cubical-compatible</a> <a id="344" class="Pragma">--safe</a> <a id="351" class="Symbol">#-}</a>
|
|||
|
|
|||
|
<a id="356" class="Keyword">open</a> <a id="361" class="Keyword">import</a> <a id="368" href="Relation.Binary.html" class="Module">Relation.Binary</a> <a id="384" class="Keyword">using</a> <a id="390" class="Symbol">(</a><a id="391" href="Relation.Binary.Core.html#891" class="Function">Rel</a><a id="394" class="Symbol">;</a> <a id="396" href="Relation.Binary.Bundles.html#1018" class="Record">Setoid</a><a id="402" class="Symbol">;</a> <a id="404" href="Relation.Binary.Definitions.html#4378" class="Function">Substitutive</a><a id="416" class="Symbol">;</a> <a id="418" href="Relation.Binary.Definitions.html#1507" class="Function">Symmetric</a><a id="427" class="Symbol">;</a> <a id="429" href="Relation.Binary.Definitions.html#2593" class="Function">Total</a><a id="434" class="Symbol">)</a>
|
|||
|
|
|||
|
<a id="437" class="Keyword">module</a> <a id="444" href="Algebra.Consequences.Setoid.html" class="Module">Algebra.Consequences.Setoid</a> <a id="472" class="Symbol">{</a><a id="473" href="Algebra.Consequences.Setoid.html#473" class="Bound">a</a> <a id="475" href="Algebra.Consequences.Setoid.html#475" class="Bound">ℓ</a><a id="476" class="Symbol">}</a> <a id="478" class="Symbol">(</a><a id="479" href="Algebra.Consequences.Setoid.html#479" class="Bound">S</a> <a id="481" class="Symbol">:</a> <a id="483" href="Relation.Binary.Bundles.html#1018" class="Record">Setoid</a> <a id="490" href="Algebra.Consequences.Setoid.html#473" class="Bound">a</a> <a id="492" href="Algebra.Consequences.Setoid.html#475" class="Bound">ℓ</a><a id="493" class="Symbol">)</a> <a id="495" class="Keyword">where</a>
|
|||
|
|
|||
|
<a id="502" class="Keyword">open</a> <a id="507" href="Relation.Binary.Bundles.html#1018" class="Module">Setoid</a> <a id="514" href="Algebra.Consequences.Setoid.html#479" class="Bound">S</a> <a id="516" class="Keyword">renaming</a> <a id="525" class="Symbol">(</a><a id="526" href="Relation.Binary.Bundles.html#1081" class="Field">Carrier</a> <a id="534" class="Symbol">to</a> <a id="537" class="Field">A</a><a id="538" class="Symbol">)</a>
|
|||
|
<a id="540" class="Keyword">open</a> <a id="545" class="Keyword">import</a> <a id="552" href="Algebra.Core.html" class="Module">Algebra.Core</a>
|
|||
|
<a id="565" class="Keyword">open</a> <a id="570" class="Keyword">import</a> <a id="577" href="Algebra.Definitions.html" class="Module">Algebra.Definitions</a> <a id="597" href="Relation.Binary.Bundles.html#1107" class="Field Operator">_≈_</a>
|
|||
|
<a id="601" class="Keyword">open</a> <a id="606" class="Keyword">import</a> <a id="613" href="Data.Sum.Base.html" class="Module">Data.Sum.Base</a> <a id="627" class="Keyword">using</a> <a id="633" class="Symbol">(</a><a id="634" href="Data.Sum.Base.html#793" class="InductiveConstructor">inj₁</a><a id="638" class="Symbol">;</a> <a id="640" href="Data.Sum.Base.html#818" class="InductiveConstructor">inj₂</a><a id="644" class="Symbol">)</a>
|
|||
|
<a id="646" class="Keyword">open</a> <a id="651" class="Keyword">import</a> <a id="658" href="Data.Product.html" class="Module">Data.Product</a> <a id="671" class="Keyword">using</a> <a id="677" class="Symbol">(</a><a id="678" href="Agda.Builtin.Sigma.html#218" class="InductiveConstructor Operator">_,_</a><a id="681" class="Symbol">)</a>
|
|||
|
<a id="683" class="Keyword">open</a> <a id="688" class="Keyword">import</a> <a id="695" href="Function.Base.html" class="Module">Function.Base</a> <a id="709" class="Keyword">using</a> <a id="715" class="Symbol">(</a><a id="716" href="Function.Base.html#1928" class="Function Operator">_$_</a><a id="719" class="Symbol">)</a>
|
|||
|
<a id="721" class="Keyword">import</a> <a id="728" href="Relation.Binary.Consequences.html" class="Module">Relation.Binary.Consequences</a> <a id="757" class="Symbol">as</a> <a id="760" class="Module">Bin</a>
|
|||
|
<a id="764" class="Keyword">open</a> <a id="769" class="Keyword">import</a> <a id="776" href="Relation.Binary.Reasoning.Setoid.html" class="Module">Relation.Binary.Reasoning.Setoid</a> <a id="809" href="Algebra.Consequences.Setoid.html#479" class="Bound">S</a>
|
|||
|
<a id="811" class="Keyword">open</a> <a id="816" class="Keyword">import</a> <a id="823" href="Relation.Unary.html" class="Module">Relation.Unary</a> <a id="838" class="Keyword">using</a> <a id="844" class="Symbol">(</a><a id="845" href="Relation.Unary.html#1110" class="Function">Pred</a><a id="849" class="Symbol">)</a>
|
|||
|
|
|||
|
<a id="852" class="Comment">------------------------------------------------------------------------</a>
|
|||
|
<a id="925" class="Comment">-- Re-exports</a>
|
|||
|
|
|||
|
<a id="940" class="Comment">-- Export base lemmas that don't require the setoid</a>
|
|||
|
|
|||
|
<a id="993" class="Keyword">open</a> <a id="998" class="Keyword">import</a> <a id="1005" href="Algebra.Consequences.Base.html" class="Module">Algebra.Consequences.Base</a> <a id="1031" class="Keyword">public</a>
|
|||
|
|
|||
|
<a id="1039" class="Comment">------------------------------------------------------------------------</a>
|
|||
|
<a id="1112" class="Comment">-- Magma-like structures</a>
|
|||
|
|
|||
|
<a id="1138" class="Keyword">module</a> <a id="1145" href="Algebra.Consequences.Setoid.html#1145" class="Module">_</a> <a id="1147" class="Symbol">{</a><a id="1148" href="Algebra.Consequences.Setoid.html#1148" class="Bound Operator">_•_</a> <a id="1152" class="Symbol">:</a> <a id="1154" href="Algebra.Core.html#527" class="Function">Op₂</a> <a id="1158" href="Algebra.Consequences.Setoid.html#537" class="Field">A</a><a id="1159" class="Symbol">}</a> <a id="1161" class="Symbol">(</a><a id="1162" href="Algebra.Consequences.Setoid.html#1162" class="Bound">comm</a> <a id="1167" class="Symbol">:</a> <a id="1169" href="Algebra.Definitions.html#1204" class="Function">Commutative</a> <a id="1181" href="Algebra.Consequences.Setoid.html#1148" class="Bound Operator">_•_</a><a id="1184" class="Symbol">)</a> <a id="1186" class="Keyword">where</a>
|
|||
|
|
|||
|
<a id="1195" href="Algebra.Consequences.Setoid.html#1195" class="Function">comm+cancelˡ⇒cancelʳ</a> <a id="1216" class="Symbol">:</a> <a id="1218" href="Algebra.Definitions.html#3091" class="Function">LeftCancellative</a> <a id="1235" href="Algebra.Consequences.Setoid.html#1148" class="Bound Operator">_•_</a> <a id="1239" class="Symbol">→</a> <a id="1241" href="Algebra.Definitions.html#3186" class="Function">RightCancellative</a> <a id="1259" href="Algebra.Consequences.Setoid.html#1148" class="Bound Operator">_•_</a>
|
|||
|
<a id="1265" href="Algebra.Consequences.Setoid.html#1195" class="Function">comm+cancelˡ⇒cancelʳ</a> <a id="1286" href="Algebra.Consequences.Setoid.html#1286" class="Bound">cancelˡ</a> <a id="1294" class="Symbol">{</a><a id="1295" href="Algebra.Consequences.Setoid.html#1295" class="Bound">x</a><a id="1296" class="Symbol">}</a> <a id="1298" href="Algebra.Consequences.Setoid.html#1298" class="Bound">y</a> <a id="1300" href="Algebra.Consequences.Setoid.html#1300" class="Bound">z</a> <a id="1302" href="Algebra.Consequences.Setoid.html#1302" class="Bound">eq</a> <a id="1305" class="Symbol">=</a> <a id="1307" href="Algebra.Consequences.Setoid.html#1286" class="Bound">cancelˡ</a> <a id="1315" href="Algebra.Consequences.Setoid.html#1295" class="Bound">x</a> <a id="1317" href="Function.Base.html#1928" class="Function Operator">$</a> <a id="1319" href="Relation.Binary.Reasoning.Base.Single.html#1925" class="Function Operator">begin</a>
|
|||
|
<a id="1329" href="Algebra.Consequences.Setoid.html#1295" class="Bound">x</a> <a id="1331" href="Algebra.Consequences.Setoid.html#1148" class="Bound Operator">•</a> <a id="1333" href="Algebra.Consequences.Setoid.html#1298" class="Bound">y</a> <a id="1335" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">≈⟨</a> <a id="1338" href="Algebra.Consequences.Setoid.html#1162" class="Bound">comm</a> <a id="1343" href="Algebra.Consequences.Setoid.html#1295" class="Bound">x</a> <a id="1345" href="Algebra.Consequences.Setoid.html#1298" class="Bound">y</a> <a id="1347" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">⟩</a>
|
|||
|
<a id="1353" href="Algebra.Consequences.Setoid.html#1298" class="Bound">y</a> <a id="1355" href="Algebra.Consequences.Setoid.html#1148" class="Bound Operator">•</a> <a id="1357" href="Algebra.Consequences.Setoid.html#1295" class="Bound">x</a> <a id="1359" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">≈⟨</a> <a id="1362" href="Algebra.Consequences.Setoid.html#1302" class="Bound">eq</a> <a id="1365" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">⟩</a>
|
|||
|
<a id="1371" href="Algebra.Consequences.Setoid.html#1300" class="Bound">z</a> <a id="1373" href="Algebra.Consequences.Setoid.html#1148" class="Bound Operator">•</a> <a id="1375" href="Algebra.Consequences.Setoid.html#1295" class="Bound">x</a> <a id="1377" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">≈⟨</a> <a id="1380" href="Algebra.Consequences.Setoid.html#1162" class="Bound">comm</a> <a id="1385" href="Algebra.Consequences.Setoid.html#1300" class="Bound">z</a> <a id="1387" href="Algebra.Consequences.Setoid.html#1295" class="Bound">x</a> <a id="1389" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">⟩</a>
|
|||
|
<a id="1395" href="Algebra.Consequences.Setoid.html#1295" class="Bound">x</a> <a id="1397" href="Algebra.Consequences.Setoid.html#1148" class="Bound Operator">•</a> <a id="1399" href="Algebra.Consequences.Setoid.html#1300" class="Bound">z</a> <a id="1401" href="Relation.Binary.Reasoning.Base.Single.html#2564" class="Function Operator">∎</a>
|
|||
|
|
|||
|
<a id="1406" href="Algebra.Consequences.Setoid.html#1406" class="Function">comm+cancelʳ⇒cancelˡ</a> <a id="1427" class="Symbol">:</a> <a id="1429" href="Algebra.Definitions.html#3186" class="Function">RightCancellative</a> <a id="1447" href="Algebra.Consequences.Setoid.html#1148" class="Bound Operator">_•_</a> <a id="1451" class="Symbol">→</a> <a id="1453" href="Algebra.Definitions.html#3091" class="Function">LeftCancellative</a> <a id="1470" href="Algebra.Consequences.Setoid.html#1148" class="Bound Operator">_•_</a>
|
|||
|
<a id="1476" href="Algebra.Consequences.Setoid.html#1406" class="Function">comm+cancelʳ⇒cancelˡ</a> <a id="1497" href="Algebra.Consequences.Setoid.html#1497" class="Bound">cancelʳ</a> <a id="1505" href="Algebra.Consequences.Setoid.html#1505" class="Bound">x</a> <a id="1507" class="Symbol">{</a><a id="1508" href="Algebra.Consequences.Setoid.html#1508" class="Bound">y</a><a id="1509" class="Symbol">}</a> <a id="1511" class="Symbol">{</a><a id="1512" href="Algebra.Consequences.Setoid.html#1512" class="Bound">z</a><a id="1513" class="Symbol">}</a> <a id="1515" href="Algebra.Consequences.Setoid.html#1515" class="Bound">eq</a> <a id="1518" class="Symbol">=</a> <a id="1520" href="Algebra.Consequences.Setoid.html#1497" class="Bound">cancelʳ</a> <a id="1528" href="Algebra.Consequences.Setoid.html#1508" class="Bound">y</a> <a id="1530" href="Algebra.Consequences.Setoid.html#1512" class="Bound">z</a> <a id="1532" href="Function.Base.html#1928" class="Function Operator">$</a> <a id="1534" href="Relation.Binary.Reasoning.Base.Single.html#1925" class="Function Operator">begin</a>
|
|||
|
<a id="1544" href="Algebra.Consequences.Setoid.html#1508" class="Bound">y</a> <a id="1546" href="Algebra.Consequences.Setoid.html#1148" class="Bound Operator">•</a> <a id="1548" href="Algebra.Consequences.Setoid.html#1505" class="Bound">x</a> <a id="1550" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">≈⟨</a> <a id="1553" href="Algebra.Consequences.Setoid.html#1162" class="Bound">comm</a> <a id="1558" href="Algebra.Consequences.Setoid.html#1508" class="Bound">y</a> <a id="1560" href="Algebra.Consequences.Setoid.html#1505" class="Bound">x</a> <a id="1562" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">⟩</a>
|
|||
|
<a id="1568" href="Algebra.Consequences.Setoid.html#1505" class="Bound">x</a> <a id="1570" href="Algebra.Consequences.Setoid.html#1148" class="Bound Operator">•</a> <a id="1572" href="Algebra.Consequences.Setoid.html#1508" class="Bound">y</a> <a id="1574" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">≈⟨</a> <a id="1577" href="Algebra.Consequences.Setoid.html#1515" class="Bound">eq</a> <a id="1580" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">⟩</a>
|
|||
|
<a id="1586" href="Algebra.Consequences.Setoid.html#1505" class="Bound">x</a> <a id="1588" href="Algebra.Consequences.Setoid.html#1148" class="Bound Operator">•</a> <a id="1590" href="Algebra.Consequences.Setoid.html#1512" class="Bound">z</a> <a id="1592" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">≈⟨</a> <a id="1595" href="Algebra.Consequences.Setoid.html#1162" class="Bound">comm</a> <a id="1600" href="Algebra.Consequences.Setoid.html#1505" class="Bound">x</a> <a id="1602" href="Algebra.Consequences.Setoid.html#1512" class="Bound">z</a> <a id="1604" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">⟩</a>
|
|||
|
<a id="1610" href="Algebra.Consequences.Setoid.html#1512" class="Bound">z</a> <a id="1612" href="Algebra.Consequences.Setoid.html#1148" class="Bound Operator">•</a> <a id="1614" href="Algebra.Consequences.Setoid.html#1505" class="Bound">x</a> <a id="1616" href="Relation.Binary.Reasoning.Base.Single.html#2564" class="Function Operator">∎</a>
|
|||
|
|
|||
|
<a id="1619" class="Comment">------------------------------------------------------------------------</a>
|
|||
|
<a id="1692" class="Comment">-- Monoid-like structures</a>
|
|||
|
|
|||
|
<a id="1719" class="Keyword">module</a> <a id="1726" href="Algebra.Consequences.Setoid.html#1726" class="Module">_</a> <a id="1728" class="Symbol">{</a><a id="1729" href="Algebra.Consequences.Setoid.html#1729" class="Bound Operator">_•_</a> <a id="1733" class="Symbol">:</a> <a id="1735" href="Algebra.Core.html#527" class="Function">Op₂</a> <a id="1739" href="Algebra.Consequences.Setoid.html#537" class="Field">A</a><a id="1740" class="Symbol">}</a> <a id="1742" class="Symbol">(</a><a id="1743" href="Algebra.Consequences.Setoid.html#1743" class="Bound">comm</a> <a id="1748" class="Symbol">:</a> <a id="1750" href="Algebra.Definitions.html#1204" class="Function">Commutative</a> <a id="1762" href="Algebra.Consequences.Setoid.html#1729" class="Bound Operator">_•_</a><a id="1765" class="Symbol">)</a> <a id="1767" class="Symbol">{</a><a id="1768" href="Algebra.Consequences.Setoid.html#1768" class="Bound">e</a> <a id="1770" class="Symbol">:</a> <a id="1772" href="Algebra.Consequences.Setoid.html#537" class="Field">A</a><a id="1773" class="Symbol">}</a> <a id="1775" class="Keyword">where</a>
|
|||
|
|
|||
|
<a id="1784" href="Algebra.Consequences.Setoid.html#1784" class="Function">comm+idˡ⇒idʳ</a> <a id="1797" class="Symbol">:</a> <a id="1799" href="Algebra.Definitions.html#1277" class="Function">LeftIdentity</a> <a id="1812" href="Algebra.Consequences.Setoid.html#1768" class="Bound">e</a> <a id="1814" href="Algebra.Consequences.Setoid.html#1729" class="Bound Operator">_•_</a> <a id="1818" class="Symbol">→</a> <a id="1820" href="Algebra.Definitions.html#1350" class="Function">RightIdentity</a> <a id="1834" href="Algebra.Consequences.Setoid.html#1768" class="Bound">e</a> <a id="1836" href="Algebra.Consequences.Setoid.html#1729" class="Bound Operator">_•_</a>
|
|||
|
<a id="1842" href="Algebra.Consequences.Setoid.html#1784" class="Function">comm+idˡ⇒idʳ</a> <a id="1855" href="Algebra.Consequences.Setoid.html#1855" class="Bound">idˡ</a> <a id="1859" href="Algebra.Consequences.Setoid.html#1859" class="Bound">x</a> <a id="1861" class="Symbol">=</a> <a id="1863" href="Relation.Binary.Reasoning.Base.Single.html#1925" class="Function Operator">begin</a>
|
|||
|
<a id="1873" href="Algebra.Consequences.Setoid.html#1859" class="Bound">x</a> <a id="1875" href="Algebra.Consequences.Setoid.html#1729" class="Bound Operator">•</a> <a id="1877" href="Algebra.Consequences.Setoid.html#1768" class="Bound">e</a> <a id="1879" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">≈⟨</a> <a id="1882" href="Algebra.Consequences.Setoid.html#1743" class="Bound">comm</a> <a id="1887" href="Algebra.Consequences.Setoid.html#1859" class="Bound">x</a> <a id="1889" href="Algebra.Consequences.Setoid.html#1768" class="Bound">e</a> <a id="1891" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">⟩</a>
|
|||
|
<a id="1897" href="Algebra.Consequences.Setoid.html#1768" class="Bound">e</a> <a id="1899" href="Algebra.Consequences.Setoid.html#1729" class="Bound Operator">•</a> <a id="1901" href="Algebra.Consequences.Setoid.html#1859" class="Bound">x</a> <a id="1903" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">≈⟨</a> <a id="1906" href="Algebra.Consequences.Setoid.html#1855" class="Bound">idˡ</a> <a id="1910" href="Algebra.Consequences.Setoid.html#1859" class="Bound">x</a> <a id="1912" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">⟩</a>
|
|||
|
<a id="1918" href="Algebra.Consequences.Setoid.html#1859" class="Bound">x</a> <a id="1924" href="Relation.Binary.Reasoning.Base.Single.html#2564" class="Function Operator">∎</a>
|
|||
|
|
|||
|
<a id="1929" href="Algebra.Consequences.Setoid.html#1929" class="Function">comm+idʳ⇒idˡ</a> <a id="1942" class="Symbol">:</a> <a id="1944" href="Algebra.Definitions.html#1350" class="Function">RightIdentity</a> <a id="1958" href="Algebra.Consequences.Setoid.html#1768" class="Bound">e</a> <a id="1960" href="Algebra.Consequences.Setoid.html#1729" class="Bound Operator">_•_</a> <a id="1964" class="Symbol">→</a> <a id="1966" href="Algebra.Definitions.html#1277" class="Function">LeftIdentity</a> <a id="1979" href="Algebra.Consequences.Setoid.html#1768" class="Bound">e</a> <a id="1981" href="Algebra.Consequences.Setoid.html#1729" class="Bound Operator">_•_</a>
|
|||
|
<a id="1987" href="Algebra.Consequences.Setoid.html#1929" class="Function">comm+idʳ⇒idˡ</a> <a id="2000" href="Algebra.Consequences.Setoid.html#2000" class="Bound">idʳ</a> <a id="2004" href="Algebra.Consequences.Setoid.html#2004" class="Bound">x</a> <a id="2006" class="Symbol">=</a> <a id="2008" href="Relation.Binary.Reasoning.Base.Single.html#1925" class="Function Operator">begin</a>
|
|||
|
<a id="2018" href="Algebra.Consequences.Setoid.html#1768" class="Bound">e</a> <a id="2020" href="Algebra.Consequences.Setoid.html#1729" class="Bound Operator">•</a> <a id="2022" href="Algebra.Consequences.Setoid.html#2004" class="Bound">x</a> <a id="2024" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">≈⟨</a> <a id="2027" href="Algebra.Consequences.Setoid.html#1743" class="Bound">comm</a> <a id="2032" href="Algebra.Consequences.Setoid.html#1768" class="Bound">e</a> <a id="2034" href="Algebra.Consequences.Setoid.html#2004" class="Bound">x</a> <a id="2036" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">⟩</a>
|
|||
|
<a id="2042" href="Algebra.Consequences.Setoid.html#2004" class="Bound">x</a> <a id="2044" href="Algebra.Consequences.Setoid.html#1729" class="Bound Operator">•</a> <a id="2046" href="Algebra.Consequences.Setoid.html#1768" class="Bound">e</a> <a id="2048" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">≈⟨</a> <a id="2051" href="Algebra.Consequences.Setoid.html#2000" class="Bound">idʳ</a> <a id="2055" href="Algebra.Consequences.Setoid.html#2004" class="Bound">x</a> <a id="2057" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">⟩</a>
|
|||
|
<a id="2063" href="Algebra.Consequences.Setoid.html#2004" class="Bound">x</a> <a id="2069" href="Relation.Binary.Reasoning.Base.Single.html#2564" class="Function Operator">∎</a>
|
|||
|
|
|||
|
<a id="2074" href="Algebra.Consequences.Setoid.html#2074" class="Function">comm+zeˡ⇒zeʳ</a> <a id="2087" class="Symbol">:</a> <a id="2089" href="Algebra.Definitions.html#1511" class="Function">LeftZero</a> <a id="2098" href="Algebra.Consequences.Setoid.html#1768" class="Bound">e</a> <a id="2100" href="Algebra.Consequences.Setoid.html#1729" class="Bound Operator">_•_</a> <a id="2104" class="Symbol">→</a> <a id="2106" href="Algebra.Definitions.html#1576" class="Function">RightZero</a> <a id="2116" href="Algebra.Consequences.Setoid.html#1768" class="Bound">e</a> <a id="2118" href="Algebra.Consequences.Setoid.html#1729" class="Bound Operator">_•_</a>
|
|||
|
<a id="2124" href="Algebra.Consequences.Setoid.html#2074" class="Function">comm+zeˡ⇒zeʳ</a> <a id="2137" href="Algebra.Consequences.Setoid.html#2137" class="Bound">zeˡ</a> <a id="2141" href="Algebra.Consequences.Setoid.html#2141" class="Bound">x</a> <a id="2143" class="Symbol">=</a> <a id="2145" href="Relation.Binary.Reasoning.Base.Single.html#1925" class="Function Operator">begin</a>
|
|||
|
<a id="2155" href="Algebra.Consequences.Setoid.html#2141" class="Bound">x</a> <a id="2157" href="Algebra.Consequences.Setoid.html#1729" class="Bound Operator">•</a> <a id="2159" href="Algebra.Consequences.Setoid.html#1768" class="Bound">e</a> <a id="2161" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">≈⟨</a> <a id="2164" href="Algebra.Consequences.Setoid.html#1743" class="Bound">comm</a> <a id="2169" href="Algebra.Consequences.Setoid.html#2141" class="Bound">x</a> <a id="2171" href="Algebra.Consequences.Setoid.html#1768" class="Bound">e</a> <a id="2173" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">⟩</a>
|
|||
|
<a id="2179" href="Algebra.Consequences.Setoid.html#1768" class="Bound">e</a> <a id="2181" href="Algebra.Consequences.Setoid.html#1729" class="Bound Operator">•</a> <a id="2183" href="Algebra.Consequences.Setoid.html#2141" class="Bound">x</a> <a id="2185" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">≈⟨</a> <a id="2188" href="Algebra.Consequences.Setoid.html#2137" class="Bound">zeˡ</a> <a id="2192" href="Algebra.Consequences.Setoid.html#2141" class="Bound">x</a> <a id="2194" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">⟩</a>
|
|||
|
<a id="2200" href="Algebra.Consequences.Setoid.html#1768" class="Bound">e</a> <a id="2206" href="Relation.Binary.Reasoning.Base.Single.html#2564" class="Function Operator">∎</a>
|
|||
|
|
|||
|
<a id="2211" href="Algebra.Consequences.Setoid.html#2211" class="Function">comm+zeʳ⇒zeˡ</a> <a id="2224" class="Symbol">:</a> <a id="2226" href="Algebra.Definitions.html#1576" class="Function">RightZero</a> <a id="2236" href="Algebra.Consequences.Setoid.html#1768" class="Bound">e</a> <a id="2238" href="Algebra.Consequences.Setoid.html#1729" class="Bound Operator">_•_</a> <a id="2242" class="Symbol">→</a> <a id="2244" href="Algebra.Definitions.html#1511" class="Function">LeftZero</a> <a id="2253" href="Algebra.Consequences.Setoid.html#1768" class="Bound">e</a> <a id="2255" href="Algebra.Consequences.Setoid.html#1729" class="Bound Operator">_•_</a>
|
|||
|
<a id="2261" href="Algebra.Consequences.Setoid.html#2211" class="Function">comm+zeʳ⇒zeˡ</a> <a id="2274" href="Algebra.Consequences.Setoid.html#2274" class="Bound">zeʳ</a> <a id="2278" href="Algebra.Consequences.Setoid.html#2278" class="Bound">x</a> <a id="2280" class="Symbol">=</a> <a id="2282" href="Relation.Binary.Reasoning.Base.Single.html#1925" class="Function Operator">begin</a>
|
|||
|
<a id="2292" href="Algebra.Consequences.Setoid.html#1768" class="Bound">e</a> <a id="2294" href="Algebra.Consequences.Setoid.html#1729" class="Bound Operator">•</a> <a id="2296" href="Algebra.Consequences.Setoid.html#2278" class="Bound">x</a> <a id="2298" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">≈⟨</a> <a id="2301" href="Algebra.Consequences.Setoid.html#1743" class="Bound">comm</a> <a id="2306" href="Algebra.Consequences.Setoid.html#1768" class="Bound">e</a> <a id="2308" href="Algebra.Consequences.Setoid.html#2278" class="Bound">x</a> <a id="2310" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">⟩</a>
|
|||
|
<a id="2316" href="Algebra.Consequences.Setoid.html#2278" class="Bound">x</a> <a id="2318" href="Algebra.Consequences.Setoid.html#1729" class="Bound Operator">•</a> <a id="2320" href="Algebra.Consequences.Setoid.html#1768" class="Bound">e</a> <a id="2322" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">≈⟨</a> <a id="2325" href="Algebra.Consequences.Setoid.html#2274" class="Bound">zeʳ</a> <a id="2329" href="Algebra.Consequences.Setoid.html#2278" class="Bound">x</a> <a id="2331" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">⟩</a>
|
|||
|
<a id="2337" href="Algebra.Consequences.Setoid.html#1768" class="Bound">e</a> <a id="2343" href="Relation.Binary.Reasoning.Base.Single.html#2564" class="Function Operator">∎</a>
|
|||
|
|
|||
|
<a id="2348" href="Algebra.Consequences.Setoid.html#2348" class="Function">comm+almostCancelˡ⇒almostCancelʳ</a> <a id="2381" class="Symbol">:</a> <a id="2383" href="Algebra.Definitions.html#3381" class="Function">AlmostLeftCancellative</a> <a id="2406" href="Algebra.Consequences.Setoid.html#1768" class="Bound">e</a> <a id="2408" href="Algebra.Consequences.Setoid.html#1729" class="Bound Operator">_•_</a> <a id="2412" class="Symbol">→</a>
|
|||
|
<a id="2451" href="Algebra.Definitions.html#3504" class="Function">AlmostRightCancellative</a> <a id="2475" href="Algebra.Consequences.Setoid.html#1768" class="Bound">e</a> <a id="2477" href="Algebra.Consequences.Setoid.html#1729" class="Bound Operator">_•_</a>
|
|||
|
<a id="2483" href="Algebra.Consequences.Setoid.html#2348" class="Function">comm+almostCancelˡ⇒almostCancelʳ</a> <a id="2516" href="Algebra.Consequences.Setoid.html#2516" class="Bound">cancelˡ-nonZero</a> <a id="2532" class="Symbol">{</a><a id="2533" href="Algebra.Consequences.Setoid.html#2533" class="Bound">x</a><a id="2534" class="Symbol">}</a> <a id="2536" href="Algebra.Consequences.Setoid.html#2536" class="Bound">y</a> <a id="2538" href="Algebra.Consequences.Setoid.html#2538" class="Bound">z</a> <a id="2540" href="Algebra.Consequences.Setoid.html#2540" class="Bound">x≉e</a> <a id="2544" href="Algebra.Consequences.Setoid.html#2544" class="Bound">yx≈zx</a> <a id="2550" class="Symbol">=</a>
|
|||
|
<a id="2556" href="Algebra.Consequences.Setoid.html#2516" class="Bound">cancelˡ-nonZero</a> <a id="2572" href="Algebra.Consequences.Setoid.html#2536" class="Bound">y</a> <a id="2574" href="Algebra.Consequences.Setoid.html#2538" class="Bound">z</a> <a id="2576" href="Algebra.Consequences.Setoid.html#2540" class="Bound">x≉e</a> <a id="2580" href="Function.Base.html#1928" class="Function Operator">$</a> <a id="2582" href="Relation.Binary.Reasoning.Base.Single.html#1925" class="Function Operator">begin</a>
|
|||
|
<a id="2594" href="Algebra.Consequences.Setoid.html#2533" class="Bound">x</a> <a id="2596" href="Algebra.Consequences.Setoid.html#1729" class="Bound Operator">•</a> <a id="2598" href="Algebra.Consequences.Setoid.html#2536" class="Bound">y</a> <a id="2600" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">≈⟨</a> <a id="2603" href="Algebra.Consequences.Setoid.html#1743" class="Bound">comm</a> <a id="2608" href="Algebra.Consequences.Setoid.html#2533" class="Bound">x</a> <a id="2610" href="Algebra.Consequences.Setoid.html#2536" class="Bound">y</a> <a id="2612" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">⟩</a>
|
|||
|
<a id="2620" href="Algebra.Consequences.Setoid.html#2536" class="Bound">y</a> <a id="2622" href="Algebra.Consequences.Setoid.html#1729" class="Bound Operator">•</a> <a id="2624" href="Algebra.Consequences.Setoid.html#2533" class="Bound">x</a> <a id="2626" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">≈⟨</a> <a id="2629" href="Algebra.Consequences.Setoid.html#2544" class="Bound">yx≈zx</a> <a id="2635" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">⟩</a>
|
|||
|
<a id="2643" href="Algebra.Consequences.Setoid.html#2538" class="Bound">z</a> <a id="2645" href="Algebra.Consequences.Setoid.html#1729" class="Bound Operator">•</a> <a id="2647" href="Algebra.Consequences.Setoid.html#2533" class="Bound">x</a> <a id="2649" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">≈⟨</a> <a id="2652" href="Algebra.Consequences.Setoid.html#1743" class="Bound">comm</a> <a id="2657" href="Algebra.Consequences.Setoid.html#2538" class="Bound">z</a> <a id="2659" href="Algebra.Consequences.Setoid.html#2533" class="Bound">x</a> <a id="2661" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">⟩</a>
|
|||
|
<a id="2669" href="Algebra.Consequences.Setoid.html#2533" class="Bound">x</a> <a id="2671" href="Algebra.Consequences.Setoid.html#1729" class="Bound Operator">•</a> <a id="2673" href="Algebra.Consequences.Setoid.html#2538" class="Bound">z</a> <a id="2675" href="Relation.Binary.Reasoning.Base.Single.html#2564" class="Function Operator">∎</a>
|
|||
|
|
|||
|
<a id="2680" href="Algebra.Consequences.Setoid.html#2680" class="Function">comm+almostCancelʳ⇒almostCancelˡ</a> <a id="2713" class="Symbol">:</a> <a id="2715" href="Algebra.Definitions.html#3504" class="Function">AlmostRightCancellative</a> <a id="2739" href="Algebra.Consequences.Setoid.html#1768" class="Bound">e</a> <a id="2741" href="Algebra.Consequences.Setoid.html#1729" class="Bound Operator">_•_</a> <a id="2745" class="Symbol">→</a>
|
|||
|
<a id="2784" href="Algebra.Definitions.html#3381" class="Function">AlmostLeftCancellative</a> <a id="2807" href="Algebra.Consequences.Setoid.html#1768" class="Bound">e</a> <a id="2809" href="Algebra.Consequences.Setoid.html#1729" class="Bound Operator">_•_</a>
|
|||
|
<a id="2815" href="Algebra.Consequences.Setoid.html#2680" class="Function">comm+almostCancelʳ⇒almostCancelˡ</a> <a id="2848" href="Algebra.Consequences.Setoid.html#2848" class="Bound">cancelʳ-nonZero</a> <a id="2864" class="Symbol">{</a><a id="2865" href="Algebra.Consequences.Setoid.html#2865" class="Bound">x</a><a id="2866" class="Symbol">}</a> <a id="2868" href="Algebra.Consequences.Setoid.html#2868" class="Bound">y</a> <a id="2870" href="Algebra.Consequences.Setoid.html#2870" class="Bound">z</a> <a id="2872" href="Algebra.Consequences.Setoid.html#2872" class="Bound">x≉e</a> <a id="2876" href="Algebra.Consequences.Setoid.html#2876" class="Bound">xy≈xz</a> <a id="2882" class="Symbol">=</a>
|
|||
|
<a id="2888" href="Algebra.Consequences.Setoid.html#2848" class="Bound">cancelʳ-nonZero</a> <a id="2904" href="Algebra.Consequences.Setoid.html#2868" class="Bound">y</a> <a id="2906" href="Algebra.Consequences.Setoid.html#2870" class="Bound">z</a> <a id="2908" href="Algebra.Consequences.Setoid.html#2872" class="Bound">x≉e</a> <a id="2912" href="Function.Base.html#1928" class="Function Operator">$</a> <a id="2914" href="Relation.Binary.Reasoning.Base.Single.html#1925" class="Function Operator">begin</a>
|
|||
|
<a id="2926" href="Algebra.Consequences.Setoid.html#2868" class="Bound">y</a> <a id="2928" href="Algebra.Consequences.Setoid.html#1729" class="Bound Operator">•</a> <a id="2930" href="Algebra.Consequences.Setoid.html#2865" class="Bound">x</a> <a id="2932" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">≈⟨</a> <a id="2935" href="Algebra.Consequences.Setoid.html#1743" class="Bound">comm</a> <a id="2940" href="Algebra.Consequences.Setoid.html#2868" class="Bound">y</a> <a id="2942" href="Algebra.Consequences.Setoid.html#2865" class="Bound">x</a> <a id="2944" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">⟩</a>
|
|||
|
<a id="2952" href="Algebra.Consequences.Setoid.html#2865" class="Bound">x</a> <a id="2954" href="Algebra.Consequences.Setoid.html#1729" class="Bound Operator">•</a> <a id="2956" href="Algebra.Consequences.Setoid.html#2868" class="Bound">y</a> <a id="2958" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">≈⟨</a> <a id="2961" href="Algebra.Consequences.Setoid.html#2876" class="Bound">xy≈xz</a> <a id="2967" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">⟩</a>
|
|||
|
<a id="2975" href="Algebra.Consequences.Setoid.html#2865" class="Bound">x</a> <a id="2977" href="Algebra.Consequences.Setoid.html#1729" class="Bound Operator">•</a> <a id="2979" href="Algebra.Consequences.Setoid.html#2870" class="Bound">z</a> <a id="2981" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">≈⟨</a> <a id="2984" href="Algebra.Consequences.Setoid.html#1743" class="Bound">comm</a> <a id="2989" href="Algebra.Consequences.Setoid.html#2865" class="Bound">x</a> <a id="2991" href="Algebra.Consequences.Setoid.html#2870" class="Bound">z</a> <a id="2993" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">⟩</a>
|
|||
|
<a id="3001" href="Algebra.Consequences.Setoid.html#2870" class="Bound">z</a> <a id="3003" href="Algebra.Consequences.Setoid.html#1729" class="Bound Operator">•</a> <a id="3005" href="Algebra.Consequences.Setoid.html#2865" class="Bound">x</a> <a id="3007" href="Relation.Binary.Reasoning.Base.Single.html#2564" class="Function Operator">∎</a>
|
|||
|
|
|||
|
<a id="3010" class="Comment">------------------------------------------------------------------------</a>
|
|||
|
<a id="3083" class="Comment">-- Group-like structures</a>
|
|||
|
|
|||
|
<a id="3109" class="Keyword">module</a> <a id="3116" href="Algebra.Consequences.Setoid.html#3116" class="Module">_</a> <a id="3118" class="Symbol">{</a><a id="3119" href="Algebra.Consequences.Setoid.html#3119" class="Bound Operator">_•_</a> <a id="3123" class="Symbol">:</a> <a id="3125" href="Algebra.Core.html#527" class="Function">Op₂</a> <a id="3129" href="Algebra.Consequences.Setoid.html#537" class="Field">A</a><a id="3130" class="Symbol">}</a> <a id="3132" class="Symbol">{</a><a id="3133" href="Algebra.Consequences.Setoid.html#3133" class="Bound Operator">_⁻¹</a> <a id="3137" class="Symbol">:</a> <a id="3139" href="Algebra.Core.html#484" class="Function">Op₁</a> <a id="3143" href="Algebra.Consequences.Setoid.html#537" class="Field">A</a><a id="3144" class="Symbol">}</a> <a id="3146" class="Symbol">{</a><a id="3147" href="Algebra.Consequences.Setoid.html#3147" class="Bound">e</a><a id="3148" class="Symbol">}</a> <a id="3150" class="Symbol">(</a><a id="3151" href="Algebra.Consequences.Setoid.html#3151" class="Bound">comm</a> <a id="3156" class="Symbol">:</a> <a id="3158" href="Algebra.Definitions.html#1204" class="Function">Commutative</a> <a id="3170" href="Algebra.Consequences.Setoid.html#3119" class="Bound Operator">_•_</a><a id="3173" class="Symbol">)</a> <a id="3175" class="Keyword">where</a>
|
|||
|
|
|||
|
<a id="3184" href="Algebra.Consequences.Setoid.html#3184" class="Function">comm+invˡ⇒invʳ</a> <a id="3199" class="Symbol">:</a> <a id="3201" href="Algebra.Definitions.html#1713" class="Function">LeftInverse</a> <a id="3213" href="Algebra.Consequences.Setoid.html#3147" class="Bound">e</a> <a id="3215" href="Algebra.Consequences.Setoid.html#3133" class="Bound Operator">_⁻¹</a> <a id="3219" href="Algebra.Consequences.Setoid.html#3119" class="Bound Operator">_•_</a> <a id="3223" class="Symbol">→</a> <a id="3225" href="Algebra.Definitions.html#1801" class="Function">RightInverse</a> <a id="3238" href="Algebra.Consequences.Setoid.html#3147" class="Bound">e</a> <a id="3240" href="Algebra.Consequences.Setoid.html#3133" class="Bound Operator">_⁻¹</a> <a id="3244" href="Algebra.Consequences.Setoid.html#3119" class="Bound Operator">_•_</a>
|
|||
|
<a id="3250" href="Algebra.Consequences.Setoid.html#3184" class="Function">comm+invˡ⇒invʳ</a> <a id="3265" href="Algebra.Consequences.Setoid.html#3265" class="Bound">invˡ</a> <a id="3270" href="Algebra.Consequences.Setoid.html#3270" class="Bound">x</a> <a id="3272" class="Symbol">=</a> <a id="3274" href="Relation.Binary.Reasoning.Base.Single.html#1925" class="Function Operator">begin</a>
|
|||
|
<a id="3284" href="Algebra.Consequences.Setoid.html#3270" class="Bound">x</a> <a id="3286" href="Algebra.Consequences.Setoid.html#3119" class="Bound Operator">•</a> <a id="3288" class="Symbol">(</a><a id="3289" href="Algebra.Consequences.Setoid.html#3270" class="Bound">x</a> <a id="3291" href="Algebra.Consequences.Setoid.html#3133" class="Bound Operator">⁻¹</a><a id="3293" class="Symbol">)</a> <a id="3295" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">≈⟨</a> <a id="3298" href="Algebra.Consequences.Setoid.html#3151" class="Bound">comm</a> <a id="3303" href="Algebra.Consequences.Setoid.html#3270" class="Bound">x</a> <a id="3305" class="Symbol">(</a><a id="3306" href="Algebra.Consequences.Setoid.html#3270" class="Bound">x</a> <a id="3308" href="Algebra.Consequences.Setoid.html#3133" class="Bound Operator">⁻¹</a><a id="3310" class="Symbol">)</a> <a id="3312" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">⟩</a>
|
|||
|
<a id="3318" class="Symbol">(</a><a id="3319" href="Algebra.Consequences.Setoid.html#3270" class="Bound">x</a> <a id="3321" href="Algebra.Consequences.Setoid.html#3133" class="Bound Operator">⁻¹</a><a id="3323" class="Symbol">)</a> <a id="3325" href="Algebra.Consequences.Setoid.html#3119" class="Bound Operator">•</a> <a id="3327" href="Algebra.Consequences.Setoid.html#3270" class="Bound">x</a> <a id="3329" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">≈⟨</a> <a id="3332" href="Algebra.Consequences.Setoid.html#3265" class="Bound">invˡ</a> <a id="3337" href="Algebra.Consequences.Setoid.html#3270" class="Bound">x</a> <a id="3339" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">⟩</a>
|
|||
|
<a id="3345" href="Algebra.Consequences.Setoid.html#3147" class="Bound">e</a> <a id="3356" href="Relation.Binary.Reasoning.Base.Single.html#2564" class="Function Operator">∎</a>
|
|||
|
|
|||
|
<a id="3361" href="Algebra.Consequences.Setoid.html#3361" class="Function">comm+invʳ⇒invˡ</a> <a id="3376" class="Symbol">:</a> <a id="3378" href="Algebra.Definitions.html#1801" class="Function">RightInverse</a> <a id="3391" href="Algebra.Consequences.Setoid.html#3147" class="Bound">e</a> <a id="3393" href="Algebra.Consequences.Setoid.html#3133" class="Bound Operator">_⁻¹</a> <a id="3397" href="Algebra.Consequences.Setoid.html#3119" class="Bound Operator">_•_</a> <a id="3401" class="Symbol">→</a> <a id="3403" href="Algebra.Definitions.html#1713" class="Function">LeftInverse</a> <a id="3415" href="Algebra.Consequences.Setoid.html#3147" class="Bound">e</a> <a id="3417" href="Algebra.Consequences.Setoid.html#3133" class="Bound Operator">_⁻¹</a> <a id="3421" href="Algebra.Consequences.Setoid.html#3119" class="Bound Operator">_•_</a>
|
|||
|
<a id="3427" href="Algebra.Consequences.Setoid.html#3361" class="Function">comm+invʳ⇒invˡ</a> <a id="3442" href="Algebra.Consequences.Setoid.html#3442" class="Bound">invʳ</a> <a id="3447" href="Algebra.Consequences.Setoid.html#3447" class="Bound">x</a> <a id="3449" class="Symbol">=</a> <a id="3451" href="Relation.Binary.Reasoning.Base.Single.html#1925" class="Function Operator">begin</a>
|
|||
|
<a id="3461" class="Symbol">(</a><a id="3462" href="Algebra.Consequences.Setoid.html#3447" class="Bound">x</a> <a id="3464" href="Algebra.Consequences.Setoid.html#3133" class="Bound Operator">⁻¹</a><a id="3466" class="Symbol">)</a> <a id="3468" href="Algebra.Consequences.Setoid.html#3119" class="Bound Operator">•</a> <a id="3470" href="Algebra.Consequences.Setoid.html#3447" class="Bound">x</a> <a id="3472" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">≈⟨</a> <a id="3475" href="Algebra.Consequences.Setoid.html#3151" class="Bound">comm</a> <a id="3480" class="Symbol">(</a><a id="3481" href="Algebra.Consequences.Setoid.html#3447" class="Bound">x</a> <a id="3483" href="Algebra.Consequences.Setoid.html#3133" class="Bound Operator">⁻¹</a><a id="3485" class="Symbol">)</a> <a id="3487" href="Algebra.Consequences.Setoid.html#3447" class="Bound">x</a> <a id="3489" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">⟩</a>
|
|||
|
<a id="3495" href="Algebra.Consequences.Setoid.html#3447" class="Bound">x</a> <a id="3497" href="Algebra.Consequences.Setoid.html#3119" class="Bound Operator">•</a> <a id="3499" class="Symbol">(</a><a id="3500" href="Algebra.Consequences.Setoid.html#3447" class="Bound">x</a> <a id="3502" href="Algebra.Consequences.Setoid.html#3133" class="Bound Operator">⁻¹</a><a id="3504" class="Symbol">)</a> <a id="3506" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">≈⟨</a> <a id="3509" href="Algebra.Consequences.Setoid.html#3442" class="Bound">invʳ</a> <a id="3514" href="Algebra.Consequences.Setoid.html#3447" class="Bound">x</a> <a id="3516" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">⟩</a>
|
|||
|
<a id="3522" href="Algebra.Consequences.Setoid.html#3147" class="Bound">e</a> <a id="3533" href="Relation.Binary.Reasoning.Base.Single.html#2564" class="Function Operator">∎</a>
|
|||
|
|
|||
|
<a id="3536" class="Keyword">module</a> <a id="3543" href="Algebra.Consequences.Setoid.html#3543" class="Module">_</a> <a id="3545" class="Symbol">{</a><a id="3546" href="Algebra.Consequences.Setoid.html#3546" class="Bound Operator">_•_</a> <a id="3550" class="Symbol">:</a> <a id="3552" href="Algebra.Core.html#527" class="Function">Op₂</a> <a id="3556" href="Algebra.Consequences.Setoid.html#537" class="Field">A</a><a id="3557" class="Symbol">}</a> <a id="3559" class="Symbol">{</a><a id="3560" href="Algebra.Consequences.Setoid.html#3560" class="Bound Operator">_⁻¹</a> <a id="3564" class="Symbol">:</a> <a id="3566" href="Algebra.Core.html#484" class="Function">Op₁</a> <a id="3570" href="Algebra.Consequences.Setoid.html#537" class="Field">A</a><a id="3571" class="Symbol">}</a> <a id="3573" class="Symbol">{</a><a id="3574" href="Algebra.Consequences.Setoid.html#3574" class="Bound">e</a><a id="3575" class="Symbol">}</a> <a id="3577" class="Symbol">(</a><a id="3578" href="Algebra.Consequences.Setoid.html#3578" class="Bound">cong</a> <a id="3583" class="Symbol">:</a> <a id="3585" href="Algebra.Definitions.html#871" class="Function">Congruent₂</a> <a id="3596" href="Algebra.Consequences.Setoid.html#3546" class="Bound Operator">_•_</a><a id="3599" class="Symbol">)</a> <a id="3601" class="Keyword">where</a>
|
|||
|
|
|||
|
<a id="3610" href="Algebra.Consequences.Setoid.html#3610" class="Function">assoc+id+invʳ⇒invˡ-unique</a> <a id="3636" class="Symbol">:</a> <a id="3638" href="Algebra.Definitions.html#1117" class="Function">Associative</a> <a id="3650" href="Algebra.Consequences.Setoid.html#3546" class="Bound Operator">_•_</a> <a id="3654" class="Symbol">→</a>
|
|||
|
<a id="3686" href="Algebra.Definitions.html#1425" class="Function">Identity</a> <a id="3695" href="Algebra.Consequences.Setoid.html#3574" class="Bound">e</a> <a id="3697" href="Algebra.Consequences.Setoid.html#3546" class="Bound Operator">_•_</a> <a id="3701" class="Symbol">→</a> <a id="3703" href="Algebra.Definitions.html#1801" class="Function">RightInverse</a> <a id="3716" href="Algebra.Consequences.Setoid.html#3574" class="Bound">e</a> <a id="3718" href="Algebra.Consequences.Setoid.html#3560" class="Bound Operator">_⁻¹</a> <a id="3722" href="Algebra.Consequences.Setoid.html#3546" class="Bound Operator">_•_</a> <a id="3726" class="Symbol">→</a>
|
|||
|
<a id="3758" class="Symbol">∀</a> <a id="3760" href="Algebra.Consequences.Setoid.html#3760" class="Bound">x</a> <a id="3762" href="Algebra.Consequences.Setoid.html#3762" class="Bound">y</a> <a id="3764" class="Symbol">→</a> <a id="3766" class="Symbol">(</a><a id="3767" href="Algebra.Consequences.Setoid.html#3760" class="Bound">x</a> <a id="3769" href="Algebra.Consequences.Setoid.html#3546" class="Bound Operator">•</a> <a id="3771" href="Algebra.Consequences.Setoid.html#3762" class="Bound">y</a><a id="3772" class="Symbol">)</a> <a id="3774" href="Relation.Binary.Bundles.html#1107" class="Field Operator">≈</a> <a id="3776" href="Algebra.Consequences.Setoid.html#3574" class="Bound">e</a> <a id="3778" class="Symbol">→</a> <a id="3780" href="Algebra.Consequences.Setoid.html#3760" class="Bound">x</a> <a id="3782" href="Relation.Binary.Bundles.html#1107" class="Field Operator">≈</a> <a id="3784" class="Symbol">(</a><a id="3785" href="Algebra.Consequences.Setoid.html#3762" class="Bound">y</a> <a id="3787" href="Algebra.Consequences.Setoid.html#3560" class="Bound Operator">⁻¹</a><a id="3789" class="Symbol">)</a>
|
|||
|
<a id="3793" href="Algebra.Consequences.Setoid.html#3610" class="Function">assoc+id+invʳ⇒invˡ-unique</a> <a id="3819" href="Algebra.Consequences.Setoid.html#3819" class="Bound">assoc</a> <a id="3825" class="Symbol">(</a><a id="3826" href="Algebra.Consequences.Setoid.html#3826" class="Bound">idˡ</a> <a id="3830" href="Agda.Builtin.Sigma.html#218" class="InductiveConstructor Operator">,</a> <a id="3832" href="Algebra.Consequences.Setoid.html#3832" class="Bound">idʳ</a><a id="3835" class="Symbol">)</a> <a id="3837" href="Algebra.Consequences.Setoid.html#3837" class="Bound">invʳ</a> <a id="3842" href="Algebra.Consequences.Setoid.html#3842" class="Bound">x</a> <a id="3844" href="Algebra.Consequences.Setoid.html#3844" class="Bound">y</a> <a id="3846" href="Algebra.Consequences.Setoid.html#3846" class="Bound">eq</a> <a id="3849" class="Symbol">=</a> <a id="3851" href="Relation.Binary.Reasoning.Base.Single.html#1925" class="Function Operator">begin</a>
|
|||
|
<a id="3861" href="Algebra.Consequences.Setoid.html#3842" class="Bound">x</a> <a id="3878" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">≈⟨</a> <a id="3881" href="Relation.Binary.Structures.html#1603" class="Function">sym</a> <a id="3885" class="Symbol">(</a><a id="3886" href="Algebra.Consequences.Setoid.html#3832" class="Bound">idʳ</a> <a id="3890" href="Algebra.Consequences.Setoid.html#3842" class="Bound">x</a><a id="3891" class="Symbol">)</a> <a id="3893" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">⟩</a>
|
|||
|
<a id="3899" href="Algebra.Consequences.Setoid.html#3842" class="Bound">x</a> <a id="3901" href="Algebra.Consequences.Setoid.html#3546" class="Bound Operator">•</a> <a id="3903" href="Algebra.Consequences.Setoid.html#3574" class="Bound">e</a> <a id="3916" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">≈⟨</a> <a id="3919" href="Algebra.Consequences.Setoid.html#3578" class="Bound">cong</a> <a id="3924" href="Relation.Binary.Structures.html#1577" class="Function">refl</a> <a id="3929" class="Symbol">(</a><a id="3930" href="Relation.Binary.Structures.html#1603" class="Function">sym</a> <a id="3934" class="Symbol">(</a><a id="3935" href="Algebra.Consequences.Setoid.html#3837" class="Bound">invʳ</a> <a id="3940" href="Algebra.Consequences.Setoid.html#3844" class="Bound">y</a><a id="3941" class="Symbol">))</a> <a id="3944" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">⟩</a>
|
|||
|
<a id="3950" href="Algebra.Consequences.Setoid.html#3842" class="Bound">x</a> <a id="3952" href="Algebra.Consequences.Setoid.html#3546" class="Bound Operator">•</a> <a id="3954" class="Symbol">(</a><a id="3955" href="Algebra.Consequences.Setoid.html#3844" class="Bound">y</a> <a id="3957" href="Algebra.Consequences.Setoid.html#3546" class="Bound Operator">•</a> <a id="3959" class="Symbol">(</a><a id="3960" href="Algebra.Consequences.Setoid.html#3844" class="Bound">y</a> <a id="3962" href="Algebra.Consequences.Setoid.html#3560" class="Bound Operator">⁻¹</a><a id="3964" class="Symbol">))</a> <a id="3967" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">≈⟨</a> <a id="3970" href="Relation.Binary.Structures.html#1603" class="Function">sym</a> <a id="3974" class="Symbol">(</a><a id="3975" href="Algebra.Consequences.Setoid.html#3819" class="Bound">assoc</a> <a id="3981" href="Algebra.Consequences.Setoid.html#3842" class="Bound">x</a> <a id="3983" href="Algebra.Consequences.Setoid.html#3844" class="Bound">y</a> <a id="3985" class="Symbol">(</a><a id="3986" href="Algebra.Consequences.Setoid.html#3844" class="Bound">y</a> <a id="3988" href="Algebra.Consequences.Setoid.html#3560" class="Bound Operator">⁻¹</a><a id="3990" class="Symbol">))</a> <a id="3993" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">⟩</a>
|
|||
|
<a id="3999" class="Symbol">(</a><a id="4000" href="Algebra.Consequences.Setoid.html#3842" class="Bound">x</a> <a id="4002" href="Algebra.Consequences.Setoid.html#3546" class="Bound Operator">•</a> <a id="4004" href="Algebra.Consequences.Setoid.html#3844" class="Bound">y</a><a id="4005" class="Symbol">)</a> <a id="4007" href="Algebra.Consequences.Setoid.html#3546" class="Bound Operator">•</a> <a id="4009" class="Symbol">(</a><a id="4010" href="Algebra.Consequences.Setoid.html#3844" class="Bound">y</a> <a id="4012" href="Algebra.Consequences.Setoid.html#3560" class="Bound Operator">⁻¹</a><a id="4014" class="Symbol">)</a> <a id="4016" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">≈⟨</a> <a id="4019" href="Algebra.Consequences.Setoid.html#3578" class="Bound">cong</a> <a id="4024" href="Algebra.Consequences.Setoid.html#3846" class="Bound">eq</a> <a id="4027" href="Relation.Binary.Structures.html#1577" class="Function">refl</a> <a id="4032" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">⟩</a>
|
|||
|
<a id="4038" href="Algebra.Consequences.Setoid.html#3574" class="Bound">e</a> <a id="4040" href="Algebra.Consequences.Setoid.html#3546" class="Bound Operator">•</a> <a id="4042" class="Symbol">(</a><a id="4043" href="Algebra.Consequences.Setoid.html#3844" class="Bound">y</a> <a id="4045" href="Algebra.Consequences.Setoid.html#3560" class="Bound Operator">⁻¹</a><a id="4047" class="Symbol">)</a> <a id="4055" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">≈⟨</a> <a id="4058" href="Algebra.Consequences.Setoid.html#3826" class="Bound">idˡ</a> <a id="4062" class="Symbol">(</a><a id="4063" href="Algebra.Consequences.Setoid.html#3844" class="Bound">y</a> <a id="4065" href="Algebra.Consequences.Setoid.html#3560" class="Bound Operator">⁻¹</a><a id="4067" class="Symbol">)</a> <a id="4069" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">⟩</a>
|
|||
|
<a id="4075" href="Algebra.Consequences.Setoid.html#3844" class="Bound">y</a> <a id="4077" href="Algebra.Consequences.Setoid.html#3560" class="Bound Operator">⁻¹</a> <a id="4092" href="Relation.Binary.Reasoning.Base.Single.html#2564" class="Function Operator">∎</a>
|
|||
|
|
|||
|
<a id="4097" href="Algebra.Consequences.Setoid.html#4097" class="Function">assoc+id+invˡ⇒invʳ-unique</a> <a id="4123" class="Symbol">:</a> <a id="4125" href="Algebra.Definitions.html#1117" class="Function">Associative</a> <a id="4137" href="Algebra.Consequences.Setoid.html#3546" class="Bound Operator">_•_</a> <a id="4141" class="Symbol">→</a>
|
|||
|
<a id="4173" href="Algebra.Definitions.html#1425" class="Function">Identity</a> <a id="4182" href="Algebra.Consequences.Setoid.html#3574" class="Bound">e</a> <a id="4184" href="Algebra.Consequences.Setoid.html#3546" class="Bound Operator">_•_</a> <a id="4188" class="Symbol">→</a> <a id="4190" href="Algebra.Definitions.html#1713" class="Function">LeftInverse</a> <a id="4202" href="Algebra.Consequences.Setoid.html#3574" class="Bound">e</a> <a id="4204" href="Algebra.Consequences.Setoid.html#3560" class="Bound Operator">_⁻¹</a> <a id="4208" href="Algebra.Consequences.Setoid.html#3546" class="Bound Operator">_•_</a> <a id="4212" class="Symbol">→</a>
|
|||
|
<a id="4244" class="Symbol">∀</a> <a id="4246" href="Algebra.Consequences.Setoid.html#4246" class="Bound">x</a> <a id="4248" href="Algebra.Consequences.Setoid.html#4248" class="Bound">y</a> <a id="4250" class="Symbol">→</a> <a id="4252" class="Symbol">(</a><a id="4253" href="Algebra.Consequences.Setoid.html#4246" class="Bound">x</a> <a id="4255" href="Algebra.Consequences.Setoid.html#3546" class="Bound Operator">•</a> <a id="4257" href="Algebra.Consequences.Setoid.html#4248" class="Bound">y</a><a id="4258" class="Symbol">)</a> <a id="4260" href="Relation.Binary.Bundles.html#1107" class="Field Operator">≈</a> <a id="4262" href="Algebra.Consequences.Setoid.html#3574" class="Bound">e</a> <a id="4264" class="Symbol">→</a> <a id="4266" href="Algebra.Consequences.Setoid.html#4248" class="Bound">y</a> <a id="4268" href="Relation.Binary.Bundles.html#1107" class="Field Operator">≈</a> <a id="4270" class="Symbol">(</a><a id="4271" href="Algebra.Consequences.Setoid.html#4246" class="Bound">x</a> <a id="4273" href="Algebra.Consequences.Setoid.html#3560" class="Bound Operator">⁻¹</a><a id="4275" class="Symbol">)</a>
|
|||
|
<a id="4279" href="Algebra.Consequences.Setoid.html#4097" class="Function">assoc+id+invˡ⇒invʳ-unique</a> <a id="4305" href="Algebra.Consequences.Setoid.html#4305" class="Bound">assoc</a> <a id="4311" class="Symbol">(</a><a id="4312" href="Algebra.Consequences.Setoid.html#4312" class="Bound">idˡ</a> <a id="4316" href="Agda.Builtin.Sigma.html#218" class="InductiveConstructor Operator">,</a> <a id="4318" href="Algebra.Consequences.Setoid.html#4318" class="Bound">idʳ</a><a id="4321" class="Symbol">)</a> <a id="4323" href="Algebra.Consequences.Setoid.html#4323" class="Bound">invˡ</a> <a id="4328" href="Algebra.Consequences.Setoid.html#4328" class="Bound">x</a> <a id="4330" href="Algebra.Consequences.Setoid.html#4330" class="Bound">y</a> <a id="4332" href="Algebra.Consequences.Setoid.html#4332" class="Bound">eq</a> <a id="4335" class="Symbol">=</a> <a id="4337" href="Relation.Binary.Reasoning.Base.Single.html#1925" class="Function Operator">begin</a>
|
|||
|
<a id="4347" href="Algebra.Consequences.Setoid.html#4330" class="Bound">y</a> <a id="4364" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">≈⟨</a> <a id="4367" href="Relation.Binary.Structures.html#1603" class="Function">sym</a> <a id="4371" class="Symbol">(</a><a id="4372" href="Algebra.Consequences.Setoid.html#4312" class="Bound">idˡ</a> <a id="4376" href="Algebra.Consequences.Setoid.html#4330" class="Bound">y</a><a id="4377" class="Symbol">)</a> <a id="4379" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">⟩</a>
|
|||
|
<a id="4385" href="Algebra.Consequences.Setoid.html#3574" class="Bound">e</a> <a id="4387" href="Algebra.Consequences.Setoid.html#3546" class="Bound Operator">•</a> <a id="4389" href="Algebra.Consequences.Setoid.html#4330" class="Bound">y</a> <a id="4402" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">≈⟨</a> <a id="4405" href="Algebra.Consequences.Setoid.html#3578" class="Bound">cong</a> <a id="4410" class="Symbol">(</a><a id="4411" href="Relation.Binary.Structures.html#1603" class="Function">sym</a> <a id="4415" class="Symbol">(</a><a id="4416" href="Algebra.Consequences.Setoid.html#4323" class="Bound">invˡ</a> <a id="4421" href="Algebra.Consequences.Setoid.html#4328" class="Bound">x</a><a id="4422" class="Symbol">))</a> <a id="4425" href="Relation.Binary.Structures.html#1577" class="Function">refl</a> <a id="4430" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">⟩</a>
|
|||
|
<a id="4436" class="Symbol">((</a><a id="4438" href="Algebra.Consequences.Setoid.html#4328" class="Bound">x</a> <a id="4440" href="Algebra.Consequences.Setoid.html#3560" class="Bound Operator">⁻¹</a><a id="4442" class="Symbol">)</a> <a id="4444" href="Algebra.Consequences.Setoid.html#3546" class="Bound Operator">•</a> <a id="4446" href="Algebra.Consequences.Setoid.html#4328" class="Bound">x</a><a id="4447" class="Symbol">)</a> <a id="4449" href="Algebra.Consequences.Setoid.html#3546" class="Bound Operator">•</a> <a id="4451" href="Algebra.Consequences.Setoid.html#4330" class="Bound">y</a> <a id="4453" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">≈⟨</a> <a id="4456" href="Algebra.Consequences.Setoid.html#4305" class="Bound">assoc</a> <a id="4462" class="Symbol">(</a><a id="4463" href="Algebra.Consequences.Setoid.html#4328" class="Bound">x</a> <a id="4465" href="Algebra.Consequences.Setoid.html#3560" class="Bound Operator">⁻¹</a><a id="4467" class="Symbol">)</a> <a id="4469" href="Algebra.Consequences.Setoid.html#4328" class="Bound">x</a> <a id="4471" href="Algebra.Consequences.Setoid.html#4330" class="Bound">y</a> <a id="4473" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">⟩</a>
|
|||
|
<a id="4479" class="Symbol">(</a><a id="4480" href="Algebra.Consequences.Setoid.html#4328" class="Bound">x</a> <a id="4482" href="Algebra.Consequences.Setoid.html#3560" class="Bound Operator">⁻¹</a><a id="4484" class="Symbol">)</a> <a id="4486" href="Algebra.Consequences.Setoid.html#3546" class="Bound Operator">•</a> <a id="4488" class="Symbol">(</a><a id="4489" href="Algebra.Consequences.Setoid.html#4328" class="Bound">x</a> <a id="4491" href="Algebra.Consequences.Setoid.html#3546" class="Bound Operator">•</a> <a id="4493" href="Algebra.Consequences.Setoid.html#4330" class="Bound">y</a><a id="4494" class="Symbol">)</a> <a id="4496" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">≈⟨</a> <a id="4499" href="Algebra.Consequences.Setoid.html#3578" class="Bound">cong</a> <a id="4504" href="Relation.Binary.Structures.html#1577" class="Function">refl</a> <a id="4509" href="Algebra.Consequences.Setoid.html#4332" class="Bound">eq</a> <a id="4512" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">⟩</a>
|
|||
|
<a id="4518" class="Symbol">(</a><a id="4519" href="Algebra.Consequences.Setoid.html#4328" class="Bound">x</a> <a id="4521" href="Algebra.Consequences.Setoid.html#3560" class="Bound Operator">⁻¹</a><a id="4523" class="Symbol">)</a> <a id="4525" href="Algebra.Consequences.Setoid.html#3546" class="Bound Operator">•</a> <a id="4527" href="Algebra.Consequences.Setoid.html#3574" class="Bound">e</a> <a id="4535" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">≈⟨</a> <a id="4538" href="Algebra.Consequences.Setoid.html#4318" class="Bound">idʳ</a> <a id="4542" class="Symbol">(</a><a id="4543" href="Algebra.Consequences.Setoid.html#4328" class="Bound">x</a> <a id="4545" href="Algebra.Consequences.Setoid.html#3560" class="Bound Operator">⁻¹</a><a id="4547" class="Symbol">)</a> <a id="4549" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">⟩</a>
|
|||
|
<a id="4555" href="Algebra.Consequences.Setoid.html#4328" class="Bound">x</a> <a id="4557" href="Algebra.Consequences.Setoid.html#3560" class="Bound Operator">⁻¹</a> <a id="4572" href="Relation.Binary.Reasoning.Base.Single.html#2564" class="Function Operator">∎</a>
|
|||
|
|
|||
|
<a id="4575" class="Comment">----------------------------------------------------------------------</a>
|
|||
|
<a id="4646" class="Comment">-- Bisemigroup-like structures</a>
|
|||
|
|
|||
|
<a id="4678" class="Keyword">module</a> <a id="4685" href="Algebra.Consequences.Setoid.html#4685" class="Module">_</a> <a id="4687" class="Symbol">{</a><a id="4688" href="Algebra.Consequences.Setoid.html#4688" class="Bound Operator">_•_</a> <a id="4692" href="Algebra.Consequences.Setoid.html#4692" class="Bound Operator">_◦_</a> <a id="4696" class="Symbol">:</a> <a id="4698" href="Algebra.Core.html#527" class="Function">Op₂</a> <a id="4702" href="Algebra.Consequences.Setoid.html#537" class="Field">A</a><a id="4703" class="Symbol">}</a>
|
|||
|
<a id="4714" class="Symbol">(</a><a id="4715" href="Algebra.Consequences.Setoid.html#4715" class="Bound">◦-cong</a> <a id="4722" class="Symbol">:</a> <a id="4724" href="Algebra.Definitions.html#871" class="Function">Congruent₂</a> <a id="4735" href="Algebra.Consequences.Setoid.html#4692" class="Bound Operator">_◦_</a><a id="4738" class="Symbol">)</a>
|
|||
|
<a id="4749" class="Symbol">(</a><a id="4750" href="Algebra.Consequences.Setoid.html#4750" class="Bound">•-comm</a> <a id="4757" class="Symbol">:</a> <a id="4759" href="Algebra.Definitions.html#1204" class="Function">Commutative</a> <a id="4771" href="Algebra.Consequences.Setoid.html#4688" class="Bound Operator">_•_</a><a id="4774" class="Symbol">)</a>
|
|||
|
<a id="4785" class="Keyword">where</a>
|
|||
|
|
|||
|
<a id="4794" href="Algebra.Consequences.Setoid.html#4794" class="Function">comm+distrˡ⇒distrʳ</a> <a id="4813" class="Symbol">:</a> <a id="4816" href="Algebra.Consequences.Setoid.html#4688" class="Bound Operator">_•_</a> <a id="4820" href="Algebra.Definitions.html#2236" class="Function Operator">DistributesOverˡ</a> <a id="4837" href="Algebra.Consequences.Setoid.html#4692" class="Bound Operator">_◦_</a> <a id="4841" class="Symbol">→</a> <a id="4843" href="Algebra.Consequences.Setoid.html#4688" class="Bound Operator">_•_</a> <a id="4847" href="Algebra.Definitions.html#2355" class="Function Operator">DistributesOverʳ</a> <a id="4864" href="Algebra.Consequences.Setoid.html#4692" class="Bound Operator">_◦_</a>
|
|||
|
<a id="4870" href="Algebra.Consequences.Setoid.html#4794" class="Function">comm+distrˡ⇒distrʳ</a> <a id="4889" href="Algebra.Consequences.Setoid.html#4889" class="Bound">distrˡ</a> <a id="4896" href="Algebra.Consequences.Setoid.html#4896" class="Bound">x</a> <a id="4898" href="Algebra.Consequences.Setoid.html#4898" class="Bound">y</a> <a id="4900" href="Algebra.Consequences.Setoid.html#4900" class="Bound">z</a> <a id="4902" class="Symbol">=</a> <a id="4904" href="Relation.Binary.Reasoning.Base.Single.html#1925" class="Function Operator">begin</a>
|
|||
|
<a id="4914" class="Symbol">(</a><a id="4915" href="Algebra.Consequences.Setoid.html#4898" class="Bound">y</a> <a id="4917" href="Algebra.Consequences.Setoid.html#4692" class="Bound Operator">◦</a> <a id="4919" href="Algebra.Consequences.Setoid.html#4900" class="Bound">z</a><a id="4920" class="Symbol">)</a> <a id="4922" href="Algebra.Consequences.Setoid.html#4688" class="Bound Operator">•</a> <a id="4924" href="Algebra.Consequences.Setoid.html#4896" class="Bound">x</a> <a id="4932" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">≈⟨</a> <a id="4935" href="Algebra.Consequences.Setoid.html#4750" class="Bound">•-comm</a> <a id="4942" class="Symbol">(</a><a id="4943" href="Algebra.Consequences.Setoid.html#4898" class="Bound">y</a> <a id="4945" href="Algebra.Consequences.Setoid.html#4692" class="Bound Operator">◦</a> <a id="4947" href="Algebra.Consequences.Setoid.html#4900" class="Bound">z</a><a id="4948" class="Symbol">)</a> <a id="4950" href="Algebra.Consequences.Setoid.html#4896" class="Bound">x</a> <a id="4952" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">⟩</a>
|
|||
|
<a id="4958" href="Algebra.Consequences.Setoid.html#4896" class="Bound">x</a> <a id="4960" href="Algebra.Consequences.Setoid.html#4688" class="Bound Operator">•</a> <a id="4962" class="Symbol">(</a><a id="4963" href="Algebra.Consequences.Setoid.html#4898" class="Bound">y</a> <a id="4965" href="Algebra.Consequences.Setoid.html#4692" class="Bound Operator">◦</a> <a id="4967" href="Algebra.Consequences.Setoid.html#4900" class="Bound">z</a><a id="4968" class="Symbol">)</a> <a id="4976" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">≈⟨</a> <a id="4979" href="Algebra.Consequences.Setoid.html#4889" class="Bound">distrˡ</a> <a id="4986" href="Algebra.Consequences.Setoid.html#4896" class="Bound">x</a> <a id="4988" href="Algebra.Consequences.Setoid.html#4898" class="Bound">y</a> <a id="4990" href="Algebra.Consequences.Setoid.html#4900" class="Bound">z</a> <a id="4992" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">⟩</a>
|
|||
|
<a id="4998" class="Symbol">(</a><a id="4999" href="Algebra.Consequences.Setoid.html#4896" class="Bound">x</a> <a id="5001" href="Algebra.Consequences.Setoid.html#4688" class="Bound Operator">•</a> <a id="5003" href="Algebra.Consequences.Setoid.html#4898" class="Bound">y</a><a id="5004" class="Symbol">)</a> <a id="5006" href="Algebra.Consequences.Setoid.html#4692" class="Bound Operator">◦</a> <a id="5008" class="Symbol">(</a><a id="5009" href="Algebra.Consequences.Setoid.html#4896" class="Bound">x</a> <a id="5011" href="Algebra.Consequences.Setoid.html#4688" class="Bound Operator">•</a> <a id="5013" href="Algebra.Consequences.Setoid.html#4900" class="Bound">z</a><a id="5014" class="Symbol">)</a> <a id="5016" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">≈⟨</a> <a id="5019" href="Algebra.Consequences.Setoid.html#4715" class="Bound">◦-cong</a> <a id="5026" class="Symbol">(</a><a id="5027" href="Algebra.Consequences.Setoid.html#4750" class="Bound">•-comm</a> <a id="5034" href="Algebra.Consequences.Setoid.html#4896" class="Bound">x</a> <a id="5036" href="Algebra.Consequences.Setoid.html#4898" class="Bound">y</a><a id="5037" class="Symbol">)</a> <a id="5039" class="Symbol">(</a><a id="5040" href="Algebra.Consequences.Setoid.html#4750" class="Bound">•-comm</a> <a id="5047" href="Algebra.Consequences.Setoid.html#4896" class="Bound">x</a> <a id="5049" href="Algebra.Consequences.Setoid.html#4900" class="Bound">z</a><a id="5050" class="Symbol">)</a> <a id="5052" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">⟩</a>
|
|||
|
<a id="5058" class="Symbol">(</a><a id="5059" href="Algebra.Consequences.Setoid.html#4898" class="Bound">y</a> <a id="5061" href="Algebra.Consequences.Setoid.html#4688" class="Bound Operator">•</a> <a id="5063" href="Algebra.Consequences.Setoid.html#4896" class="Bound">x</a><a id="5064" class="Symbol">)</a> <a id="5066" href="Algebra.Consequences.Setoid.html#4692" class="Bound Operator">◦</a> <a id="5068" class="Symbol">(</a><a id="5069" href="Algebra.Consequences.Setoid.html#4900" class="Bound">z</a> <a id="5071" href="Algebra.Consequences.Setoid.html#4688" class="Bound Operator">•</a> <a id="5073" href="Algebra.Consequences.Setoid.html#4896" class="Bound">x</a><a id="5074" class="Symbol">)</a> <a id="5076" href="Relation.Binary.Reasoning.Base.Single.html#2564" class="Function Operator">∎</a>
|
|||
|
|
|||
|
<a id="5081" href="Algebra.Consequences.Setoid.html#5081" class="Function">comm+distrʳ⇒distrˡ</a> <a id="5100" class="Symbol">:</a> <a id="5102" href="Algebra.Consequences.Setoid.html#4688" class="Bound Operator">_•_</a> <a id="5106" href="Algebra.Definitions.html#2355" class="Function Operator">DistributesOverʳ</a> <a id="5123" href="Algebra.Consequences.Setoid.html#4692" class="Bound Operator">_◦_</a> <a id="5127" class="Symbol">→</a> <a id="5129" href="Algebra.Consequences.Setoid.html#4688" class="Bound Operator">_•_</a> <a id="5133" href="Algebra.Definitions.html#2236" class="Function Operator">DistributesOverˡ</a> <a id="5150" href="Algebra.Consequences.Setoid.html#4692" class="Bound Operator">_◦_</a>
|
|||
|
<a id="5156" href="Algebra.Consequences.Setoid.html#5081" class="Function">comm+distrʳ⇒distrˡ</a> <a id="5175" href="Algebra.Consequences.Setoid.html#5175" class="Bound">distrˡ</a> <a id="5182" href="Algebra.Consequences.Setoid.html#5182" class="Bound">x</a> <a id="5184" href="Algebra.Consequences.Setoid.html#5184" class="Bound">y</a> <a id="5186" href="Algebra.Consequences.Setoid.html#5186" class="Bound">z</a> <a id="5188" class="Symbol">=</a> <a id="5190" href="Relation.Binary.Reasoning.Base.Single.html#1925" class="Function Operator">begin</a>
|
|||
|
<a id="5200" href="Algebra.Consequences.Setoid.html#5182" class="Bound">x</a> <a id="5202" href="Algebra.Consequences.Setoid.html#4688" class="Bound Operator">•</a> <a id="5204" class="Symbol">(</a><a id="5205" href="Algebra.Consequences.Setoid.html#5184" class="Bound">y</a> <a id="5207" href="Algebra.Consequences.Setoid.html#4692" class="Bound Operator">◦</a> <a id="5209" href="Algebra.Consequences.Setoid.html#5186" class="Bound">z</a><a id="5210" class="Symbol">)</a> <a id="5218" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">≈⟨</a> <a id="5221" href="Algebra.Consequences.Setoid.html#4750" class="Bound">•-comm</a> <a id="5228" href="Algebra.Consequences.Setoid.html#5182" class="Bound">x</a> <a id="5230" class="Symbol">(</a><a id="5231" href="Algebra.Consequences.Setoid.html#5184" class="Bound">y</a> <a id="5233" href="Algebra.Consequences.Setoid.html#4692" class="Bound Operator">◦</a> <a id="5235" href="Algebra.Consequences.Setoid.html#5186" class="Bound">z</a><a id="5236" class="Symbol">)</a> <a id="5238" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">⟩</a>
|
|||
|
<a id="5244" class="Symbol">(</a><a id="5245" href="Algebra.Consequences.Setoid.html#5184" class="Bound">y</a> <a id="5247" href="Algebra.Consequences.Setoid.html#4692" class="Bound Operator">◦</a> <a id="5249" href="Algebra.Consequences.Setoid.html#5186" class="Bound">z</a><a id="5250" class="Symbol">)</a> <a id="5252" href="Algebra.Consequences.Setoid.html#4688" class="Bound Operator">•</a> <a id="5254" href="Algebra.Consequences.Setoid.html#5182" class="Bound">x</a> <a id="5262" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">≈⟨</a> <a id="5265" href="Algebra.Consequences.Setoid.html#5175" class="Bound">distrˡ</a> <a id="5272" href="Algebra.Consequences.Setoid.html#5182" class="Bound">x</a> <a id="5274" href="Algebra.Consequences.Setoid.html#5184" class="Bound">y</a> <a id="5276" href="Algebra.Consequences.Setoid.html#5186" class="Bound">z</a> <a id="5278" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">⟩</a>
|
|||
|
<a id="5284" class="Symbol">(</a><a id="5285" href="Algebra.Consequences.Setoid.html#5184" class="Bound">y</a> <a id="5287" href="Algebra.Consequences.Setoid.html#4688" class="Bound Operator">•</a> <a id="5289" href="Algebra.Consequences.Setoid.html#5182" class="Bound">x</a><a id="5290" class="Symbol">)</a> <a id="5292" href="Algebra.Consequences.Setoid.html#4692" class="Bound Operator">◦</a> <a id="5294" class="Symbol">(</a><a id="5295" href="Algebra.Consequences.Setoid.html#5186" class="Bound">z</a> <a id="5297" href="Algebra.Consequences.Setoid.html#4688" class="Bound Operator">•</a> <a id="5299" href="Algebra.Consequences.Setoid.html#5182" class="Bound">x</a><a id="5300" class="Symbol">)</a> <a id="5302" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">≈⟨</a> <a id="5305" href="Algebra.Consequences.Setoid.html#4715" class="Bound">◦-cong</a> <a id="5312" class="Symbol">(</a><a id="5313" href="Algebra.Consequences.Setoid.html#4750" class="Bound">•-comm</a> <a id="5320" href="Algebra.Consequences.Setoid.html#5184" class="Bound">y</a> <a id="5322" href="Algebra.Consequences.Setoid.html#5182" class="Bound">x</a><a id="5323" class="Symbol">)</a> <a id="5325" class="Symbol">(</a><a id="5326" href="Algebra.Consequences.Setoid.html#4750" class="Bound">•-comm</a> <a id="5333" href="Algebra.Consequences.Setoid.html#5186" class="Bound">z</a> <a id="5335" href="Algebra.Consequences.Setoid.html#5182" class="Bound">x</a><a id="5336" class="Symbol">)</a> <a id="5338" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">⟩</a>
|
|||
|
<a id="5344" class="Symbol">(</a><a id="5345" href="Algebra.Consequences.Setoid.html#5182" class="Bound">x</a> <a id="5347" href="Algebra.Consequences.Setoid.html#4688" class="Bound Operator">•</a> <a id="5349" href="Algebra.Consequences.Setoid.html#5184" class="Bound">y</a><a id="5350" class="Symbol">)</a> <a id="5352" href="Algebra.Consequences.Setoid.html#4692" class="Bound Operator">◦</a> <a id="5354" class="Symbol">(</a><a id="5355" href="Algebra.Consequences.Setoid.html#5182" class="Bound">x</a> <a id="5357" href="Algebra.Consequences.Setoid.html#4688" class="Bound Operator">•</a> <a id="5359" href="Algebra.Consequences.Setoid.html#5186" class="Bound">z</a><a id="5360" class="Symbol">)</a> <a id="5362" href="Relation.Binary.Reasoning.Base.Single.html#2564" class="Function Operator">∎</a>
|
|||
|
|
|||
|
<a id="5367" href="Algebra.Consequences.Setoid.html#5367" class="Function">comm⇒sym[distribˡ]</a> <a id="5386" class="Symbol">:</a> <a id="5388" class="Symbol">∀</a> <a id="5390" href="Algebra.Consequences.Setoid.html#5390" class="Bound">x</a> <a id="5392" class="Symbol">→</a> <a id="5394" href="Relation.Binary.Definitions.html#1507" class="Function">Symmetric</a> <a id="5404" class="Symbol">(λ</a> <a id="5407" href="Algebra.Consequences.Setoid.html#5407" class="Bound">y</a> <a id="5409" href="Algebra.Consequences.Setoid.html#5409" class="Bound">z</a> <a id="5411" class="Symbol">→</a> <a id="5413" class="Symbol">(</a><a id="5414" href="Algebra.Consequences.Setoid.html#5390" class="Bound">x</a> <a id="5416" href="Algebra.Consequences.Setoid.html#4692" class="Bound Operator">◦</a> <a id="5418" class="Symbol">(</a><a id="5419" href="Algebra.Consequences.Setoid.html#5407" class="Bound">y</a> <a id="5421" href="Algebra.Consequences.Setoid.html#4688" class="Bound Operator">•</a> <a id="5423" href="Algebra.Consequences.Setoid.html#5409" class="Bound">z</a><a id="5424" class="Symbol">))</a> <a id="5427" href="Relation.Binary.Bundles.html#1107" class="Field Operator">≈</a> <a id="5429" class="Symbol">((</a><a id="5431" href="Algebra.Consequences.Setoid.html#5390" class="Bound">x</a> <a id="5433" href="Algebra.Consequences.Setoid.html#4692" class="Bound Operator">◦</a> <a id="5435" href="Algebra.Consequences.Setoid.html#5407" class="Bound">y</a><a id="5436" class="Symbol">)</a> <a id="5438" href="Algebra.Consequences.Setoid.html#4688" class="Bound Operator">•</a> <a id="5440" class="Symbol">(</a><a id="5441" href="Algebra.Consequences.Setoid.html#5390" class="Bound">x</a> <a id="5443" href="Algebra.Consequences.Setoid.html#4692" class="Bound Operator">◦</a> <a id="5445" href="Algebra.Consequences.Setoid.html#5409" class="Bound">z</a><a id="5446" class="Symbol">)))</a>
|
|||
|
<a id="5452" href="Algebra.Consequences.Setoid.html#5367" class="Function">comm⇒sym[distribˡ]</a> <a id="5471" href="Algebra.Consequences.Setoid.html#5471" class="Bound">x</a> <a id="5473" class="Symbol">{</a><a id="5474" href="Algebra.Consequences.Setoid.html#5474" class="Bound">y</a><a id="5475" class="Symbol">}</a> <a id="5477" class="Symbol">{</a><a id="5478" href="Algebra.Consequences.Setoid.html#5478" class="Bound">z</a><a id="5479" class="Symbol">}</a> <a id="5481" href="Algebra.Consequences.Setoid.html#5481" class="Bound">prf</a> <a id="5485" class="Symbol">=</a> <a id="5487" href="Relation.Binary.Reasoning.Base.Single.html#1925" class="Function Operator">begin</a>
|
|||
|
<a id="5497" href="Algebra.Consequences.Setoid.html#5471" class="Bound">x</a> <a id="5499" href="Algebra.Consequences.Setoid.html#4692" class="Bound Operator">◦</a> <a id="5501" class="Symbol">(</a><a id="5502" href="Algebra.Consequences.Setoid.html#5478" class="Bound">z</a> <a id="5504" href="Algebra.Consequences.Setoid.html#4688" class="Bound Operator">•</a> <a id="5506" href="Algebra.Consequences.Setoid.html#5474" class="Bound">y</a><a id="5507" class="Symbol">)</a> <a id="5515" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">≈⟨</a> <a id="5518" href="Algebra.Consequences.Setoid.html#4715" class="Bound">◦-cong</a> <a id="5525" href="Relation.Binary.Structures.html#1577" class="Function">refl</a> <a id="5530" class="Symbol">(</a><a id="5531" href="Algebra.Consequences.Setoid.html#4750" class="Bound">•-comm</a> <a id="5538" href="Algebra.Consequences.Setoid.html#5478" class="Bound">z</a> <a id="5540" href="Algebra.Consequences.Setoid.html#5474" class="Bound">y</a><a id="5541" class="Symbol">)</a> <a id="5543" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">⟩</a>
|
|||
|
<a id="5549" href="Algebra.Consequences.Setoid.html#5471" class="Bound">x</a> <a id="5551" href="Algebra.Consequences.Setoid.html#4692" class="Bound Operator">◦</a> <a id="5553" class="Symbol">(</a><a id="5554" href="Algebra.Consequences.Setoid.html#5474" class="Bound">y</a> <a id="5556" href="Algebra.Consequences.Setoid.html#4688" class="Bound Operator">•</a> <a id="5558" href="Algebra.Consequences.Setoid.html#5478" class="Bound">z</a><a id="5559" class="Symbol">)</a> <a id="5567" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">≈⟨</a> <a id="5570" href="Algebra.Consequences.Setoid.html#5481" class="Bound">prf</a> <a id="5574" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">⟩</a>
|
|||
|
<a id="5580" class="Symbol">(</a><a id="5581" href="Algebra.Consequences.Setoid.html#5471" class="Bound">x</a> <a id="5583" href="Algebra.Consequences.Setoid.html#4692" class="Bound Operator">◦</a> <a id="5585" href="Algebra.Consequences.Setoid.html#5474" class="Bound">y</a><a id="5586" class="Symbol">)</a> <a id="5588" href="Algebra.Consequences.Setoid.html#4688" class="Bound Operator">•</a> <a id="5590" class="Symbol">(</a><a id="5591" href="Algebra.Consequences.Setoid.html#5471" class="Bound">x</a> <a id="5593" href="Algebra.Consequences.Setoid.html#4692" class="Bound Operator">◦</a> <a id="5595" href="Algebra.Consequences.Setoid.html#5478" class="Bound">z</a><a id="5596" class="Symbol">)</a> <a id="5598" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">≈⟨</a> <a id="5601" href="Algebra.Consequences.Setoid.html#4750" class="Bound">•-comm</a> <a id="5608" class="Symbol">(</a><a id="5609" href="Algebra.Consequences.Setoid.html#5471" class="Bound">x</a> <a id="5611" href="Algebra.Consequences.Setoid.html#4692" class="Bound Operator">◦</a> <a id="5613" href="Algebra.Consequences.Setoid.html#5474" class="Bound">y</a><a id="5614" class="Symbol">)</a> <a id="5616" class="Symbol">(</a><a id="5617" href="Algebra.Consequences.Setoid.html#5471" class="Bound">x</a> <a id="5619" href="Algebra.Consequences.Setoid.html#4692" class="Bound Operator">◦</a> <a id="5621" href="Algebra.Consequences.Setoid.html#5478" class="Bound">z</a><a id="5622" class="Symbol">)</a> <a id="5624" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">⟩</a>
|
|||
|
<a id="5630" class="Symbol">(</a><a id="5631" href="Algebra.Consequences.Setoid.html#5471" class="Bound">x</a> <a id="5633" href="Algebra.Consequences.Setoid.html#4692" class="Bound Operator">◦</a> <a id="5635" href="Algebra.Consequences.Setoid.html#5478" class="Bound">z</a><a id="5636" class="Symbol">)</a> <a id="5638" href="Algebra.Consequences.Setoid.html#4688" class="Bound Operator">•</a> <a id="5640" class="Symbol">(</a><a id="5641" href="Algebra.Consequences.Setoid.html#5471" class="Bound">x</a> <a id="5643" href="Algebra.Consequences.Setoid.html#4692" class="Bound Operator">◦</a> <a id="5645" href="Algebra.Consequences.Setoid.html#5474" class="Bound">y</a><a id="5646" class="Symbol">)</a> <a id="5648" href="Relation.Binary.Reasoning.Base.Single.html#2564" class="Function Operator">∎</a>
|
|||
|
|
|||
|
<a id="5651" class="Comment">----------------------------------------------------------------------</a>
|
|||
|
<a id="5722" class="Comment">-- Ring-like structures</a>
|
|||
|
|
|||
|
<a id="5747" class="Keyword">module</a> <a id="5754" href="Algebra.Consequences.Setoid.html#5754" class="Module">_</a> <a id="5756" class="Symbol">{</a><a id="5757" href="Algebra.Consequences.Setoid.html#5757" class="Bound Operator">_+_</a> <a id="5761" href="Algebra.Consequences.Setoid.html#5761" class="Bound Operator">_*_</a> <a id="5765" class="Symbol">:</a> <a id="5767" href="Algebra.Core.html#527" class="Function">Op₂</a> <a id="5771" href="Algebra.Consequences.Setoid.html#537" class="Field">A</a><a id="5772" class="Symbol">}</a>
|
|||
|
<a id="5783" class="Symbol">{</a><a id="5784" href="Algebra.Consequences.Setoid.html#5784" class="Bound Operator">_⁻¹</a> <a id="5788" class="Symbol">:</a> <a id="5790" href="Algebra.Core.html#484" class="Function">Op₁</a> <a id="5794" href="Algebra.Consequences.Setoid.html#537" class="Field">A</a><a id="5795" class="Symbol">}</a> <a id="5797" class="Symbol">{</a><a id="5798" href="Algebra.Consequences.Setoid.html#5798" class="Bound">0#</a> <a id="5801" class="Symbol">:</a> <a id="5803" href="Algebra.Consequences.Setoid.html#537" class="Field">A</a><a id="5804" class="Symbol">}</a>
|
|||
|
<a id="5815" class="Symbol">(</a><a id="5816" href="Algebra.Consequences.Setoid.html#5816" class="Bound">+-cong</a> <a id="5823" class="Symbol">:</a> <a id="5825" href="Algebra.Definitions.html#871" class="Function">Congruent₂</a> <a id="5836" href="Algebra.Consequences.Setoid.html#5757" class="Bound Operator">_+_</a><a id="5839" class="Symbol">)</a>
|
|||
|
<a id="5850" class="Symbol">(</a><a id="5851" href="Algebra.Consequences.Setoid.html#5851" class="Bound">*-cong</a> <a id="5858" class="Symbol">:</a> <a id="5860" href="Algebra.Definitions.html#871" class="Function">Congruent₂</a> <a id="5871" href="Algebra.Consequences.Setoid.html#5761" class="Bound Operator">_*_</a><a id="5874" class="Symbol">)</a>
|
|||
|
<a id="5885" class="Keyword">where</a>
|
|||
|
|
|||
|
<a id="5894" href="Algebra.Consequences.Setoid.html#5894" class="Function">assoc+distribʳ+idʳ+invʳ⇒zeˡ</a> <a id="5922" class="Symbol">:</a> <a id="5924" href="Algebra.Definitions.html#1117" class="Function">Associative</a> <a id="5936" href="Algebra.Consequences.Setoid.html#5757" class="Bound Operator">_+_</a> <a id="5940" class="Symbol">→</a> <a id="5942" href="Algebra.Consequences.Setoid.html#5761" class="Bound Operator">_*_</a> <a id="5946" href="Algebra.Definitions.html#2355" class="Function Operator">DistributesOverʳ</a> <a id="5963" href="Algebra.Consequences.Setoid.html#5757" class="Bound Operator">_+_</a> <a id="5967" class="Symbol">→</a>
|
|||
|
<a id="6001" href="Algebra.Definitions.html#1350" class="Function">RightIdentity</a> <a id="6015" href="Algebra.Consequences.Setoid.html#5798" class="Bound">0#</a> <a id="6018" href="Algebra.Consequences.Setoid.html#5757" class="Bound Operator">_+_</a> <a id="6022" class="Symbol">→</a> <a id="6024" href="Algebra.Definitions.html#1801" class="Function">RightInverse</a> <a id="6037" href="Algebra.Consequences.Setoid.html#5798" class="Bound">0#</a> <a id="6040" href="Algebra.Consequences.Setoid.html#5784" class="Bound Operator">_⁻¹</a> <a id="6044" href="Algebra.Consequences.Setoid.html#5757" class="Bound Operator">_+_</a> <a id="6048" class="Symbol">→</a>
|
|||
|
<a id="6082" href="Algebra.Definitions.html#1511" class="Function">LeftZero</a> <a id="6091" href="Algebra.Consequences.Setoid.html#5798" class="Bound">0#</a> <a id="6094" href="Algebra.Consequences.Setoid.html#5761" class="Bound Operator">_*_</a>
|
|||
|
<a id="6100" href="Algebra.Consequences.Setoid.html#5894" class="Function">assoc+distribʳ+idʳ+invʳ⇒zeˡ</a> <a id="6128" href="Algebra.Consequences.Setoid.html#6128" class="Bound">+-assoc</a> <a id="6136" href="Algebra.Consequences.Setoid.html#6136" class="Bound">distribʳ</a> <a id="6145" href="Algebra.Consequences.Setoid.html#6145" class="Bound">idʳ</a> <a id="6149" href="Algebra.Consequences.Setoid.html#6149" class="Bound">invʳ</a> <a id="6155" href="Algebra.Consequences.Setoid.html#6155" class="Bound">x</a> <a id="6157" class="Symbol">=</a> <a id="6159" href="Relation.Binary.Reasoning.Base.Single.html#1925" class="Function Operator">begin</a>
|
|||
|
<a id="6169" href="Algebra.Consequences.Setoid.html#5798" class="Bound">0#</a> <a id="6172" href="Algebra.Consequences.Setoid.html#5761" class="Bound Operator">*</a> <a id="6174" href="Algebra.Consequences.Setoid.html#6155" class="Bound">x</a> <a id="6208" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">≈⟨</a> <a id="6211" href="Relation.Binary.Structures.html#1603" class="Function">sym</a> <a id="6215" class="Symbol">(</a><a id="6216" href="Algebra.Consequences.Setoid.html#6145" class="Bound">idʳ</a> <a id="6220" class="Symbol">_)</a> <a id="6223" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">⟩</a>
|
|||
|
<a id="6229" class="Symbol">(</a><a id="6230" href="Algebra.Consequences.Setoid.html#5798" class="Bound">0#</a> <a id="6233" href="Algebra.Consequences.Setoid.html#5761" class="Bound Operator">*</a> <a id="6235" href="Algebra.Consequences.Setoid.html#6155" class="Bound">x</a><a id="6236" class="Symbol">)</a> <a id="6238" href="Algebra.Consequences.Setoid.html#5757" class="Bound Operator">+</a> <a id="6240" href="Algebra.Consequences.Setoid.html#5798" class="Bound">0#</a> <a id="6268" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">≈⟨</a> <a id="6271" href="Algebra.Consequences.Setoid.html#5816" class="Bound">+-cong</a> <a id="6278" href="Relation.Binary.Structures.html#1577" class="Function">refl</a> <a id="6283" class="Symbol">(</a><a id="6284" href="Relation.Binary.Structures.html#1603" class="Function">sym</a> <a id="6288" class="Symbol">(</a><a id="6289" href="Algebra.Consequences.Setoid.html#6149" class="Bound">invʳ</a> <a id="6294" class="Symbol">_))</a> <a id="6298" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">⟩</a>
|
|||
|
<a id="6304" class="Symbol">(</a><a id="6305" href="Algebra.Consequences.Setoid.html#5798" class="Bound">0#</a> <a id="6308" href="Algebra.Consequences.Setoid.html#5761" class="Bound Operator">*</a> <a id="6310" href="Algebra.Consequences.Setoid.html#6155" class="Bound">x</a><a id="6311" class="Symbol">)</a> <a id="6313" href="Algebra.Consequences.Setoid.html#5757" class="Bound Operator">+</a> <a id="6315" class="Symbol">((</a><a id="6317" href="Algebra.Consequences.Setoid.html#5798" class="Bound">0#</a> <a id="6320" href="Algebra.Consequences.Setoid.html#5761" class="Bound Operator">*</a> <a id="6322" href="Algebra.Consequences.Setoid.html#6155" class="Bound">x</a><a id="6323" class="Symbol">)</a> <a id="6326" href="Algebra.Consequences.Setoid.html#5757" class="Bound Operator">+</a> <a id="6328" class="Symbol">((</a><a id="6330" href="Algebra.Consequences.Setoid.html#5798" class="Bound">0#</a> <a id="6333" href="Algebra.Consequences.Setoid.html#5761" class="Bound Operator">*</a> <a id="6335" href="Algebra.Consequences.Setoid.html#6155" class="Bound">x</a><a id="6336" class="Symbol">)</a><a id="6337" href="Algebra.Consequences.Setoid.html#5784" class="Bound Operator">⁻¹</a><a id="6339" class="Symbol">))</a> <a id="6343" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">≈⟨</a> <a id="6346" href="Relation.Binary.Structures.html#1603" class="Function">sym</a> <a id="6350" class="Symbol">(</a><a id="6351" href="Algebra.Consequences.Setoid.html#6128" class="Bound">+-assoc</a> <a id="6359" class="Symbol">_</a> <a id="6361" class="Symbol">_</a> <a id="6363" class="Symbol">_)</a> <a id="6366" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">⟩</a>
|
|||
|
<a id="6372" class="Symbol">((</a><a id="6374" href="Algebra.Consequences.Setoid.html#5798" class="Bound">0#</a> <a id="6377" href="Algebra.Consequences.Setoid.html#5761" class="Bound Operator">*</a> <a id="6379" href="Algebra.Consequences.Setoid.html#6155" class="Bound">x</a><a id="6380" class="Symbol">)</a> <a id="6382" href="Algebra.Consequences.Setoid.html#5757" class="Bound Operator">+</a> <a id="6385" class="Symbol">(</a><a id="6386" href="Algebra.Consequences.Setoid.html#5798" class="Bound">0#</a> <a id="6389" href="Algebra.Consequences.Setoid.html#5761" class="Bound Operator">*</a> <a id="6391" href="Algebra.Consequences.Setoid.html#6155" class="Bound">x</a><a id="6392" class="Symbol">))</a> <a id="6395" href="Algebra.Consequences.Setoid.html#5757" class="Bound Operator">+</a> <a id="6397" class="Symbol">((</a><a id="6399" href="Algebra.Consequences.Setoid.html#5798" class="Bound">0#</a> <a id="6402" href="Algebra.Consequences.Setoid.html#5761" class="Bound Operator">*</a> <a id="6404" href="Algebra.Consequences.Setoid.html#6155" class="Bound">x</a><a id="6405" class="Symbol">)</a><a id="6406" href="Algebra.Consequences.Setoid.html#5784" class="Bound Operator">⁻¹</a><a id="6408" class="Symbol">)</a> <a id="6411" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">≈⟨</a> <a id="6414" href="Algebra.Consequences.Setoid.html#5816" class="Bound">+-cong</a> <a id="6421" class="Symbol">(</a><a id="6422" href="Relation.Binary.Structures.html#1603" class="Function">sym</a> <a id="6426" class="Symbol">(</a><a id="6427" href="Algebra.Consequences.Setoid.html#6136" class="Bound">distribʳ</a> <a id="6436" class="Symbol">_</a> <a id="6438" class="Symbol">_</a> <a id="6440" class="Symbol">_))</a> <a id="6444" href="Relation.Binary.Structures.html#1577" class="Function">refl</a> <a id="6449" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">⟩</a>
|
|||
|
<a id="6455" class="Symbol">((</a><a id="6457" href="Algebra.Consequences.Setoid.html#5798" class="Bound">0#</a> <a id="6460" href="Algebra.Consequences.Setoid.html#5757" class="Bound Operator">+</a> <a id="6462" href="Algebra.Consequences.Setoid.html#5798" class="Bound">0#</a><a id="6464" class="Symbol">)</a> <a id="6466" href="Algebra.Consequences.Setoid.html#5761" class="Bound Operator">*</a> <a id="6468" href="Algebra.Consequences.Setoid.html#6155" class="Bound">x</a><a id="6469" class="Symbol">)</a> <a id="6471" href="Algebra.Consequences.Setoid.html#5757" class="Bound Operator">+</a> <a id="6473" class="Symbol">((</a><a id="6475" href="Algebra.Consequences.Setoid.html#5798" class="Bound">0#</a> <a id="6478" href="Algebra.Consequences.Setoid.html#5761" class="Bound Operator">*</a> <a id="6480" href="Algebra.Consequences.Setoid.html#6155" class="Bound">x</a><a id="6481" class="Symbol">)</a><a id="6482" href="Algebra.Consequences.Setoid.html#5784" class="Bound Operator">⁻¹</a><a id="6484" class="Symbol">)</a> <a id="6494" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">≈⟨</a> <a id="6497" href="Algebra.Consequences.Setoid.html#5816" class="Bound">+-cong</a> <a id="6504" class="Symbol">(</a><a id="6505" href="Algebra.Consequences.Setoid.html#5851" class="Bound">*-cong</a> <a id="6512" class="Symbol">(</a><a id="6513" href="Algebra.Consequences.Setoid.html#6145" class="Bound">idʳ</a> <a id="6517" class="Symbol">_)</a> <a id="6520" href="Relation.Binary.Structures.html#1577" class="Function">refl</a><a id="6524" class="Symbol">)</a> <a id="6526" href="Relation.Binary.Structures.html#1577" class="Function">refl</a> <a id="6531" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">⟩</a>
|
|||
|
<a id="6537" class="Symbol">(</a><a id="6538" href="Algebra.Consequences.Setoid.html#5798" class="Bound">0#</a> <a id="6541" href="Algebra.Consequences.Setoid.html#5761" class="Bound Operator">*</a> <a id="6543" href="Algebra.Consequences.Setoid.html#6155" class="Bound">x</a><a id="6544" class="Symbol">)</a> <a id="6546" href="Algebra.Consequences.Setoid.html#5757" class="Bound Operator">+</a> <a id="6548" class="Symbol">((</a><a id="6550" href="Algebra.Consequences.Setoid.html#5798" class="Bound">0#</a> <a id="6553" href="Algebra.Consequences.Setoid.html#5761" class="Bound Operator">*</a> <a id="6555" href="Algebra.Consequences.Setoid.html#6155" class="Bound">x</a><a id="6556" class="Symbol">)</a><a id="6557" href="Algebra.Consequences.Setoid.html#5784" class="Bound Operator">⁻¹</a><a id="6559" class="Symbol">)</a> <a id="6576" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">≈⟨</a> <a id="6579" href="Algebra.Consequences.Setoid.html#6149" class="Bound">invʳ</a> <a id="6584" class="Symbol">_</a> <a id="6586" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">⟩</a>
|
|||
|
<a id="6592" href="Algebra.Consequences.Setoid.html#5798" class="Bound">0#</a> <a id="6631" href="Relation.Binary.Reasoning.Base.Single.html#2564" class="Function Operator">∎</a>
|
|||
|
|
|||
|
<a id="6636" href="Algebra.Consequences.Setoid.html#6636" class="Function">assoc+distribˡ+idʳ+invʳ⇒zeʳ</a> <a id="6664" class="Symbol">:</a> <a id="6666" href="Algebra.Definitions.html#1117" class="Function">Associative</a> <a id="6678" href="Algebra.Consequences.Setoid.html#5757" class="Bound Operator">_+_</a> <a id="6682" class="Symbol">→</a> <a id="6684" href="Algebra.Consequences.Setoid.html#5761" class="Bound Operator">_*_</a> <a id="6688" href="Algebra.Definitions.html#2236" class="Function Operator">DistributesOverˡ</a> <a id="6705" href="Algebra.Consequences.Setoid.html#5757" class="Bound Operator">_+_</a> <a id="6709" class="Symbol">→</a>
|
|||
|
<a id="6743" href="Algebra.Definitions.html#1350" class="Function">RightIdentity</a> <a id="6757" href="Algebra.Consequences.Setoid.html#5798" class="Bound">0#</a> <a id="6760" href="Algebra.Consequences.Setoid.html#5757" class="Bound Operator">_+_</a> <a id="6764" class="Symbol">→</a> <a id="6766" href="Algebra.Definitions.html#1801" class="Function">RightInverse</a> <a id="6779" href="Algebra.Consequences.Setoid.html#5798" class="Bound">0#</a> <a id="6782" href="Algebra.Consequences.Setoid.html#5784" class="Bound Operator">_⁻¹</a> <a id="6786" href="Algebra.Consequences.Setoid.html#5757" class="Bound Operator">_+_</a> <a id="6790" class="Symbol">→</a>
|
|||
|
<a id="6824" href="Algebra.Definitions.html#1576" class="Function">RightZero</a> <a id="6834" href="Algebra.Consequences.Setoid.html#5798" class="Bound">0#</a> <a id="6837" href="Algebra.Consequences.Setoid.html#5761" class="Bound Operator">_*_</a>
|
|||
|
<a id="6843" href="Algebra.Consequences.Setoid.html#6636" class="Function">assoc+distribˡ+idʳ+invʳ⇒zeʳ</a> <a id="6871" href="Algebra.Consequences.Setoid.html#6871" class="Bound">+-assoc</a> <a id="6879" href="Algebra.Consequences.Setoid.html#6879" class="Bound">distribˡ</a> <a id="6888" href="Algebra.Consequences.Setoid.html#6888" class="Bound">idʳ</a> <a id="6892" href="Algebra.Consequences.Setoid.html#6892" class="Bound">invʳ</a> <a id="6898" href="Algebra.Consequences.Setoid.html#6898" class="Bound">x</a> <a id="6900" class="Symbol">=</a> <a id="6902" href="Relation.Binary.Reasoning.Base.Single.html#1925" class="Function Operator">begin</a>
|
|||
|
<a id="6913" href="Algebra.Consequences.Setoid.html#6898" class="Bound">x</a> <a id="6915" href="Algebra.Consequences.Setoid.html#5761" class="Bound Operator">*</a> <a id="6917" href="Algebra.Consequences.Setoid.html#5798" class="Bound">0#</a> <a id="6951" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">≈⟨</a> <a id="6954" href="Relation.Binary.Structures.html#1603" class="Function">sym</a> <a id="6958" class="Symbol">(</a><a id="6959" href="Algebra.Consequences.Setoid.html#6888" class="Bound">idʳ</a> <a id="6963" class="Symbol">_)</a> <a id="6966" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">⟩</a>
|
|||
|
<a id="6973" class="Symbol">(</a><a id="6974" href="Algebra.Consequences.Setoid.html#6898" class="Bound">x</a> <a id="6976" href="Algebra.Consequences.Setoid.html#5761" class="Bound Operator">*</a> <a id="6978" href="Algebra.Consequences.Setoid.html#5798" class="Bound">0#</a><a id="6980" class="Symbol">)</a> <a id="6982" href="Algebra.Consequences.Setoid.html#5757" class="Bound Operator">+</a> <a id="6984" href="Algebra.Consequences.Setoid.html#5798" class="Bound">0#</a> <a id="7011" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">≈⟨</a> <a id="7014" href="Algebra.Consequences.Setoid.html#5816" class="Bound">+-cong</a> <a id="7021" href="Relation.Binary.Structures.html#1577" class="Function">refl</a> <a id="7026" class="Symbol">(</a><a id="7027" href="Relation.Binary.Structures.html#1603" class="Function">sym</a> <a id="7031" class="Symbol">(</a><a id="7032" href="Algebra.Consequences.Setoid.html#6892" class="Bound">invʳ</a> <a id="7037" class="Symbol">_))</a> <a id="7041" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">⟩</a>
|
|||
|
<a id="7048" class="Symbol">(</a><a id="7049" href="Algebra.Consequences.Setoid.html#6898" class="Bound">x</a> <a id="7051" href="Algebra.Consequences.Setoid.html#5761" class="Bound Operator">*</a> <a id="7053" href="Algebra.Consequences.Setoid.html#5798" class="Bound">0#</a><a id="7055" class="Symbol">)</a> <a id="7057" href="Algebra.Consequences.Setoid.html#5757" class="Bound Operator">+</a> <a id="7059" class="Symbol">((</a><a id="7061" href="Algebra.Consequences.Setoid.html#6898" class="Bound">x</a> <a id="7063" href="Algebra.Consequences.Setoid.html#5761" class="Bound Operator">*</a> <a id="7065" href="Algebra.Consequences.Setoid.html#5798" class="Bound">0#</a><a id="7067" class="Symbol">)</a> <a id="7069" href="Algebra.Consequences.Setoid.html#5757" class="Bound Operator">+</a> <a id="7071" class="Symbol">((</a><a id="7073" href="Algebra.Consequences.Setoid.html#6898" class="Bound">x</a> <a id="7075" href="Algebra.Consequences.Setoid.html#5761" class="Bound Operator">*</a> <a id="7077" href="Algebra.Consequences.Setoid.html#5798" class="Bound">0#</a><a id="7079" class="Symbol">)</a><a id="7080" href="Algebra.Consequences.Setoid.html#5784" class="Bound Operator">⁻¹</a><a id="7082" class="Symbol">))</a> <a id="7086" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">≈⟨</a> <a id="7089" href="Relation.Binary.Structures.html#1603" class="Function">sym</a> <a id="7093" class="Symbol">(</a><a id="7094" href="Algebra.Consequences.Setoid.html#6871" class="Bound">+-assoc</a> <a id="7102" class="Symbol">_</a> <a id="7104" class="Symbol">_</a> <a id="7106" class="Symbol">_)</a> <a id="7109" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">⟩</a>
|
|||
|
<a id="7116" class="Symbol">((</a><a id="7118" href="Algebra.Consequences.Setoid.html#6898" class="Bound">x</a> <a id="7120" href="Algebra.Consequences.Setoid.html#5761" class="Bound Operator">*</a> <a id="7122" href="Algebra.Consequences.Setoid.html#5798" class="Bound">0#</a><a id="7124" class="Symbol">)</a> <a id="7126" href="Algebra.Consequences.Setoid.html#5757" class="Bound Operator">+</a> <a id="7128" class="Symbol">(</a><a id="7129" href="Algebra.Consequences.Setoid.html#6898" class="Bound">x</a> <a id="7131" href="Algebra.Consequences.Setoid.html#5761" class="Bound Operator">*</a> <a id="7133" href="Algebra.Consequences.Setoid.html#5798" class="Bound">0#</a><a id="7135" class="Symbol">))</a> <a id="7138" href="Algebra.Consequences.Setoid.html#5757" class="Bound Operator">+</a> <a id="7140" class="Symbol">((</a><a id="7142" href="Algebra.Consequences.Setoid.html#6898" class="Bound">x</a> <a id="7144" href="Algebra.Consequences.Setoid.html#5761" class="Bound Operator">*</a> <a id="7146" href="Algebra.Consequences.Setoid.html#5798" class="Bound">0#</a><a id="7148" class="Symbol">)</a><a id="7149" href="Algebra.Consequences.Setoid.html#5784" class="Bound Operator">⁻¹</a><a id="7151" class="Symbol">)</a> <a id="7154" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">≈⟨</a> <a id="7157" href="Algebra.Consequences.Setoid.html#5816" class="Bound">+-cong</a> <a id="7164" class="Symbol">(</a><a id="7165" href="Relation.Binary.Structures.html#1603" class="Function">sym</a> <a id="7169" class="Symbol">(</a><a id="7170" href="Algebra.Consequences.Setoid.html#6879" class="Bound">distribˡ</a> <a id="7179" class="Symbol">_</a> <a id="7181" class="Symbol">_</a> <a id="7183" class="Symbol">_))</a> <a id="7187" href="Relation.Binary.Structures.html#1577" class="Function">refl</a> <a id="7192" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">⟩</a>
|
|||
|
<a id="7199" class="Symbol">(</a><a id="7200" href="Algebra.Consequences.Setoid.html#6898" class="Bound">x</a> <a id="7202" href="Algebra.Consequences.Setoid.html#5761" class="Bound Operator">*</a> <a id="7204" class="Symbol">(</a><a id="7205" href="Algebra.Consequences.Setoid.html#5798" class="Bound">0#</a> <a id="7208" href="Algebra.Consequences.Setoid.html#5757" class="Bound Operator">+</a> <a id="7210" href="Algebra.Consequences.Setoid.html#5798" class="Bound">0#</a><a id="7212" class="Symbol">))</a> <a id="7215" href="Algebra.Consequences.Setoid.html#5757" class="Bound Operator">+</a> <a id="7217" class="Symbol">((</a><a id="7219" href="Algebra.Consequences.Setoid.html#6898" class="Bound">x</a> <a id="7221" href="Algebra.Consequences.Setoid.html#5761" class="Bound Operator">*</a> <a id="7223" href="Algebra.Consequences.Setoid.html#5798" class="Bound">0#</a><a id="7225" class="Symbol">)</a><a id="7226" href="Algebra.Consequences.Setoid.html#5784" class="Bound Operator">⁻¹</a><a id="7228" class="Symbol">)</a> <a id="7237" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">≈⟨</a> <a id="7240" href="Algebra.Consequences.Setoid.html#5816" class="Bound">+-cong</a> <a id="7247" class="Symbol">(</a><a id="7248" href="Algebra.Consequences.Setoid.html#5851" class="Bound">*-cong</a> <a id="7255" href="Relation.Binary.Structures.html#1577" class="Function">refl</a> <a id="7260" class="Symbol">(</a><a id="7261" href="Algebra.Consequences.Setoid.html#6888" class="Bound">idʳ</a> <a id="7265" class="Symbol">_))</a> <a id="7269" href="Relation.Binary.Structures.html#1577" class="Function">refl</a> <a id="7274" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">⟩</a>
|
|||
|
<a id="7281" class="Symbol">((</a><a id="7283" href="Algebra.Consequences.Setoid.html#6898" class="Bound">x</a> <a id="7285" href="Algebra.Consequences.Setoid.html#5761" class="Bound Operator">*</a> <a id="7287" href="Algebra.Consequences.Setoid.html#5798" class="Bound">0#</a><a id="7289" class="Symbol">)</a> <a id="7291" href="Algebra.Consequences.Setoid.html#5757" class="Bound Operator">+</a> <a id="7293" class="Symbol">((</a><a id="7295" href="Algebra.Consequences.Setoid.html#6898" class="Bound">x</a> <a id="7297" href="Algebra.Consequences.Setoid.html#5761" class="Bound Operator">*</a> <a id="7299" href="Algebra.Consequences.Setoid.html#5798" class="Bound">0#</a><a id="7301" class="Symbol">)</a><a id="7302" href="Algebra.Consequences.Setoid.html#5784" class="Bound Operator">⁻¹</a><a id="7304" class="Symbol">))</a> <a id="7319" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">≈⟨</a> <a id="7322" href="Algebra.Consequences.Setoid.html#6892" class="Bound">invʳ</a> <a id="7327" class="Symbol">_</a> <a id="7329" href="Relation.Binary.Reasoning.Setoid.html#1061" class="Function">⟩</a>
|
|||
|
<a id="7336" href="Algebra.Consequences.Setoid.html#5798" class="Bound">0#</a> <a id="7374" href="Relation.Binary.Reasoning.Base.Single.html#2564" class="Function Operator">∎</a>
|
|||
|
|
|||
|
<a id="7377" class="Comment">------------------------------------------------------------------------</a>
|
|||
|
<a id="7450" class="Comment">-- Without Loss of Generality</a>
|
|||
|
|
|||
|
<a id="7481" class="Keyword">module</a> <a id="7488" href="Algebra.Consequences.Setoid.html#7488" class="Module">_</a> <a id="7490" class="Symbol">{</a><a id="7491" href="Algebra.Consequences.Setoid.html#7491" class="Bound">p</a><a id="7492" class="Symbol">}</a> <a id="7494" class="Symbol">{</a><a id="7495" href="Algebra.Consequences.Setoid.html#7495" class="Bound">f</a> <a id="7497" class="Symbol">:</a> <a id="7499" href="Algebra.Core.html#527" class="Function">Op₂</a> <a id="7503" href="Algebra.Consequences.Setoid.html#537" class="Field">A</a><a id="7504" class="Symbol">}</a> <a id="7506" class="Symbol">{</a><a id="7507" href="Algebra.Consequences.Setoid.html#7507" class="Bound">P</a> <a id="7509" class="Symbol">:</a> <a id="7511" href="Relation.Unary.html#1110" class="Function">Pred</a> <a id="7516" href="Algebra.Consequences.Setoid.html#537" class="Field">A</a> <a id="7518" href="Algebra.Consequences.Setoid.html#7491" class="Bound">p</a><a id="7519" class="Symbol">}</a>
|
|||
|
<a id="7530" class="Symbol">(</a><a id="7531" href="Algebra.Consequences.Setoid.html#7531" class="Bound">≈-subst</a> <a id="7539" class="Symbol">:</a> <a id="7541" href="Relation.Binary.Definitions.html#4378" class="Function">Substitutive</a> <a id="7554" href="Relation.Binary.Bundles.html#1107" class="Field Operator">_≈_</a> <a id="7558" href="Algebra.Consequences.Setoid.html#7491" class="Bound">p</a><a id="7559" class="Symbol">)</a>
|
|||
|
<a id="7570" class="Symbol">(</a><a id="7571" href="Algebra.Consequences.Setoid.html#7571" class="Bound">comm</a> <a id="7576" class="Symbol">:</a> <a id="7578" href="Algebra.Definitions.html#1204" class="Function">Commutative</a> <a id="7590" href="Algebra.Consequences.Setoid.html#7495" class="Bound">f</a><a id="7591" class="Symbol">)</a>
|
|||
|
<a id="7602" class="Keyword">where</a>
|
|||
|
|
|||
|
<a id="7611" href="Algebra.Consequences.Setoid.html#7611" class="Function">subst+comm⇒sym</a> <a id="7626" class="Symbol">:</a> <a id="7628" href="Relation.Binary.Definitions.html#1507" class="Function">Symmetric</a> <a id="7638" class="Symbol">(λ</a> <a id="7641" href="Algebra.Consequences.Setoid.html#7641" class="Bound">a</a> <a id="7643" href="Algebra.Consequences.Setoid.html#7643" class="Bound">b</a> <a id="7645" class="Symbol">→</a> <a id="7647" href="Algebra.Consequences.Setoid.html#7507" class="Bound">P</a> <a id="7649" class="Symbol">(</a><a id="7650" href="Algebra.Consequences.Setoid.html#7495" class="Bound">f</a> <a id="7652" href="Algebra.Consequences.Setoid.html#7641" class="Bound">a</a> <a id="7654" href="Algebra.Consequences.Setoid.html#7643" class="Bound">b</a><a id="7655" class="Symbol">))</a>
|
|||
|
<a id="7660" href="Algebra.Consequences.Setoid.html#7611" class="Function">subst+comm⇒sym</a> <a id="7675" class="Symbol">=</a> <a id="7677" href="Algebra.Consequences.Setoid.html#7531" class="Bound">≈-subst</a> <a id="7685" href="Algebra.Consequences.Setoid.html#7507" class="Bound">P</a> <a id="7687" class="Symbol">(</a><a id="7688" href="Algebra.Consequences.Setoid.html#7571" class="Bound">comm</a> <a id="7693" class="Symbol">_</a> <a id="7695" class="Symbol">_)</a>
|
|||
|
|
|||
|
<a id="7701" href="Algebra.Consequences.Setoid.html#7701" class="Function">wlog</a> <a id="7706" class="Symbol">:</a> <a id="7708" class="Symbol">∀</a> <a id="7710" class="Symbol">{</a><a id="7711" href="Algebra.Consequences.Setoid.html#7711" class="Bound">r</a><a id="7712" class="Symbol">}</a> <a id="7714" class="Symbol">{</a><a id="7715" href="Algebra.Consequences.Setoid.html#7715" class="Bound Operator">_R_</a> <a id="7719" class="Symbol">:</a> <a id="7721" href="Relation.Binary.Core.html#891" class="Function">Rel</a> <a id="7725" class="Symbol">_</a> <a id="7727" href="Algebra.Consequences.Setoid.html#7711" class="Bound">r</a><a id="7728" class="Symbol">}</a> <a id="7730" class="Symbol">→</a> <a id="7732" href="Relation.Binary.Definitions.html#2593" class="Function">Total</a> <a id="7738" href="Algebra.Consequences.Setoid.html#7715" class="Bound Operator">_R_</a> <a id="7742" class="Symbol">→</a>
|
|||
|
<a id="7753" class="Symbol">(∀</a> <a id="7756" href="Algebra.Consequences.Setoid.html#7756" class="Bound">a</a> <a id="7758" href="Algebra.Consequences.Setoid.html#7758" class="Bound">b</a> <a id="7760" class="Symbol">→</a> <a id="7762" href="Algebra.Consequences.Setoid.html#7756" class="Bound">a</a> <a id="7764" href="Algebra.Consequences.Setoid.html#7715" class="Bound Operator">R</a> <a id="7766" href="Algebra.Consequences.Setoid.html#7758" class="Bound">b</a> <a id="7768" class="Symbol">→</a> <a id="7770" href="Algebra.Consequences.Setoid.html#7507" class="Bound">P</a> <a id="7772" class="Symbol">(</a><a id="7773" href="Algebra.Consequences.Setoid.html#7495" class="Bound">f</a> <a id="7775" href="Algebra.Consequences.Setoid.html#7756" class="Bound">a</a> <a id="7777" href="Algebra.Consequences.Setoid.html#7758" class="Bound">b</a><a id="7778" class="Symbol">))</a> <a id="7781" class="Symbol">→</a>
|
|||
|
<a id="7792" class="Symbol">∀</a> <a id="7794" href="Algebra.Consequences.Setoid.html#7794" class="Bound">a</a> <a id="7796" href="Algebra.Consequences.Setoid.html#7796" class="Bound">b</a> <a id="7798" class="Symbol">→</a> <a id="7800" href="Algebra.Consequences.Setoid.html#7507" class="Bound">P</a> <a id="7802" class="Symbol">(</a><a id="7803" href="Algebra.Consequences.Setoid.html#7495" class="Bound">f</a> <a id="7805" href="Algebra.Consequences.Setoid.html#7794" class="Bound">a</a> <a id="7807" href="Algebra.Consequences.Setoid.html#7796" class="Bound">b</a><a id="7808" class="Symbol">)</a>
|
|||
|
<a id="7812" href="Algebra.Consequences.Setoid.html#7701" class="Function">wlog</a> <a id="7817" href="Algebra.Consequences.Setoid.html#7817" class="Bound">r-total</a> <a id="7825" class="Symbol">=</a> <a id="7827" href="Relation.Binary.Consequences.html#5532" class="Function">Bin.wlog</a> <a id="7836" href="Algebra.Consequences.Setoid.html#7817" class="Bound">r-total</a> <a id="7844" href="Algebra.Consequences.Setoid.html#7611" class="Function">subst+comm⇒sym</a>
|
|||
|
</pre></body></html>
|