mirror of
https://git8.cs.fau.de/theses/bsc-leon-vatthauer.git
synced 2024-05-31 07:28:34 +02:00
176 lines
No EOL
112 KiB
HTML
176 lines
No EOL
112 KiB
HTML
<!DOCTYPE HTML>
|
||
<html><head><meta charset="utf-8"><title>Algebra.Properties.CommutativeSemigroup</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">-- Some theory for commutative semigroup</a>
|
||
<a id="147" class="Comment">------------------------------------------------------------------------</a>
|
||
|
||
<a id="221" class="Symbol">{-#</a> <a id="225" class="Keyword">OPTIONS</a> <a id="233" class="Pragma">--cubical-compatible</a> <a id="254" class="Pragma">--safe</a> <a id="261" class="Symbol">#-}</a>
|
||
|
||
<a id="266" class="Keyword">open</a> <a id="271" class="Keyword">import</a> <a id="278" href="Algebra.html" class="Module">Algebra</a> <a id="286" class="Keyword">using</a> <a id="292" class="Symbol">(</a><a id="293" href="Algebra.Bundles.html#4864" class="Record">CommutativeSemigroup</a><a id="313" class="Symbol">)</a>
|
||
|
||
<a id="316" class="Keyword">module</a> <a id="323" href="Algebra.Properties.CommutativeSemigroup.html" class="Module">Algebra.Properties.CommutativeSemigroup</a>
|
||
<a id="365" class="Symbol">{</a><a id="366" href="Algebra.Properties.CommutativeSemigroup.html#366" class="Bound">a</a> <a id="368" href="Algebra.Properties.CommutativeSemigroup.html#368" class="Bound">ℓ</a><a id="369" class="Symbol">}</a> <a id="371" class="Symbol">(</a><a id="372" href="Algebra.Properties.CommutativeSemigroup.html#372" class="Bound">CS</a> <a id="375" class="Symbol">:</a> <a id="377" href="Algebra.Bundles.html#4864" class="Record">CommutativeSemigroup</a> <a id="398" href="Algebra.Properties.CommutativeSemigroup.html#366" class="Bound">a</a> <a id="400" href="Algebra.Properties.CommutativeSemigroup.html#368" class="Bound">ℓ</a><a id="401" class="Symbol">)</a>
|
||
<a id="405" class="Keyword">where</a>
|
||
|
||
<a id="412" class="Keyword">open</a> <a id="417" href="Algebra.Bundles.html#4864" class="Module">CommutativeSemigroup</a> <a id="438" href="Algebra.Properties.CommutativeSemigroup.html#372" class="Bound">CS</a>
|
||
|
||
<a id="442" class="Keyword">open</a> <a id="447" class="Keyword">import</a> <a id="454" href="Algebra.Definitions.html" class="Module">Algebra.Definitions</a> <a id="474" href="Algebra.Bundles.html#4993" class="Field Operator">_≈_</a>
|
||
<a id="478" class="Keyword">open</a> <a id="483" class="Keyword">import</a> <a id="490" href="Relation.Binary.Reasoning.Setoid.html" class="Module">Relation.Binary.Reasoning.Setoid</a> <a id="523" href="Algebra.Structures.html#1390" class="Function">setoid</a>
|
||
<a id="530" class="Keyword">open</a> <a id="535" class="Keyword">import</a> <a id="542" href="Data.Product.Base.html" class="Module">Data.Product.Base</a> <a id="560" class="Keyword">using</a> <a id="566" class="Symbol">(</a><a id="567" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">_,_</a><a id="570" class="Symbol">)</a>
|
||
|
||
<a id="573" class="Comment">------------------------------------------------------------------------</a>
|
||
<a id="646" class="Comment">-- Re-export the contents of semigroup</a>
|
||
|
||
<a id="686" class="Keyword">open</a> <a id="691" class="Keyword">import</a> <a id="698" href="Algebra.Properties.Semigroup.html" class="Module">Algebra.Properties.Semigroup</a> <a id="727" href="Algebra.Bundles.html#5200" class="Function">semigroup</a> <a id="737" class="Keyword">public</a>
|
||
|
||
<a id="745" class="Comment">------------------------------------------------------------------------</a>
|
||
<a id="818" class="Comment">-- Properties</a>
|
||
|
||
<a id="interchange"></a><a id="833" href="Algebra.Properties.CommutativeSemigroup.html#833" class="Function">interchange</a> <a id="845" class="Symbol">:</a> <a id="847" href="Algebra.Definitions.html#4872" class="Function">Interchangable</a> <a id="862" href="Algebra.Bundles.html#5037" class="Field Operator">_∙_</a> <a id="866" href="Algebra.Bundles.html#5037" class="Field Operator">_∙_</a>
|
||
<a id="870" href="Algebra.Properties.CommutativeSemigroup.html#833" class="Function">interchange</a> <a id="882" href="Algebra.Properties.CommutativeSemigroup.html#882" class="Bound">a</a> <a id="884" href="Algebra.Properties.CommutativeSemigroup.html#884" class="Bound">b</a> <a id="886" href="Algebra.Properties.CommutativeSemigroup.html#886" class="Bound">c</a> <a id="888" href="Algebra.Properties.CommutativeSemigroup.html#888" class="Bound">d</a> <a id="890" class="Symbol">=</a> <a id="892" href="Relation.Binary.Reasoning.Syntax.html#1510" class="Function Operator">begin</a>
|
||
<a id="900" class="Symbol">(</a><a id="901" href="Algebra.Properties.CommutativeSemigroup.html#882" class="Bound">a</a> <a id="903" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="905" href="Algebra.Properties.CommutativeSemigroup.html#884" class="Bound">b</a><a id="906" class="Symbol">)</a> <a id="908" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="910" class="Symbol">(</a><a id="911" href="Algebra.Properties.CommutativeSemigroup.html#886" class="Bound">c</a> <a id="913" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="915" href="Algebra.Properties.CommutativeSemigroup.html#888" class="Bound">d</a><a id="916" class="Symbol">)</a> <a id="919" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">≈⟨</a> <a id="923" href="Algebra.Structures.html#2977" class="Function">assoc</a> <a id="929" href="Algebra.Properties.CommutativeSemigroup.html#882" class="Bound">a</a> <a id="931" href="Algebra.Properties.CommutativeSemigroup.html#884" class="Bound">b</a> <a id="933" class="Symbol">(</a><a id="934" href="Algebra.Properties.CommutativeSemigroup.html#886" class="Bound">c</a> <a id="936" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="938" href="Algebra.Properties.CommutativeSemigroup.html#888" class="Bound">d</a><a id="939" class="Symbol">)</a> <a id="941" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">⟩</a>
|
||
<a id="945" href="Algebra.Properties.CommutativeSemigroup.html#882" class="Bound">a</a> <a id="947" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="949" class="Symbol">(</a><a id="950" href="Algebra.Properties.CommutativeSemigroup.html#884" class="Bound">b</a> <a id="952" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="954" class="Symbol">(</a><a id="955" href="Algebra.Properties.CommutativeSemigroup.html#886" class="Bound">c</a> <a id="957" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="959" href="Algebra.Properties.CommutativeSemigroup.html#888" class="Bound">d</a><a id="960" class="Symbol">))</a> <a id="964" href="Relation.Binary.Reasoning.Syntax.html#7074" class="Function">≈⟨</a> <a id="967" href="Algebra.Structures.html#1465" class="Function">∙-congˡ</a> <a id="975" class="Symbol">(</a><a id="976" href="Algebra.Structures.html#2977" class="Function">assoc</a> <a id="982" href="Algebra.Properties.CommutativeSemigroup.html#884" class="Bound">b</a> <a id="984" href="Algebra.Properties.CommutativeSemigroup.html#886" class="Bound">c</a> <a id="986" href="Algebra.Properties.CommutativeSemigroup.html#888" class="Bound">d</a><a id="987" class="Symbol">)</a> <a id="989" href="Relation.Binary.Reasoning.Syntax.html#7074" class="Function">⟨</a>
|
||
<a id="993" href="Algebra.Properties.CommutativeSemigroup.html#882" class="Bound">a</a> <a id="995" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="997" class="Symbol">((</a><a id="999" href="Algebra.Properties.CommutativeSemigroup.html#884" class="Bound">b</a> <a id="1001" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="1003" href="Algebra.Properties.CommutativeSemigroup.html#886" class="Bound">c</a><a id="1004" class="Symbol">)</a> <a id="1006" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="1008" href="Algebra.Properties.CommutativeSemigroup.html#888" class="Bound">d</a><a id="1009" class="Symbol">)</a> <a id="1012" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">≈⟨</a> <a id="1016" href="Algebra.Structures.html#1465" class="Function">∙-congˡ</a> <a id="1024" class="Symbol">(</a><a id="1025" href="Algebra.Structures.html#1526" class="Function">∙-congʳ</a> <a id="1033" class="Symbol">(</a><a id="1034" href="Algebra.Structures.html#3298" class="Function">comm</a> <a id="1039" href="Algebra.Properties.CommutativeSemigroup.html#884" class="Bound">b</a> <a id="1041" href="Algebra.Properties.CommutativeSemigroup.html#886" class="Bound">c</a><a id="1042" class="Symbol">))</a> <a id="1045" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">⟩</a>
|
||
<a id="1049" href="Algebra.Properties.CommutativeSemigroup.html#882" class="Bound">a</a> <a id="1051" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="1053" class="Symbol">((</a><a id="1055" href="Algebra.Properties.CommutativeSemigroup.html#886" class="Bound">c</a> <a id="1057" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="1059" href="Algebra.Properties.CommutativeSemigroup.html#884" class="Bound">b</a><a id="1060" class="Symbol">)</a> <a id="1062" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="1064" href="Algebra.Properties.CommutativeSemigroup.html#888" class="Bound">d</a><a id="1065" class="Symbol">)</a> <a id="1068" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">≈⟨</a> <a id="1072" href="Algebra.Structures.html#1465" class="Function">∙-congˡ</a> <a id="1080" class="Symbol">(</a><a id="1081" href="Algebra.Structures.html#2977" class="Function">assoc</a> <a id="1087" href="Algebra.Properties.CommutativeSemigroup.html#886" class="Bound">c</a> <a id="1089" href="Algebra.Properties.CommutativeSemigroup.html#884" class="Bound">b</a> <a id="1091" href="Algebra.Properties.CommutativeSemigroup.html#888" class="Bound">d</a><a id="1092" class="Symbol">)</a> <a id="1094" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">⟩</a>
|
||
<a id="1098" href="Algebra.Properties.CommutativeSemigroup.html#882" class="Bound">a</a> <a id="1100" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="1102" class="Symbol">(</a><a id="1103" href="Algebra.Properties.CommutativeSemigroup.html#886" class="Bound">c</a> <a id="1105" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="1107" class="Symbol">(</a><a id="1108" href="Algebra.Properties.CommutativeSemigroup.html#884" class="Bound">b</a> <a id="1110" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="1112" href="Algebra.Properties.CommutativeSemigroup.html#888" class="Bound">d</a><a id="1113" class="Symbol">))</a> <a id="1117" href="Relation.Binary.Reasoning.Syntax.html#7074" class="Function">≈⟨</a> <a id="1120" href="Algebra.Structures.html#2977" class="Function">assoc</a> <a id="1126" href="Algebra.Properties.CommutativeSemigroup.html#882" class="Bound">a</a> <a id="1128" href="Algebra.Properties.CommutativeSemigroup.html#886" class="Bound">c</a> <a id="1130" class="Symbol">(</a><a id="1131" href="Algebra.Properties.CommutativeSemigroup.html#884" class="Bound">b</a> <a id="1133" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="1135" href="Algebra.Properties.CommutativeSemigroup.html#888" class="Bound">d</a><a id="1136" class="Symbol">)</a> <a id="1138" href="Relation.Binary.Reasoning.Syntax.html#7074" class="Function">⟨</a>
|
||
<a id="1142" class="Symbol">(</a><a id="1143" href="Algebra.Properties.CommutativeSemigroup.html#882" class="Bound">a</a> <a id="1145" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="1147" href="Algebra.Properties.CommutativeSemigroup.html#886" class="Bound">c</a><a id="1148" class="Symbol">)</a> <a id="1150" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="1152" class="Symbol">(</a><a id="1153" href="Algebra.Properties.CommutativeSemigroup.html#884" class="Bound">b</a> <a id="1155" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="1157" href="Algebra.Properties.CommutativeSemigroup.html#888" class="Bound">d</a><a id="1158" class="Symbol">)</a> <a id="1161" href="Relation.Binary.Reasoning.Syntax.html#12283" class="Function Operator">∎</a>
|
||
|
||
<a id="1164" class="Comment">------------------------------------------------------------------------</a>
|
||
<a id="1237" class="Comment">-- Permutation laws for _∙_ for three factors.</a>
|
||
|
||
<a id="1285" class="Comment">-- There are five nontrivial permutations.</a>
|
||
|
||
<a id="1329" class="Comment">------------------------------------------------------------------------</a>
|
||
<a id="1402" class="Comment">-- Partitions (1,1).</a>
|
||
|
||
<a id="x∙yz≈y∙xz"></a><a id="1424" href="Algebra.Properties.CommutativeSemigroup.html#1424" class="Function">x∙yz≈y∙xz</a> <a id="1434" class="Symbol">:</a> <a id="1437" class="Symbol">∀</a> <a id="1439" href="Algebra.Properties.CommutativeSemigroup.html#1439" class="Bound">x</a> <a id="1441" href="Algebra.Properties.CommutativeSemigroup.html#1441" class="Bound">y</a> <a id="1443" href="Algebra.Properties.CommutativeSemigroup.html#1443" class="Bound">z</a> <a id="1445" class="Symbol">→</a> <a id="1447" href="Algebra.Properties.CommutativeSemigroup.html#1439" class="Bound">x</a> <a id="1449" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="1451" class="Symbol">(</a><a id="1452" href="Algebra.Properties.CommutativeSemigroup.html#1441" class="Bound">y</a> <a id="1454" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="1456" href="Algebra.Properties.CommutativeSemigroup.html#1443" class="Bound">z</a><a id="1457" class="Symbol">)</a> <a id="1459" href="Algebra.Bundles.html#4993" class="Field Operator">≈</a> <a id="1461" href="Algebra.Properties.CommutativeSemigroup.html#1441" class="Bound">y</a> <a id="1463" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="1465" class="Symbol">(</a><a id="1466" href="Algebra.Properties.CommutativeSemigroup.html#1439" class="Bound">x</a> <a id="1468" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="1470" href="Algebra.Properties.CommutativeSemigroup.html#1443" class="Bound">z</a><a id="1471" class="Symbol">)</a>
|
||
<a id="1473" href="Algebra.Properties.CommutativeSemigroup.html#1424" class="Function">x∙yz≈y∙xz</a> <a id="1483" href="Algebra.Properties.CommutativeSemigroup.html#1483" class="Bound">x</a> <a id="1485" href="Algebra.Properties.CommutativeSemigroup.html#1485" class="Bound">y</a> <a id="1487" href="Algebra.Properties.CommutativeSemigroup.html#1487" class="Bound">z</a> <a id="1489" class="Symbol">=</a> <a id="1491" href="Relation.Binary.Reasoning.Syntax.html#1510" class="Function Operator">begin</a>
|
||
<a id="1499" href="Algebra.Properties.CommutativeSemigroup.html#1483" class="Bound">x</a> <a id="1501" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="1503" class="Symbol">(</a><a id="1504" href="Algebra.Properties.CommutativeSemigroup.html#1485" class="Bound">y</a> <a id="1506" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="1508" href="Algebra.Properties.CommutativeSemigroup.html#1487" class="Bound">z</a><a id="1509" class="Symbol">)</a> <a id="1514" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">≈⟨</a> <a id="1517" href="Relation.Binary.Structures.html#1622" class="Function">sym</a> <a id="1521" class="Symbol">(</a><a id="1522" href="Algebra.Structures.html#2977" class="Function">assoc</a> <a id="1528" href="Algebra.Properties.CommutativeSemigroup.html#1483" class="Bound">x</a> <a id="1530" href="Algebra.Properties.CommutativeSemigroup.html#1485" class="Bound">y</a> <a id="1532" href="Algebra.Properties.CommutativeSemigroup.html#1487" class="Bound">z</a><a id="1533" class="Symbol">)</a> <a id="1535" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">⟩</a>
|
||
<a id="1539" class="Symbol">(</a><a id="1540" href="Algebra.Properties.CommutativeSemigroup.html#1483" class="Bound">x</a> <a id="1542" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="1544" href="Algebra.Properties.CommutativeSemigroup.html#1485" class="Bound">y</a><a id="1545" class="Symbol">)</a> <a id="1547" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="1549" href="Algebra.Properties.CommutativeSemigroup.html#1487" class="Bound">z</a> <a id="1554" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">≈⟨</a> <a id="1557" href="Algebra.Structures.html#1526" class="Function">∙-congʳ</a> <a id="1565" class="Symbol">(</a><a id="1566" href="Algebra.Structures.html#3298" class="Function">comm</a> <a id="1571" href="Algebra.Properties.CommutativeSemigroup.html#1483" class="Bound">x</a> <a id="1573" href="Algebra.Properties.CommutativeSemigroup.html#1485" class="Bound">y</a><a id="1574" class="Symbol">)</a> <a id="1576" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">⟩</a>
|
||
<a id="1580" class="Symbol">(</a><a id="1581" href="Algebra.Properties.CommutativeSemigroup.html#1485" class="Bound">y</a> <a id="1583" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="1585" href="Algebra.Properties.CommutativeSemigroup.html#1483" class="Bound">x</a><a id="1586" class="Symbol">)</a> <a id="1588" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="1590" href="Algebra.Properties.CommutativeSemigroup.html#1487" class="Bound">z</a> <a id="1595" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">≈⟨</a> <a id="1598" href="Algebra.Structures.html#2977" class="Function">assoc</a> <a id="1604" href="Algebra.Properties.CommutativeSemigroup.html#1485" class="Bound">y</a> <a id="1606" href="Algebra.Properties.CommutativeSemigroup.html#1483" class="Bound">x</a> <a id="1608" href="Algebra.Properties.CommutativeSemigroup.html#1487" class="Bound">z</a> <a id="1610" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">⟩</a>
|
||
<a id="1614" href="Algebra.Properties.CommutativeSemigroup.html#1485" class="Bound">y</a> <a id="1616" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="1618" class="Symbol">(</a><a id="1619" href="Algebra.Properties.CommutativeSemigroup.html#1483" class="Bound">x</a> <a id="1621" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="1623" href="Algebra.Properties.CommutativeSemigroup.html#1487" class="Bound">z</a><a id="1624" class="Symbol">)</a> <a id="1629" href="Relation.Binary.Reasoning.Syntax.html#12283" class="Function Operator">∎</a>
|
||
|
||
<a id="x∙yz≈z∙yx"></a><a id="1632" href="Algebra.Properties.CommutativeSemigroup.html#1632" class="Function">x∙yz≈z∙yx</a> <a id="1642" class="Symbol">:</a> <a id="1645" class="Symbol">∀</a> <a id="1647" href="Algebra.Properties.CommutativeSemigroup.html#1647" class="Bound">x</a> <a id="1649" href="Algebra.Properties.CommutativeSemigroup.html#1649" class="Bound">y</a> <a id="1651" href="Algebra.Properties.CommutativeSemigroup.html#1651" class="Bound">z</a> <a id="1653" class="Symbol">→</a> <a id="1655" href="Algebra.Properties.CommutativeSemigroup.html#1647" class="Bound">x</a> <a id="1657" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="1659" class="Symbol">(</a><a id="1660" href="Algebra.Properties.CommutativeSemigroup.html#1649" class="Bound">y</a> <a id="1662" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="1664" href="Algebra.Properties.CommutativeSemigroup.html#1651" class="Bound">z</a><a id="1665" class="Symbol">)</a> <a id="1667" href="Algebra.Bundles.html#4993" class="Field Operator">≈</a> <a id="1669" href="Algebra.Properties.CommutativeSemigroup.html#1651" class="Bound">z</a> <a id="1671" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="1673" class="Symbol">(</a><a id="1674" href="Algebra.Properties.CommutativeSemigroup.html#1649" class="Bound">y</a> <a id="1676" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="1678" href="Algebra.Properties.CommutativeSemigroup.html#1647" class="Bound">x</a><a id="1679" class="Symbol">)</a>
|
||
<a id="1681" href="Algebra.Properties.CommutativeSemigroup.html#1632" class="Function">x∙yz≈z∙yx</a> <a id="1691" href="Algebra.Properties.CommutativeSemigroup.html#1691" class="Bound">x</a> <a id="1693" href="Algebra.Properties.CommutativeSemigroup.html#1693" class="Bound">y</a> <a id="1695" href="Algebra.Properties.CommutativeSemigroup.html#1695" class="Bound">z</a> <a id="1697" class="Symbol">=</a> <a id="1699" href="Relation.Binary.Reasoning.Syntax.html#1510" class="Function Operator">begin</a>
|
||
<a id="1707" href="Algebra.Properties.CommutativeSemigroup.html#1691" class="Bound">x</a> <a id="1709" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="1711" class="Symbol">(</a><a id="1712" href="Algebra.Properties.CommutativeSemigroup.html#1693" class="Bound">y</a> <a id="1714" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="1716" href="Algebra.Properties.CommutativeSemigroup.html#1695" class="Bound">z</a><a id="1717" class="Symbol">)</a> <a id="1722" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">≈⟨</a> <a id="1725" href="Algebra.Structures.html#1465" class="Function">∙-congˡ</a> <a id="1733" class="Symbol">(</a><a id="1734" href="Algebra.Structures.html#3298" class="Function">comm</a> <a id="1739" href="Algebra.Properties.CommutativeSemigroup.html#1693" class="Bound">y</a> <a id="1741" href="Algebra.Properties.CommutativeSemigroup.html#1695" class="Bound">z</a><a id="1742" class="Symbol">)</a> <a id="1744" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">⟩</a>
|
||
<a id="1748" href="Algebra.Properties.CommutativeSemigroup.html#1691" class="Bound">x</a> <a id="1750" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="1752" class="Symbol">(</a><a id="1753" href="Algebra.Properties.CommutativeSemigroup.html#1695" class="Bound">z</a> <a id="1755" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="1757" href="Algebra.Properties.CommutativeSemigroup.html#1693" class="Bound">y</a><a id="1758" class="Symbol">)</a> <a id="1763" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">≈⟨</a> <a id="1766" href="Algebra.Properties.CommutativeSemigroup.html#1424" class="Function">x∙yz≈y∙xz</a> <a id="1776" href="Algebra.Properties.CommutativeSemigroup.html#1691" class="Bound">x</a> <a id="1778" href="Algebra.Properties.CommutativeSemigroup.html#1695" class="Bound">z</a> <a id="1780" href="Algebra.Properties.CommutativeSemigroup.html#1693" class="Bound">y</a> <a id="1782" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">⟩</a>
|
||
<a id="1786" href="Algebra.Properties.CommutativeSemigroup.html#1695" class="Bound">z</a> <a id="1788" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="1790" class="Symbol">(</a><a id="1791" href="Algebra.Properties.CommutativeSemigroup.html#1691" class="Bound">x</a> <a id="1793" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="1795" href="Algebra.Properties.CommutativeSemigroup.html#1693" class="Bound">y</a><a id="1796" class="Symbol">)</a> <a id="1801" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">≈⟨</a> <a id="1804" href="Algebra.Structures.html#1465" class="Function">∙-congˡ</a> <a id="1812" class="Symbol">(</a><a id="1813" href="Algebra.Structures.html#3298" class="Function">comm</a> <a id="1818" href="Algebra.Properties.CommutativeSemigroup.html#1691" class="Bound">x</a> <a id="1820" href="Algebra.Properties.CommutativeSemigroup.html#1693" class="Bound">y</a><a id="1821" class="Symbol">)</a> <a id="1823" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">⟩</a>
|
||
<a id="1827" href="Algebra.Properties.CommutativeSemigroup.html#1695" class="Bound">z</a> <a id="1829" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="1831" class="Symbol">(</a><a id="1832" href="Algebra.Properties.CommutativeSemigroup.html#1693" class="Bound">y</a> <a id="1834" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="1836" href="Algebra.Properties.CommutativeSemigroup.html#1691" class="Bound">x</a><a id="1837" class="Symbol">)</a> <a id="1842" href="Relation.Binary.Reasoning.Syntax.html#12283" class="Function Operator">∎</a>
|
||
|
||
<a id="x∙yz≈x∙zy"></a><a id="1845" href="Algebra.Properties.CommutativeSemigroup.html#1845" class="Function">x∙yz≈x∙zy</a> <a id="1855" class="Symbol">:</a> <a id="1858" class="Symbol">∀</a> <a id="1860" href="Algebra.Properties.CommutativeSemigroup.html#1860" class="Bound">x</a> <a id="1862" href="Algebra.Properties.CommutativeSemigroup.html#1862" class="Bound">y</a> <a id="1864" href="Algebra.Properties.CommutativeSemigroup.html#1864" class="Bound">z</a> <a id="1866" class="Symbol">→</a> <a id="1868" href="Algebra.Properties.CommutativeSemigroup.html#1860" class="Bound">x</a> <a id="1870" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="1872" class="Symbol">(</a><a id="1873" href="Algebra.Properties.CommutativeSemigroup.html#1862" class="Bound">y</a> <a id="1875" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="1877" href="Algebra.Properties.CommutativeSemigroup.html#1864" class="Bound">z</a><a id="1878" class="Symbol">)</a> <a id="1880" href="Algebra.Bundles.html#4993" class="Field Operator">≈</a> <a id="1882" href="Algebra.Properties.CommutativeSemigroup.html#1860" class="Bound">x</a> <a id="1884" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="1886" class="Symbol">(</a><a id="1887" href="Algebra.Properties.CommutativeSemigroup.html#1864" class="Bound">z</a> <a id="1889" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="1891" href="Algebra.Properties.CommutativeSemigroup.html#1862" class="Bound">y</a><a id="1892" class="Symbol">)</a>
|
||
<a id="1894" href="Algebra.Properties.CommutativeSemigroup.html#1845" class="Function">x∙yz≈x∙zy</a> <a id="1904" class="Symbol">_</a> <a id="1906" href="Algebra.Properties.CommutativeSemigroup.html#1906" class="Bound">y</a> <a id="1908" href="Algebra.Properties.CommutativeSemigroup.html#1908" class="Bound">z</a> <a id="1910" class="Symbol">=</a> <a id="1913" href="Algebra.Structures.html#1465" class="Function">∙-congˡ</a> <a id="1921" class="Symbol">(</a><a id="1922" href="Algebra.Structures.html#3298" class="Function">comm</a> <a id="1927" href="Algebra.Properties.CommutativeSemigroup.html#1906" class="Bound">y</a> <a id="1929" href="Algebra.Properties.CommutativeSemigroup.html#1908" class="Bound">z</a><a id="1930" class="Symbol">)</a>
|
||
|
||
<a id="x∙yz≈y∙zx"></a><a id="1933" href="Algebra.Properties.CommutativeSemigroup.html#1933" class="Function">x∙yz≈y∙zx</a> <a id="1943" class="Symbol">:</a> <a id="1946" class="Symbol">∀</a> <a id="1948" href="Algebra.Properties.CommutativeSemigroup.html#1948" class="Bound">x</a> <a id="1950" href="Algebra.Properties.CommutativeSemigroup.html#1950" class="Bound">y</a> <a id="1952" href="Algebra.Properties.CommutativeSemigroup.html#1952" class="Bound">z</a> <a id="1954" class="Symbol">→</a> <a id="1956" href="Algebra.Properties.CommutativeSemigroup.html#1948" class="Bound">x</a> <a id="1958" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="1960" class="Symbol">(</a><a id="1961" href="Algebra.Properties.CommutativeSemigroup.html#1950" class="Bound">y</a> <a id="1963" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="1965" href="Algebra.Properties.CommutativeSemigroup.html#1952" class="Bound">z</a><a id="1966" class="Symbol">)</a> <a id="1968" href="Algebra.Bundles.html#4993" class="Field Operator">≈</a> <a id="1970" href="Algebra.Properties.CommutativeSemigroup.html#1950" class="Bound">y</a> <a id="1972" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="1974" class="Symbol">(</a><a id="1975" href="Algebra.Properties.CommutativeSemigroup.html#1952" class="Bound">z</a> <a id="1977" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="1979" href="Algebra.Properties.CommutativeSemigroup.html#1948" class="Bound">x</a><a id="1980" class="Symbol">)</a>
|
||
<a id="1982" href="Algebra.Properties.CommutativeSemigroup.html#1933" class="Function">x∙yz≈y∙zx</a> <a id="1992" href="Algebra.Properties.CommutativeSemigroup.html#1992" class="Bound">x</a> <a id="1994" href="Algebra.Properties.CommutativeSemigroup.html#1994" class="Bound">y</a> <a id="1996" href="Algebra.Properties.CommutativeSemigroup.html#1996" class="Bound">z</a> <a id="1998" class="Symbol">=</a> <a id="2000" href="Relation.Binary.Reasoning.Syntax.html#1510" class="Function Operator">begin</a>
|
||
<a id="2008" href="Algebra.Properties.CommutativeSemigroup.html#1992" class="Bound">x</a> <a id="2010" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="2012" class="Symbol">(</a><a id="2013" href="Algebra.Properties.CommutativeSemigroup.html#1994" class="Bound">y</a> <a id="2015" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="2017" href="Algebra.Properties.CommutativeSemigroup.html#1996" class="Bound">z</a><a id="2018" class="Symbol">)</a> <a id="2022" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">≈⟨</a> <a id="2025" href="Algebra.Structures.html#3298" class="Function">comm</a> <a id="2030" href="Algebra.Properties.CommutativeSemigroup.html#1992" class="Bound">x</a> <a id="2032" class="Symbol">_</a> <a id="2034" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">⟩</a>
|
||
<a id="2038" class="Symbol">(</a><a id="2039" href="Algebra.Properties.CommutativeSemigroup.html#1994" class="Bound">y</a> <a id="2041" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="2043" href="Algebra.Properties.CommutativeSemigroup.html#1996" class="Bound">z</a><a id="2044" class="Symbol">)</a> <a id="2046" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="2048" href="Algebra.Properties.CommutativeSemigroup.html#1992" class="Bound">x</a> <a id="2052" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">≈⟨</a> <a id="2055" href="Algebra.Structures.html#2977" class="Function">assoc</a> <a id="2061" href="Algebra.Properties.CommutativeSemigroup.html#1994" class="Bound">y</a> <a id="2063" href="Algebra.Properties.CommutativeSemigroup.html#1996" class="Bound">z</a> <a id="2065" href="Algebra.Properties.CommutativeSemigroup.html#1992" class="Bound">x</a> <a id="2067" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">⟩</a>
|
||
<a id="2071" href="Algebra.Properties.CommutativeSemigroup.html#1994" class="Bound">y</a> <a id="2073" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="2075" class="Symbol">(</a><a id="2076" href="Algebra.Properties.CommutativeSemigroup.html#1996" class="Bound">z</a> <a id="2078" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="2080" href="Algebra.Properties.CommutativeSemigroup.html#1992" class="Bound">x</a><a id="2081" class="Symbol">)</a> <a id="2085" href="Relation.Binary.Reasoning.Syntax.html#12283" class="Function Operator">∎</a>
|
||
|
||
<a id="x∙yz≈z∙xy"></a><a id="2088" href="Algebra.Properties.CommutativeSemigroup.html#2088" class="Function">x∙yz≈z∙xy</a> <a id="2098" class="Symbol">:</a> <a id="2101" class="Symbol">∀</a> <a id="2103" href="Algebra.Properties.CommutativeSemigroup.html#2103" class="Bound">x</a> <a id="2105" href="Algebra.Properties.CommutativeSemigroup.html#2105" class="Bound">y</a> <a id="2107" href="Algebra.Properties.CommutativeSemigroup.html#2107" class="Bound">z</a> <a id="2109" class="Symbol">→</a> <a id="2111" href="Algebra.Properties.CommutativeSemigroup.html#2103" class="Bound">x</a> <a id="2113" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="2115" class="Symbol">(</a><a id="2116" href="Algebra.Properties.CommutativeSemigroup.html#2105" class="Bound">y</a> <a id="2118" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="2120" href="Algebra.Properties.CommutativeSemigroup.html#2107" class="Bound">z</a><a id="2121" class="Symbol">)</a> <a id="2123" href="Algebra.Bundles.html#4993" class="Field Operator">≈</a> <a id="2125" href="Algebra.Properties.CommutativeSemigroup.html#2107" class="Bound">z</a> <a id="2127" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="2129" class="Symbol">(</a><a id="2130" href="Algebra.Properties.CommutativeSemigroup.html#2103" class="Bound">x</a> <a id="2132" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="2134" href="Algebra.Properties.CommutativeSemigroup.html#2105" class="Bound">y</a><a id="2135" class="Symbol">)</a>
|
||
<a id="2137" href="Algebra.Properties.CommutativeSemigroup.html#2088" class="Function">x∙yz≈z∙xy</a> <a id="2147" href="Algebra.Properties.CommutativeSemigroup.html#2147" class="Bound">x</a> <a id="2149" href="Algebra.Properties.CommutativeSemigroup.html#2149" class="Bound">y</a> <a id="2151" href="Algebra.Properties.CommutativeSemigroup.html#2151" class="Bound">z</a> <a id="2153" class="Symbol">=</a> <a id="2155" href="Relation.Binary.Reasoning.Syntax.html#1510" class="Function Operator">begin</a>
|
||
<a id="2163" href="Algebra.Properties.CommutativeSemigroup.html#2147" class="Bound">x</a> <a id="2165" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="2167" class="Symbol">(</a><a id="2168" href="Algebra.Properties.CommutativeSemigroup.html#2149" class="Bound">y</a> <a id="2170" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="2172" href="Algebra.Properties.CommutativeSemigroup.html#2151" class="Bound">z</a><a id="2173" class="Symbol">)</a> <a id="2177" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">≈⟨</a> <a id="2180" href="Relation.Binary.Structures.html#1622" class="Function">sym</a> <a id="2184" class="Symbol">(</a><a id="2185" href="Algebra.Structures.html#2977" class="Function">assoc</a> <a id="2191" href="Algebra.Properties.CommutativeSemigroup.html#2147" class="Bound">x</a> <a id="2193" href="Algebra.Properties.CommutativeSemigroup.html#2149" class="Bound">y</a> <a id="2195" href="Algebra.Properties.CommutativeSemigroup.html#2151" class="Bound">z</a><a id="2196" class="Symbol">)</a> <a id="2198" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">⟩</a>
|
||
<a id="2202" class="Symbol">(</a><a id="2203" href="Algebra.Properties.CommutativeSemigroup.html#2147" class="Bound">x</a> <a id="2205" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="2207" href="Algebra.Properties.CommutativeSemigroup.html#2149" class="Bound">y</a><a id="2208" class="Symbol">)</a> <a id="2210" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="2212" href="Algebra.Properties.CommutativeSemigroup.html#2151" class="Bound">z</a> <a id="2216" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">≈⟨</a> <a id="2219" href="Algebra.Structures.html#3298" class="Function">comm</a> <a id="2224" class="Symbol">_</a> <a id="2226" href="Algebra.Properties.CommutativeSemigroup.html#2151" class="Bound">z</a> <a id="2228" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">⟩</a>
|
||
<a id="2232" href="Algebra.Properties.CommutativeSemigroup.html#2151" class="Bound">z</a> <a id="2234" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="2236" class="Symbol">(</a><a id="2237" href="Algebra.Properties.CommutativeSemigroup.html#2147" class="Bound">x</a> <a id="2239" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="2241" href="Algebra.Properties.CommutativeSemigroup.html#2149" class="Bound">y</a><a id="2242" class="Symbol">)</a> <a id="2246" href="Relation.Binary.Reasoning.Syntax.html#12283" class="Function Operator">∎</a>
|
||
|
||
<a id="2249" class="Comment">------------------------------------------------------------------------</a>
|
||
<a id="2322" class="Comment">-- Partitions (1,2).</a>
|
||
|
||
<a id="2344" class="Comment">-- These permutation laws are proved by composing the proofs for</a>
|
||
<a id="2409" class="Comment">-- partitions (1,1) with \p → trans p (sym (assoc _ _ _)).</a>
|
||
|
||
<a id="x∙yz≈yx∙z"></a><a id="2470" href="Algebra.Properties.CommutativeSemigroup.html#2470" class="Function">x∙yz≈yx∙z</a> <a id="2480" class="Symbol">:</a> <a id="2483" class="Symbol">∀</a> <a id="2485" href="Algebra.Properties.CommutativeSemigroup.html#2485" class="Bound">x</a> <a id="2487" href="Algebra.Properties.CommutativeSemigroup.html#2487" class="Bound">y</a> <a id="2489" href="Algebra.Properties.CommutativeSemigroup.html#2489" class="Bound">z</a> <a id="2491" class="Symbol">→</a> <a id="2493" href="Algebra.Properties.CommutativeSemigroup.html#2485" class="Bound">x</a> <a id="2495" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="2497" class="Symbol">(</a><a id="2498" href="Algebra.Properties.CommutativeSemigroup.html#2487" class="Bound">y</a> <a id="2500" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="2502" href="Algebra.Properties.CommutativeSemigroup.html#2489" class="Bound">z</a><a id="2503" class="Symbol">)</a> <a id="2505" href="Algebra.Bundles.html#4993" class="Field Operator">≈</a> <a id="2507" class="Symbol">(</a><a id="2508" href="Algebra.Properties.CommutativeSemigroup.html#2487" class="Bound">y</a> <a id="2510" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="2512" href="Algebra.Properties.CommutativeSemigroup.html#2485" class="Bound">x</a><a id="2513" class="Symbol">)</a> <a id="2515" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="2517" href="Algebra.Properties.CommutativeSemigroup.html#2489" class="Bound">z</a>
|
||
<a id="2519" href="Algebra.Properties.CommutativeSemigroup.html#2470" class="Function">x∙yz≈yx∙z</a> <a id="2529" href="Algebra.Properties.CommutativeSemigroup.html#2529" class="Bound">x</a> <a id="2531" href="Algebra.Properties.CommutativeSemigroup.html#2531" class="Bound">y</a> <a id="2533" href="Algebra.Properties.CommutativeSemigroup.html#2533" class="Bound">z</a> <a id="2535" class="Symbol">=</a> <a id="2538" href="Relation.Binary.Structures.html#1648" class="Function">trans</a> <a id="2544" class="Symbol">(</a><a id="2545" href="Algebra.Properties.CommutativeSemigroup.html#1424" class="Function">x∙yz≈y∙xz</a> <a id="2555" href="Algebra.Properties.CommutativeSemigroup.html#2529" class="Bound">x</a> <a id="2557" href="Algebra.Properties.CommutativeSemigroup.html#2531" class="Bound">y</a> <a id="2559" href="Algebra.Properties.CommutativeSemigroup.html#2533" class="Bound">z</a><a id="2560" class="Symbol">)</a> <a id="2562" class="Symbol">(</a><a id="2563" href="Relation.Binary.Structures.html#1622" class="Function">sym</a> <a id="2567" class="Symbol">(</a><a id="2568" href="Algebra.Structures.html#2977" class="Function">assoc</a> <a id="2574" href="Algebra.Properties.CommutativeSemigroup.html#2531" class="Bound">y</a> <a id="2576" href="Algebra.Properties.CommutativeSemigroup.html#2529" class="Bound">x</a> <a id="2578" href="Algebra.Properties.CommutativeSemigroup.html#2533" class="Bound">z</a><a id="2579" class="Symbol">))</a>
|
||
|
||
<a id="x∙yz≈zy∙x"></a><a id="2583" href="Algebra.Properties.CommutativeSemigroup.html#2583" class="Function">x∙yz≈zy∙x</a> <a id="2593" class="Symbol">:</a> <a id="2596" class="Symbol">∀</a> <a id="2598" href="Algebra.Properties.CommutativeSemigroup.html#2598" class="Bound">x</a> <a id="2600" href="Algebra.Properties.CommutativeSemigroup.html#2600" class="Bound">y</a> <a id="2602" href="Algebra.Properties.CommutativeSemigroup.html#2602" class="Bound">z</a> <a id="2604" class="Symbol">→</a> <a id="2606" href="Algebra.Properties.CommutativeSemigroup.html#2598" class="Bound">x</a> <a id="2608" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="2610" class="Symbol">(</a><a id="2611" href="Algebra.Properties.CommutativeSemigroup.html#2600" class="Bound">y</a> <a id="2613" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="2615" href="Algebra.Properties.CommutativeSemigroup.html#2602" class="Bound">z</a><a id="2616" class="Symbol">)</a> <a id="2618" href="Algebra.Bundles.html#4993" class="Field Operator">≈</a> <a id="2620" class="Symbol">(</a><a id="2621" href="Algebra.Properties.CommutativeSemigroup.html#2602" class="Bound">z</a> <a id="2623" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="2625" href="Algebra.Properties.CommutativeSemigroup.html#2600" class="Bound">y</a><a id="2626" class="Symbol">)</a> <a id="2628" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="2630" href="Algebra.Properties.CommutativeSemigroup.html#2598" class="Bound">x</a>
|
||
<a id="2632" href="Algebra.Properties.CommutativeSemigroup.html#2583" class="Function">x∙yz≈zy∙x</a> <a id="2642" href="Algebra.Properties.CommutativeSemigroup.html#2642" class="Bound">x</a> <a id="2644" href="Algebra.Properties.CommutativeSemigroup.html#2644" class="Bound">y</a> <a id="2646" href="Algebra.Properties.CommutativeSemigroup.html#2646" class="Bound">z</a> <a id="2648" class="Symbol">=</a> <a id="2651" href="Relation.Binary.Structures.html#1648" class="Function">trans</a> <a id="2657" class="Symbol">(</a><a id="2658" href="Algebra.Properties.CommutativeSemigroup.html#1632" class="Function">x∙yz≈z∙yx</a> <a id="2668" href="Algebra.Properties.CommutativeSemigroup.html#2642" class="Bound">x</a> <a id="2670" href="Algebra.Properties.CommutativeSemigroup.html#2644" class="Bound">y</a> <a id="2672" href="Algebra.Properties.CommutativeSemigroup.html#2646" class="Bound">z</a><a id="2673" class="Symbol">)</a> <a id="2675" class="Symbol">(</a><a id="2676" href="Relation.Binary.Structures.html#1622" class="Function">sym</a> <a id="2680" class="Symbol">(</a><a id="2681" href="Algebra.Structures.html#2977" class="Function">assoc</a> <a id="2687" href="Algebra.Properties.CommutativeSemigroup.html#2646" class="Bound">z</a> <a id="2689" href="Algebra.Properties.CommutativeSemigroup.html#2644" class="Bound">y</a> <a id="2691" href="Algebra.Properties.CommutativeSemigroup.html#2642" class="Bound">x</a><a id="2692" class="Symbol">))</a>
|
||
|
||
<a id="x∙yz≈xz∙y"></a><a id="2696" href="Algebra.Properties.CommutativeSemigroup.html#2696" class="Function">x∙yz≈xz∙y</a> <a id="2706" class="Symbol">:</a> <a id="2709" class="Symbol">∀</a> <a id="2711" href="Algebra.Properties.CommutativeSemigroup.html#2711" class="Bound">x</a> <a id="2713" href="Algebra.Properties.CommutativeSemigroup.html#2713" class="Bound">y</a> <a id="2715" href="Algebra.Properties.CommutativeSemigroup.html#2715" class="Bound">z</a> <a id="2717" class="Symbol">→</a> <a id="2719" href="Algebra.Properties.CommutativeSemigroup.html#2711" class="Bound">x</a> <a id="2721" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="2723" class="Symbol">(</a><a id="2724" href="Algebra.Properties.CommutativeSemigroup.html#2713" class="Bound">y</a> <a id="2726" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="2728" href="Algebra.Properties.CommutativeSemigroup.html#2715" class="Bound">z</a><a id="2729" class="Symbol">)</a> <a id="2731" href="Algebra.Bundles.html#4993" class="Field Operator">≈</a> <a id="2733" class="Symbol">(</a><a id="2734" href="Algebra.Properties.CommutativeSemigroup.html#2711" class="Bound">x</a> <a id="2736" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="2738" href="Algebra.Properties.CommutativeSemigroup.html#2715" class="Bound">z</a><a id="2739" class="Symbol">)</a> <a id="2741" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="2743" href="Algebra.Properties.CommutativeSemigroup.html#2713" class="Bound">y</a>
|
||
<a id="2745" href="Algebra.Properties.CommutativeSemigroup.html#2696" class="Function">x∙yz≈xz∙y</a> <a id="2755" href="Algebra.Properties.CommutativeSemigroup.html#2755" class="Bound">x</a> <a id="2757" href="Algebra.Properties.CommutativeSemigroup.html#2757" class="Bound">y</a> <a id="2759" href="Algebra.Properties.CommutativeSemigroup.html#2759" class="Bound">z</a> <a id="2761" class="Symbol">=</a> <a id="2764" href="Relation.Binary.Structures.html#1648" class="Function">trans</a> <a id="2770" class="Symbol">(</a><a id="2771" href="Algebra.Properties.CommutativeSemigroup.html#1845" class="Function">x∙yz≈x∙zy</a> <a id="2781" href="Algebra.Properties.CommutativeSemigroup.html#2755" class="Bound">x</a> <a id="2783" href="Algebra.Properties.CommutativeSemigroup.html#2757" class="Bound">y</a> <a id="2785" href="Algebra.Properties.CommutativeSemigroup.html#2759" class="Bound">z</a><a id="2786" class="Symbol">)</a> <a id="2788" class="Symbol">(</a><a id="2789" href="Relation.Binary.Structures.html#1622" class="Function">sym</a> <a id="2793" class="Symbol">(</a><a id="2794" href="Algebra.Structures.html#2977" class="Function">assoc</a> <a id="2800" href="Algebra.Properties.CommutativeSemigroup.html#2755" class="Bound">x</a> <a id="2802" href="Algebra.Properties.CommutativeSemigroup.html#2759" class="Bound">z</a> <a id="2804" href="Algebra.Properties.CommutativeSemigroup.html#2757" class="Bound">y</a><a id="2805" class="Symbol">))</a>
|
||
|
||
<a id="x∙yz≈yz∙x"></a><a id="2809" href="Algebra.Properties.CommutativeSemigroup.html#2809" class="Function">x∙yz≈yz∙x</a> <a id="2819" class="Symbol">:</a> <a id="2822" class="Symbol">∀</a> <a id="2824" href="Algebra.Properties.CommutativeSemigroup.html#2824" class="Bound">x</a> <a id="2826" href="Algebra.Properties.CommutativeSemigroup.html#2826" class="Bound">y</a> <a id="2828" href="Algebra.Properties.CommutativeSemigroup.html#2828" class="Bound">z</a> <a id="2830" class="Symbol">→</a> <a id="2832" href="Algebra.Properties.CommutativeSemigroup.html#2824" class="Bound">x</a> <a id="2834" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="2836" class="Symbol">(</a><a id="2837" href="Algebra.Properties.CommutativeSemigroup.html#2826" class="Bound">y</a> <a id="2839" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="2841" href="Algebra.Properties.CommutativeSemigroup.html#2828" class="Bound">z</a><a id="2842" class="Symbol">)</a> <a id="2844" href="Algebra.Bundles.html#4993" class="Field Operator">≈</a> <a id="2846" class="Symbol">(</a><a id="2847" href="Algebra.Properties.CommutativeSemigroup.html#2826" class="Bound">y</a> <a id="2849" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="2851" href="Algebra.Properties.CommutativeSemigroup.html#2828" class="Bound">z</a><a id="2852" class="Symbol">)</a> <a id="2854" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="2856" href="Algebra.Properties.CommutativeSemigroup.html#2824" class="Bound">x</a>
|
||
<a id="2858" href="Algebra.Properties.CommutativeSemigroup.html#2809" class="Function">x∙yz≈yz∙x</a> <a id="2868" href="Algebra.Properties.CommutativeSemigroup.html#2868" class="Bound">x</a> <a id="2870" href="Algebra.Properties.CommutativeSemigroup.html#2870" class="Bound">y</a> <a id="2872" href="Algebra.Properties.CommutativeSemigroup.html#2872" class="Bound">z</a> <a id="2874" class="Symbol">=</a> <a id="2877" href="Relation.Binary.Structures.html#1648" class="Function">trans</a> <a id="2883" class="Symbol">(</a><a id="2884" href="Algebra.Properties.CommutativeSemigroup.html#1933" class="Function">x∙yz≈y∙zx</a> <a id="2894" class="Symbol">_</a> <a id="2896" class="Symbol">_</a> <a id="2898" class="Symbol">_)</a> <a id="2901" class="Symbol">(</a><a id="2902" href="Relation.Binary.Structures.html#1622" class="Function">sym</a> <a id="2906" class="Symbol">(</a><a id="2907" href="Algebra.Structures.html#2977" class="Function">assoc</a> <a id="2913" href="Algebra.Properties.CommutativeSemigroup.html#2870" class="Bound">y</a> <a id="2915" href="Algebra.Properties.CommutativeSemigroup.html#2872" class="Bound">z</a> <a id="2917" href="Algebra.Properties.CommutativeSemigroup.html#2868" class="Bound">x</a><a id="2918" class="Symbol">))</a>
|
||
|
||
<a id="x∙yz≈zx∙y"></a><a id="2922" href="Algebra.Properties.CommutativeSemigroup.html#2922" class="Function">x∙yz≈zx∙y</a> <a id="2932" class="Symbol">:</a> <a id="2935" class="Symbol">∀</a> <a id="2937" href="Algebra.Properties.CommutativeSemigroup.html#2937" class="Bound">x</a> <a id="2939" href="Algebra.Properties.CommutativeSemigroup.html#2939" class="Bound">y</a> <a id="2941" href="Algebra.Properties.CommutativeSemigroup.html#2941" class="Bound">z</a> <a id="2943" class="Symbol">→</a> <a id="2945" href="Algebra.Properties.CommutativeSemigroup.html#2937" class="Bound">x</a> <a id="2947" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="2949" class="Symbol">(</a><a id="2950" href="Algebra.Properties.CommutativeSemigroup.html#2939" class="Bound">y</a> <a id="2952" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="2954" href="Algebra.Properties.CommutativeSemigroup.html#2941" class="Bound">z</a><a id="2955" class="Symbol">)</a> <a id="2957" href="Algebra.Bundles.html#4993" class="Field Operator">≈</a> <a id="2959" class="Symbol">(</a><a id="2960" href="Algebra.Properties.CommutativeSemigroup.html#2941" class="Bound">z</a> <a id="2962" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="2964" href="Algebra.Properties.CommutativeSemigroup.html#2937" class="Bound">x</a><a id="2965" class="Symbol">)</a> <a id="2967" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="2969" href="Algebra.Properties.CommutativeSemigroup.html#2939" class="Bound">y</a>
|
||
<a id="2971" href="Algebra.Properties.CommutativeSemigroup.html#2922" class="Function">x∙yz≈zx∙y</a> <a id="2981" href="Algebra.Properties.CommutativeSemigroup.html#2981" class="Bound">x</a> <a id="2983" href="Algebra.Properties.CommutativeSemigroup.html#2983" class="Bound">y</a> <a id="2985" href="Algebra.Properties.CommutativeSemigroup.html#2985" class="Bound">z</a> <a id="2987" class="Symbol">=</a> <a id="2990" href="Relation.Binary.Structures.html#1648" class="Function">trans</a> <a id="2996" class="Symbol">(</a><a id="2997" href="Algebra.Properties.CommutativeSemigroup.html#2088" class="Function">x∙yz≈z∙xy</a> <a id="3007" href="Algebra.Properties.CommutativeSemigroup.html#2981" class="Bound">x</a> <a id="3009" href="Algebra.Properties.CommutativeSemigroup.html#2983" class="Bound">y</a> <a id="3011" href="Algebra.Properties.CommutativeSemigroup.html#2985" class="Bound">z</a><a id="3012" class="Symbol">)</a> <a id="3014" class="Symbol">(</a><a id="3015" href="Relation.Binary.Structures.html#1622" class="Function">sym</a> <a id="3019" class="Symbol">(</a><a id="3020" href="Algebra.Structures.html#2977" class="Function">assoc</a> <a id="3026" href="Algebra.Properties.CommutativeSemigroup.html#2985" class="Bound">z</a> <a id="3028" href="Algebra.Properties.CommutativeSemigroup.html#2981" class="Bound">x</a> <a id="3030" href="Algebra.Properties.CommutativeSemigroup.html#2983" class="Bound">y</a><a id="3031" class="Symbol">))</a>
|
||
|
||
<a id="3035" class="Comment">------------------------------------------------------------------------</a>
|
||
<a id="3108" class="Comment">-- Partitions (2,1).</a>
|
||
|
||
<a id="3130" class="Comment">-- Their laws are proved by composing proofs for partitions (1,1) with</a>
|
||
<a id="3201" class="Comment">-- trans (assoc x y z).</a>
|
||
|
||
<a id="xy∙z≈y∙xz"></a><a id="3226" href="Algebra.Properties.CommutativeSemigroup.html#3226" class="Function">xy∙z≈y∙xz</a> <a id="3236" class="Symbol">:</a> <a id="3239" class="Symbol">∀</a> <a id="3241" href="Algebra.Properties.CommutativeSemigroup.html#3241" class="Bound">x</a> <a id="3243" href="Algebra.Properties.CommutativeSemigroup.html#3243" class="Bound">y</a> <a id="3245" href="Algebra.Properties.CommutativeSemigroup.html#3245" class="Bound">z</a> <a id="3247" class="Symbol">→</a> <a id="3249" class="Symbol">(</a><a id="3250" href="Algebra.Properties.CommutativeSemigroup.html#3241" class="Bound">x</a> <a id="3252" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="3254" href="Algebra.Properties.CommutativeSemigroup.html#3243" class="Bound">y</a><a id="3255" class="Symbol">)</a> <a id="3257" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="3259" href="Algebra.Properties.CommutativeSemigroup.html#3245" class="Bound">z</a> <a id="3261" href="Algebra.Bundles.html#4993" class="Field Operator">≈</a> <a id="3263" href="Algebra.Properties.CommutativeSemigroup.html#3243" class="Bound">y</a> <a id="3265" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="3267" class="Symbol">(</a><a id="3268" href="Algebra.Properties.CommutativeSemigroup.html#3241" class="Bound">x</a> <a id="3270" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="3272" href="Algebra.Properties.CommutativeSemigroup.html#3245" class="Bound">z</a><a id="3273" class="Symbol">)</a>
|
||
<a id="3275" href="Algebra.Properties.CommutativeSemigroup.html#3226" class="Function">xy∙z≈y∙xz</a> <a id="3285" href="Algebra.Properties.CommutativeSemigroup.html#3285" class="Bound">x</a> <a id="3287" href="Algebra.Properties.CommutativeSemigroup.html#3287" class="Bound">y</a> <a id="3289" href="Algebra.Properties.CommutativeSemigroup.html#3289" class="Bound">z</a> <a id="3291" class="Symbol">=</a> <a id="3294" href="Relation.Binary.Structures.html#1648" class="Function">trans</a> <a id="3300" class="Symbol">(</a><a id="3301" href="Algebra.Structures.html#2977" class="Function">assoc</a> <a id="3307" href="Algebra.Properties.CommutativeSemigroup.html#3285" class="Bound">x</a> <a id="3309" href="Algebra.Properties.CommutativeSemigroup.html#3287" class="Bound">y</a> <a id="3311" href="Algebra.Properties.CommutativeSemigroup.html#3289" class="Bound">z</a><a id="3312" class="Symbol">)</a> <a id="3314" class="Symbol">(</a><a id="3315" href="Algebra.Properties.CommutativeSemigroup.html#1424" class="Function">x∙yz≈y∙xz</a> <a id="3325" href="Algebra.Properties.CommutativeSemigroup.html#3285" class="Bound">x</a> <a id="3327" href="Algebra.Properties.CommutativeSemigroup.html#3287" class="Bound">y</a> <a id="3329" href="Algebra.Properties.CommutativeSemigroup.html#3289" class="Bound">z</a><a id="3330" class="Symbol">)</a>
|
||
|
||
<a id="xy∙z≈z∙yx"></a><a id="3333" href="Algebra.Properties.CommutativeSemigroup.html#3333" class="Function">xy∙z≈z∙yx</a> <a id="3343" class="Symbol">:</a> <a id="3346" class="Symbol">∀</a> <a id="3348" href="Algebra.Properties.CommutativeSemigroup.html#3348" class="Bound">x</a> <a id="3350" href="Algebra.Properties.CommutativeSemigroup.html#3350" class="Bound">y</a> <a id="3352" href="Algebra.Properties.CommutativeSemigroup.html#3352" class="Bound">z</a> <a id="3354" class="Symbol">→</a> <a id="3356" class="Symbol">(</a><a id="3357" href="Algebra.Properties.CommutativeSemigroup.html#3348" class="Bound">x</a> <a id="3359" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="3361" href="Algebra.Properties.CommutativeSemigroup.html#3350" class="Bound">y</a><a id="3362" class="Symbol">)</a> <a id="3364" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="3366" href="Algebra.Properties.CommutativeSemigroup.html#3352" class="Bound">z</a> <a id="3368" href="Algebra.Bundles.html#4993" class="Field Operator">≈</a> <a id="3370" href="Algebra.Properties.CommutativeSemigroup.html#3352" class="Bound">z</a> <a id="3372" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="3374" class="Symbol">(</a><a id="3375" href="Algebra.Properties.CommutativeSemigroup.html#3350" class="Bound">y</a> <a id="3377" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="3379" href="Algebra.Properties.CommutativeSemigroup.html#3348" class="Bound">x</a><a id="3380" class="Symbol">)</a>
|
||
<a id="3382" href="Algebra.Properties.CommutativeSemigroup.html#3333" class="Function">xy∙z≈z∙yx</a> <a id="3392" href="Algebra.Properties.CommutativeSemigroup.html#3392" class="Bound">x</a> <a id="3394" href="Algebra.Properties.CommutativeSemigroup.html#3394" class="Bound">y</a> <a id="3396" href="Algebra.Properties.CommutativeSemigroup.html#3396" class="Bound">z</a> <a id="3398" class="Symbol">=</a> <a id="3401" href="Relation.Binary.Structures.html#1648" class="Function">trans</a> <a id="3407" class="Symbol">(</a><a id="3408" href="Algebra.Structures.html#2977" class="Function">assoc</a> <a id="3414" href="Algebra.Properties.CommutativeSemigroup.html#3392" class="Bound">x</a> <a id="3416" href="Algebra.Properties.CommutativeSemigroup.html#3394" class="Bound">y</a> <a id="3418" href="Algebra.Properties.CommutativeSemigroup.html#3396" class="Bound">z</a><a id="3419" class="Symbol">)</a> <a id="3421" class="Symbol">(</a><a id="3422" href="Algebra.Properties.CommutativeSemigroup.html#1632" class="Function">x∙yz≈z∙yx</a> <a id="3432" href="Algebra.Properties.CommutativeSemigroup.html#3392" class="Bound">x</a> <a id="3434" href="Algebra.Properties.CommutativeSemigroup.html#3394" class="Bound">y</a> <a id="3436" href="Algebra.Properties.CommutativeSemigroup.html#3396" class="Bound">z</a><a id="3437" class="Symbol">)</a>
|
||
|
||
<a id="xy∙z≈x∙zy"></a><a id="3440" href="Algebra.Properties.CommutativeSemigroup.html#3440" class="Function">xy∙z≈x∙zy</a> <a id="3450" class="Symbol">:</a> <a id="3453" class="Symbol">∀</a> <a id="3455" href="Algebra.Properties.CommutativeSemigroup.html#3455" class="Bound">x</a> <a id="3457" href="Algebra.Properties.CommutativeSemigroup.html#3457" class="Bound">y</a> <a id="3459" href="Algebra.Properties.CommutativeSemigroup.html#3459" class="Bound">z</a> <a id="3461" class="Symbol">→</a> <a id="3463" class="Symbol">(</a><a id="3464" href="Algebra.Properties.CommutativeSemigroup.html#3455" class="Bound">x</a> <a id="3466" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="3468" href="Algebra.Properties.CommutativeSemigroup.html#3457" class="Bound">y</a><a id="3469" class="Symbol">)</a> <a id="3471" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="3473" href="Algebra.Properties.CommutativeSemigroup.html#3459" class="Bound">z</a> <a id="3475" href="Algebra.Bundles.html#4993" class="Field Operator">≈</a> <a id="3477" href="Algebra.Properties.CommutativeSemigroup.html#3455" class="Bound">x</a> <a id="3479" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="3481" class="Symbol">(</a><a id="3482" href="Algebra.Properties.CommutativeSemigroup.html#3459" class="Bound">z</a> <a id="3484" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="3486" href="Algebra.Properties.CommutativeSemigroup.html#3457" class="Bound">y</a><a id="3487" class="Symbol">)</a>
|
||
<a id="3489" href="Algebra.Properties.CommutativeSemigroup.html#3440" class="Function">xy∙z≈x∙zy</a> <a id="3499" href="Algebra.Properties.CommutativeSemigroup.html#3499" class="Bound">x</a> <a id="3501" href="Algebra.Properties.CommutativeSemigroup.html#3501" class="Bound">y</a> <a id="3503" href="Algebra.Properties.CommutativeSemigroup.html#3503" class="Bound">z</a> <a id="3505" class="Symbol">=</a> <a id="3508" href="Relation.Binary.Structures.html#1648" class="Function">trans</a> <a id="3514" class="Symbol">(</a><a id="3515" href="Algebra.Structures.html#2977" class="Function">assoc</a> <a id="3521" href="Algebra.Properties.CommutativeSemigroup.html#3499" class="Bound">x</a> <a id="3523" href="Algebra.Properties.CommutativeSemigroup.html#3501" class="Bound">y</a> <a id="3525" href="Algebra.Properties.CommutativeSemigroup.html#3503" class="Bound">z</a><a id="3526" class="Symbol">)</a> <a id="3528" class="Symbol">(</a><a id="3529" href="Algebra.Properties.CommutativeSemigroup.html#1845" class="Function">x∙yz≈x∙zy</a> <a id="3539" href="Algebra.Properties.CommutativeSemigroup.html#3499" class="Bound">x</a> <a id="3541" href="Algebra.Properties.CommutativeSemigroup.html#3501" class="Bound">y</a> <a id="3543" href="Algebra.Properties.CommutativeSemigroup.html#3503" class="Bound">z</a><a id="3544" class="Symbol">)</a>
|
||
|
||
<a id="xy∙z≈y∙zx"></a><a id="3547" href="Algebra.Properties.CommutativeSemigroup.html#3547" class="Function">xy∙z≈y∙zx</a> <a id="3557" class="Symbol">:</a> <a id="3560" class="Symbol">∀</a> <a id="3562" href="Algebra.Properties.CommutativeSemigroup.html#3562" class="Bound">x</a> <a id="3564" href="Algebra.Properties.CommutativeSemigroup.html#3564" class="Bound">y</a> <a id="3566" href="Algebra.Properties.CommutativeSemigroup.html#3566" class="Bound">z</a> <a id="3568" class="Symbol">→</a> <a id="3570" class="Symbol">(</a><a id="3571" href="Algebra.Properties.CommutativeSemigroup.html#3562" class="Bound">x</a> <a id="3573" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="3575" href="Algebra.Properties.CommutativeSemigroup.html#3564" class="Bound">y</a><a id="3576" class="Symbol">)</a> <a id="3578" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="3580" href="Algebra.Properties.CommutativeSemigroup.html#3566" class="Bound">z</a> <a id="3582" href="Algebra.Bundles.html#4993" class="Field Operator">≈</a> <a id="3584" href="Algebra.Properties.CommutativeSemigroup.html#3564" class="Bound">y</a> <a id="3586" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="3588" class="Symbol">(</a><a id="3589" href="Algebra.Properties.CommutativeSemigroup.html#3566" class="Bound">z</a> <a id="3591" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="3593" href="Algebra.Properties.CommutativeSemigroup.html#3562" class="Bound">x</a><a id="3594" class="Symbol">)</a>
|
||
<a id="3596" href="Algebra.Properties.CommutativeSemigroup.html#3547" class="Function">xy∙z≈y∙zx</a> <a id="3606" href="Algebra.Properties.CommutativeSemigroup.html#3606" class="Bound">x</a> <a id="3608" href="Algebra.Properties.CommutativeSemigroup.html#3608" class="Bound">y</a> <a id="3610" href="Algebra.Properties.CommutativeSemigroup.html#3610" class="Bound">z</a> <a id="3612" class="Symbol">=</a> <a id="3615" href="Relation.Binary.Structures.html#1648" class="Function">trans</a> <a id="3621" class="Symbol">(</a><a id="3622" href="Algebra.Structures.html#2977" class="Function">assoc</a> <a id="3628" href="Algebra.Properties.CommutativeSemigroup.html#3606" class="Bound">x</a> <a id="3630" href="Algebra.Properties.CommutativeSemigroup.html#3608" class="Bound">y</a> <a id="3632" href="Algebra.Properties.CommutativeSemigroup.html#3610" class="Bound">z</a><a id="3633" class="Symbol">)</a> <a id="3635" class="Symbol">(</a><a id="3636" href="Algebra.Properties.CommutativeSemigroup.html#1933" class="Function">x∙yz≈y∙zx</a> <a id="3646" href="Algebra.Properties.CommutativeSemigroup.html#3606" class="Bound">x</a> <a id="3648" href="Algebra.Properties.CommutativeSemigroup.html#3608" class="Bound">y</a> <a id="3650" href="Algebra.Properties.CommutativeSemigroup.html#3610" class="Bound">z</a><a id="3651" class="Symbol">)</a>
|
||
|
||
<a id="xy∙z≈z∙xy"></a><a id="3654" href="Algebra.Properties.CommutativeSemigroup.html#3654" class="Function">xy∙z≈z∙xy</a> <a id="3664" class="Symbol">:</a> <a id="3667" class="Symbol">∀</a> <a id="3669" href="Algebra.Properties.CommutativeSemigroup.html#3669" class="Bound">x</a> <a id="3671" href="Algebra.Properties.CommutativeSemigroup.html#3671" class="Bound">y</a> <a id="3673" href="Algebra.Properties.CommutativeSemigroup.html#3673" class="Bound">z</a> <a id="3675" class="Symbol">→</a> <a id="3677" class="Symbol">(</a><a id="3678" href="Algebra.Properties.CommutativeSemigroup.html#3669" class="Bound">x</a> <a id="3680" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="3682" href="Algebra.Properties.CommutativeSemigroup.html#3671" class="Bound">y</a><a id="3683" class="Symbol">)</a> <a id="3685" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="3687" href="Algebra.Properties.CommutativeSemigroup.html#3673" class="Bound">z</a> <a id="3689" href="Algebra.Bundles.html#4993" class="Field Operator">≈</a> <a id="3691" href="Algebra.Properties.CommutativeSemigroup.html#3673" class="Bound">z</a> <a id="3693" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="3695" class="Symbol">(</a><a id="3696" href="Algebra.Properties.CommutativeSemigroup.html#3669" class="Bound">x</a> <a id="3698" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="3700" href="Algebra.Properties.CommutativeSemigroup.html#3671" class="Bound">y</a><a id="3701" class="Symbol">)</a>
|
||
<a id="3703" href="Algebra.Properties.CommutativeSemigroup.html#3654" class="Function">xy∙z≈z∙xy</a> <a id="3713" href="Algebra.Properties.CommutativeSemigroup.html#3713" class="Bound">x</a> <a id="3715" href="Algebra.Properties.CommutativeSemigroup.html#3715" class="Bound">y</a> <a id="3717" href="Algebra.Properties.CommutativeSemigroup.html#3717" class="Bound">z</a> <a id="3719" class="Symbol">=</a> <a id="3722" href="Relation.Binary.Structures.html#1648" class="Function">trans</a> <a id="3728" class="Symbol">(</a><a id="3729" href="Algebra.Structures.html#2977" class="Function">assoc</a> <a id="3735" href="Algebra.Properties.CommutativeSemigroup.html#3713" class="Bound">x</a> <a id="3737" href="Algebra.Properties.CommutativeSemigroup.html#3715" class="Bound">y</a> <a id="3739" href="Algebra.Properties.CommutativeSemigroup.html#3717" class="Bound">z</a><a id="3740" class="Symbol">)</a> <a id="3742" class="Symbol">(</a><a id="3743" href="Algebra.Properties.CommutativeSemigroup.html#2088" class="Function">x∙yz≈z∙xy</a> <a id="3753" href="Algebra.Properties.CommutativeSemigroup.html#3713" class="Bound">x</a> <a id="3755" href="Algebra.Properties.CommutativeSemigroup.html#3715" class="Bound">y</a> <a id="3757" href="Algebra.Properties.CommutativeSemigroup.html#3717" class="Bound">z</a><a id="3758" class="Symbol">)</a>
|
||
|
||
<a id="3761" class="Comment">------------------------------------------------------------------------</a>
|
||
<a id="3834" class="Comment">-- Partitions (2,2).</a>
|
||
|
||
<a id="3856" class="Comment">-- These proofs are by composing with the proofs for (2,1).</a>
|
||
|
||
<a id="xy∙z≈yx∙z"></a><a id="3917" href="Algebra.Properties.CommutativeSemigroup.html#3917" class="Function">xy∙z≈yx∙z</a> <a id="3927" class="Symbol">:</a> <a id="3930" class="Symbol">∀</a> <a id="3932" href="Algebra.Properties.CommutativeSemigroup.html#3932" class="Bound">x</a> <a id="3934" href="Algebra.Properties.CommutativeSemigroup.html#3934" class="Bound">y</a> <a id="3936" href="Algebra.Properties.CommutativeSemigroup.html#3936" class="Bound">z</a> <a id="3938" class="Symbol">→</a> <a id="3940" class="Symbol">(</a><a id="3941" href="Algebra.Properties.CommutativeSemigroup.html#3932" class="Bound">x</a> <a id="3943" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="3945" href="Algebra.Properties.CommutativeSemigroup.html#3934" class="Bound">y</a><a id="3946" class="Symbol">)</a> <a id="3948" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="3950" href="Algebra.Properties.CommutativeSemigroup.html#3936" class="Bound">z</a> <a id="3952" href="Algebra.Bundles.html#4993" class="Field Operator">≈</a> <a id="3954" class="Symbol">(</a><a id="3955" href="Algebra.Properties.CommutativeSemigroup.html#3934" class="Bound">y</a> <a id="3957" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="3959" href="Algebra.Properties.CommutativeSemigroup.html#3932" class="Bound">x</a><a id="3960" class="Symbol">)</a> <a id="3962" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="3964" href="Algebra.Properties.CommutativeSemigroup.html#3936" class="Bound">z</a>
|
||
<a id="3966" href="Algebra.Properties.CommutativeSemigroup.html#3917" class="Function">xy∙z≈yx∙z</a> <a id="3976" href="Algebra.Properties.CommutativeSemigroup.html#3976" class="Bound">x</a> <a id="3978" href="Algebra.Properties.CommutativeSemigroup.html#3978" class="Bound">y</a> <a id="3980" href="Algebra.Properties.CommutativeSemigroup.html#3980" class="Bound">z</a> <a id="3982" class="Symbol">=</a> <a id="3985" href="Relation.Binary.Structures.html#1648" class="Function">trans</a> <a id="3991" class="Symbol">(</a><a id="3992" href="Algebra.Properties.CommutativeSemigroup.html#3226" class="Function">xy∙z≈y∙xz</a> <a id="4002" class="Symbol">_</a> <a id="4004" class="Symbol">_</a> <a id="4006" class="Symbol">_)</a> <a id="4009" class="Symbol">(</a><a id="4010" href="Relation.Binary.Structures.html#1622" class="Function">sym</a> <a id="4014" class="Symbol">(</a><a id="4015" href="Algebra.Structures.html#2977" class="Function">assoc</a> <a id="4021" href="Algebra.Properties.CommutativeSemigroup.html#3978" class="Bound">y</a> <a id="4023" href="Algebra.Properties.CommutativeSemigroup.html#3976" class="Bound">x</a> <a id="4025" href="Algebra.Properties.CommutativeSemigroup.html#3980" class="Bound">z</a><a id="4026" class="Symbol">))</a>
|
||
|
||
<a id="xy∙z≈zy∙x"></a><a id="4030" href="Algebra.Properties.CommutativeSemigroup.html#4030" class="Function">xy∙z≈zy∙x</a> <a id="4040" class="Symbol">:</a> <a id="4043" class="Symbol">∀</a> <a id="4045" href="Algebra.Properties.CommutativeSemigroup.html#4045" class="Bound">x</a> <a id="4047" href="Algebra.Properties.CommutativeSemigroup.html#4047" class="Bound">y</a> <a id="4049" href="Algebra.Properties.CommutativeSemigroup.html#4049" class="Bound">z</a> <a id="4051" class="Symbol">→</a> <a id="4053" class="Symbol">(</a><a id="4054" href="Algebra.Properties.CommutativeSemigroup.html#4045" class="Bound">x</a> <a id="4056" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="4058" href="Algebra.Properties.CommutativeSemigroup.html#4047" class="Bound">y</a><a id="4059" class="Symbol">)</a> <a id="4061" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="4063" href="Algebra.Properties.CommutativeSemigroup.html#4049" class="Bound">z</a> <a id="4065" href="Algebra.Bundles.html#4993" class="Field Operator">≈</a> <a id="4067" class="Symbol">(</a><a id="4068" href="Algebra.Properties.CommutativeSemigroup.html#4049" class="Bound">z</a> <a id="4070" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="4072" href="Algebra.Properties.CommutativeSemigroup.html#4047" class="Bound">y</a><a id="4073" class="Symbol">)</a> <a id="4075" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="4077" href="Algebra.Properties.CommutativeSemigroup.html#4045" class="Bound">x</a>
|
||
<a id="4079" href="Algebra.Properties.CommutativeSemigroup.html#4030" class="Function">xy∙z≈zy∙x</a> <a id="4089" href="Algebra.Properties.CommutativeSemigroup.html#4089" class="Bound">x</a> <a id="4091" href="Algebra.Properties.CommutativeSemigroup.html#4091" class="Bound">y</a> <a id="4093" href="Algebra.Properties.CommutativeSemigroup.html#4093" class="Bound">z</a> <a id="4095" class="Symbol">=</a> <a id="4098" href="Relation.Binary.Structures.html#1648" class="Function">trans</a> <a id="4104" class="Symbol">(</a><a id="4105" href="Algebra.Properties.CommutativeSemigroup.html#3333" class="Function">xy∙z≈z∙yx</a> <a id="4115" href="Algebra.Properties.CommutativeSemigroup.html#4089" class="Bound">x</a> <a id="4117" href="Algebra.Properties.CommutativeSemigroup.html#4091" class="Bound">y</a> <a id="4119" href="Algebra.Properties.CommutativeSemigroup.html#4093" class="Bound">z</a><a id="4120" class="Symbol">)</a> <a id="4122" class="Symbol">(</a><a id="4123" href="Relation.Binary.Structures.html#1622" class="Function">sym</a> <a id="4127" class="Symbol">(</a><a id="4128" href="Algebra.Structures.html#2977" class="Function">assoc</a> <a id="4134" href="Algebra.Properties.CommutativeSemigroup.html#4093" class="Bound">z</a> <a id="4136" href="Algebra.Properties.CommutativeSemigroup.html#4091" class="Bound">y</a> <a id="4138" href="Algebra.Properties.CommutativeSemigroup.html#4089" class="Bound">x</a><a id="4139" class="Symbol">))</a>
|
||
|
||
<a id="xy∙z≈xz∙y"></a><a id="4143" href="Algebra.Properties.CommutativeSemigroup.html#4143" class="Function">xy∙z≈xz∙y</a> <a id="4153" class="Symbol">:</a> <a id="4156" class="Symbol">∀</a> <a id="4158" href="Algebra.Properties.CommutativeSemigroup.html#4158" class="Bound">x</a> <a id="4160" href="Algebra.Properties.CommutativeSemigroup.html#4160" class="Bound">y</a> <a id="4162" href="Algebra.Properties.CommutativeSemigroup.html#4162" class="Bound">z</a> <a id="4164" class="Symbol">→</a> <a id="4166" class="Symbol">(</a><a id="4167" href="Algebra.Properties.CommutativeSemigroup.html#4158" class="Bound">x</a> <a id="4169" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="4171" href="Algebra.Properties.CommutativeSemigroup.html#4160" class="Bound">y</a><a id="4172" class="Symbol">)</a> <a id="4174" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="4176" href="Algebra.Properties.CommutativeSemigroup.html#4162" class="Bound">z</a> <a id="4178" href="Algebra.Bundles.html#4993" class="Field Operator">≈</a> <a id="4180" class="Symbol">(</a><a id="4181" href="Algebra.Properties.CommutativeSemigroup.html#4158" class="Bound">x</a> <a id="4183" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="4185" href="Algebra.Properties.CommutativeSemigroup.html#4162" class="Bound">z</a><a id="4186" class="Symbol">)</a> <a id="4188" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="4190" href="Algebra.Properties.CommutativeSemigroup.html#4160" class="Bound">y</a>
|
||
<a id="4192" href="Algebra.Properties.CommutativeSemigroup.html#4143" class="Function">xy∙z≈xz∙y</a> <a id="4202" href="Algebra.Properties.CommutativeSemigroup.html#4202" class="Bound">x</a> <a id="4204" href="Algebra.Properties.CommutativeSemigroup.html#4204" class="Bound">y</a> <a id="4206" href="Algebra.Properties.CommutativeSemigroup.html#4206" class="Bound">z</a> <a id="4208" class="Symbol">=</a> <a id="4211" href="Relation.Binary.Structures.html#1648" class="Function">trans</a> <a id="4217" class="Symbol">(</a><a id="4218" href="Algebra.Properties.CommutativeSemigroup.html#3440" class="Function">xy∙z≈x∙zy</a> <a id="4228" href="Algebra.Properties.CommutativeSemigroup.html#4202" class="Bound">x</a> <a id="4230" href="Algebra.Properties.CommutativeSemigroup.html#4204" class="Bound">y</a> <a id="4232" href="Algebra.Properties.CommutativeSemigroup.html#4206" class="Bound">z</a><a id="4233" class="Symbol">)</a> <a id="4235" class="Symbol">(</a><a id="4236" href="Relation.Binary.Structures.html#1622" class="Function">sym</a> <a id="4240" class="Symbol">(</a><a id="4241" href="Algebra.Structures.html#2977" class="Function">assoc</a> <a id="4247" href="Algebra.Properties.CommutativeSemigroup.html#4202" class="Bound">x</a> <a id="4249" href="Algebra.Properties.CommutativeSemigroup.html#4206" class="Bound">z</a> <a id="4251" href="Algebra.Properties.CommutativeSemigroup.html#4204" class="Bound">y</a><a id="4252" class="Symbol">))</a>
|
||
|
||
<a id="xy∙z≈yz∙x"></a><a id="4256" href="Algebra.Properties.CommutativeSemigroup.html#4256" class="Function">xy∙z≈yz∙x</a> <a id="4266" class="Symbol">:</a> <a id="4269" class="Symbol">∀</a> <a id="4271" href="Algebra.Properties.CommutativeSemigroup.html#4271" class="Bound">x</a> <a id="4273" href="Algebra.Properties.CommutativeSemigroup.html#4273" class="Bound">y</a> <a id="4275" href="Algebra.Properties.CommutativeSemigroup.html#4275" class="Bound">z</a> <a id="4277" class="Symbol">→</a> <a id="4279" class="Symbol">(</a><a id="4280" href="Algebra.Properties.CommutativeSemigroup.html#4271" class="Bound">x</a> <a id="4282" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="4284" href="Algebra.Properties.CommutativeSemigroup.html#4273" class="Bound">y</a><a id="4285" class="Symbol">)</a> <a id="4287" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="4289" href="Algebra.Properties.CommutativeSemigroup.html#4275" class="Bound">z</a> <a id="4291" href="Algebra.Bundles.html#4993" class="Field Operator">≈</a> <a id="4293" class="Symbol">(</a><a id="4294" href="Algebra.Properties.CommutativeSemigroup.html#4273" class="Bound">y</a> <a id="4296" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="4298" href="Algebra.Properties.CommutativeSemigroup.html#4275" class="Bound">z</a><a id="4299" class="Symbol">)</a> <a id="4301" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="4303" href="Algebra.Properties.CommutativeSemigroup.html#4271" class="Bound">x</a>
|
||
<a id="4305" href="Algebra.Properties.CommutativeSemigroup.html#4256" class="Function">xy∙z≈yz∙x</a> <a id="4315" href="Algebra.Properties.CommutativeSemigroup.html#4315" class="Bound">x</a> <a id="4317" href="Algebra.Properties.CommutativeSemigroup.html#4317" class="Bound">y</a> <a id="4319" href="Algebra.Properties.CommutativeSemigroup.html#4319" class="Bound">z</a> <a id="4321" class="Symbol">=</a> <a id="4324" href="Relation.Binary.Structures.html#1648" class="Function">trans</a> <a id="4330" class="Symbol">(</a><a id="4331" href="Algebra.Properties.CommutativeSemigroup.html#3547" class="Function">xy∙z≈y∙zx</a> <a id="4341" href="Algebra.Properties.CommutativeSemigroup.html#4315" class="Bound">x</a> <a id="4343" href="Algebra.Properties.CommutativeSemigroup.html#4317" class="Bound">y</a> <a id="4345" href="Algebra.Properties.CommutativeSemigroup.html#4319" class="Bound">z</a><a id="4346" class="Symbol">)</a> <a id="4348" class="Symbol">(</a><a id="4349" href="Relation.Binary.Structures.html#1622" class="Function">sym</a> <a id="4353" class="Symbol">(</a><a id="4354" href="Algebra.Structures.html#2977" class="Function">assoc</a> <a id="4360" href="Algebra.Properties.CommutativeSemigroup.html#4317" class="Bound">y</a> <a id="4362" href="Algebra.Properties.CommutativeSemigroup.html#4319" class="Bound">z</a> <a id="4364" href="Algebra.Properties.CommutativeSemigroup.html#4315" class="Bound">x</a><a id="4365" class="Symbol">))</a>
|
||
|
||
<a id="xy∙z≈zx∙y"></a><a id="4369" href="Algebra.Properties.CommutativeSemigroup.html#4369" class="Function">xy∙z≈zx∙y</a> <a id="4379" class="Symbol">:</a> <a id="4382" class="Symbol">∀</a> <a id="4384" href="Algebra.Properties.CommutativeSemigroup.html#4384" class="Bound">x</a> <a id="4386" href="Algebra.Properties.CommutativeSemigroup.html#4386" class="Bound">y</a> <a id="4388" href="Algebra.Properties.CommutativeSemigroup.html#4388" class="Bound">z</a> <a id="4390" class="Symbol">→</a> <a id="4392" class="Symbol">(</a><a id="4393" href="Algebra.Properties.CommutativeSemigroup.html#4384" class="Bound">x</a> <a id="4395" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="4397" href="Algebra.Properties.CommutativeSemigroup.html#4386" class="Bound">y</a><a id="4398" class="Symbol">)</a> <a id="4400" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="4402" href="Algebra.Properties.CommutativeSemigroup.html#4388" class="Bound">z</a> <a id="4404" href="Algebra.Bundles.html#4993" class="Field Operator">≈</a> <a id="4406" class="Symbol">(</a><a id="4407" href="Algebra.Properties.CommutativeSemigroup.html#4388" class="Bound">z</a> <a id="4409" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="4411" href="Algebra.Properties.CommutativeSemigroup.html#4384" class="Bound">x</a><a id="4412" class="Symbol">)</a> <a id="4414" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="4416" href="Algebra.Properties.CommutativeSemigroup.html#4386" class="Bound">y</a>
|
||
<a id="4418" href="Algebra.Properties.CommutativeSemigroup.html#4369" class="Function">xy∙z≈zx∙y</a> <a id="4428" href="Algebra.Properties.CommutativeSemigroup.html#4428" class="Bound">x</a> <a id="4430" href="Algebra.Properties.CommutativeSemigroup.html#4430" class="Bound">y</a> <a id="4432" href="Algebra.Properties.CommutativeSemigroup.html#4432" class="Bound">z</a> <a id="4434" class="Symbol">=</a> <a id="4437" href="Relation.Binary.Structures.html#1648" class="Function">trans</a> <a id="4443" class="Symbol">(</a><a id="4444" href="Algebra.Properties.CommutativeSemigroup.html#3654" class="Function">xy∙z≈z∙xy</a> <a id="4454" href="Algebra.Properties.CommutativeSemigroup.html#4428" class="Bound">x</a> <a id="4456" href="Algebra.Properties.CommutativeSemigroup.html#4430" class="Bound">y</a> <a id="4458" href="Algebra.Properties.CommutativeSemigroup.html#4432" class="Bound">z</a><a id="4459" class="Symbol">)</a> <a id="4461" class="Symbol">(</a><a id="4462" href="Relation.Binary.Structures.html#1622" class="Function">sym</a> <a id="4466" class="Symbol">(</a><a id="4467" href="Algebra.Structures.html#2977" class="Function">assoc</a> <a id="4473" href="Algebra.Properties.CommutativeSemigroup.html#4432" class="Bound">z</a> <a id="4475" href="Algebra.Properties.CommutativeSemigroup.html#4428" class="Bound">x</a> <a id="4477" href="Algebra.Properties.CommutativeSemigroup.html#4430" class="Bound">y</a><a id="4478" class="Symbol">))</a>
|
||
|
||
<a id="4482" class="Comment">------------------------------------------------------------------------</a>
|
||
<a id="4555" class="Comment">-- commutative semigroup has Jordan identity</a>
|
||
|
||
<a id="xy∙xx≈x∙yxx"></a><a id="4601" href="Algebra.Properties.CommutativeSemigroup.html#4601" class="Function">xy∙xx≈x∙yxx</a> <a id="4613" class="Symbol">:</a> <a id="4615" class="Symbol">∀</a> <a id="4617" href="Algebra.Properties.CommutativeSemigroup.html#4617" class="Bound">x</a> <a id="4619" href="Algebra.Properties.CommutativeSemigroup.html#4619" class="Bound">y</a> <a id="4621" class="Symbol">→</a> <a id="4623" class="Symbol">(</a><a id="4624" href="Algebra.Properties.CommutativeSemigroup.html#4617" class="Bound">x</a> <a id="4626" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="4628" href="Algebra.Properties.CommutativeSemigroup.html#4619" class="Bound">y</a><a id="4629" class="Symbol">)</a> <a id="4631" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="4633" class="Symbol">(</a><a id="4634" href="Algebra.Properties.CommutativeSemigroup.html#4617" class="Bound">x</a> <a id="4636" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="4638" href="Algebra.Properties.CommutativeSemigroup.html#4617" class="Bound">x</a><a id="4639" class="Symbol">)</a> <a id="4641" href="Algebra.Bundles.html#4993" class="Field Operator">≈</a> <a id="4643" href="Algebra.Properties.CommutativeSemigroup.html#4617" class="Bound">x</a> <a id="4645" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="4647" class="Symbol">(</a><a id="4648" href="Algebra.Properties.CommutativeSemigroup.html#4619" class="Bound">y</a> <a id="4650" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="4652" class="Symbol">(</a><a id="4653" href="Algebra.Properties.CommutativeSemigroup.html#4617" class="Bound">x</a> <a id="4655" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="4657" href="Algebra.Properties.CommutativeSemigroup.html#4617" class="Bound">x</a><a id="4658" class="Symbol">))</a>
|
||
<a id="4661" href="Algebra.Properties.CommutativeSemigroup.html#4601" class="Function">xy∙xx≈x∙yxx</a> <a id="4673" href="Algebra.Properties.CommutativeSemigroup.html#4673" class="Bound">x</a> <a id="4675" href="Algebra.Properties.CommutativeSemigroup.html#4675" class="Bound">y</a> <a id="4677" class="Symbol">=</a> <a id="4679" href="Algebra.Structures.html#2977" class="Function">assoc</a> <a id="4685" href="Algebra.Properties.CommutativeSemigroup.html#4673" class="Bound">x</a> <a id="4687" href="Algebra.Properties.CommutativeSemigroup.html#4675" class="Bound">y</a> <a id="4689" class="Symbol">((</a><a id="4691" href="Algebra.Properties.CommutativeSemigroup.html#4673" class="Bound">x</a> <a id="4693" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="4695" href="Algebra.Properties.CommutativeSemigroup.html#4673" class="Bound">x</a><a id="4696" class="Symbol">))</a>
|
||
|
||
<a id="4700" class="Comment">------------------------------------------------------------------------</a>
|
||
<a id="4773" class="Comment">-- commutative semigroup is left/right/middle semiMedial</a>
|
||
|
||
<a id="semimedialˡ"></a><a id="4831" href="Algebra.Properties.CommutativeSemigroup.html#4831" class="Function">semimedialˡ</a> <a id="4843" class="Symbol">:</a> <a id="4845" href="Algebra.Definitions.html#6812" class="Function">LeftSemimedial</a> <a id="4860" href="Algebra.Bundles.html#5037" class="Field Operator">_∙_</a>
|
||
<a id="4864" href="Algebra.Properties.CommutativeSemigroup.html#4831" class="Function">semimedialˡ</a> <a id="4876" href="Algebra.Properties.CommutativeSemigroup.html#4876" class="Bound">x</a> <a id="4878" href="Algebra.Properties.CommutativeSemigroup.html#4878" class="Bound">y</a> <a id="4880" href="Algebra.Properties.CommutativeSemigroup.html#4880" class="Bound">z</a> <a id="4882" class="Symbol">=</a> <a id="4884" href="Relation.Binary.Reasoning.Syntax.html#1510" class="Function Operator">begin</a>
|
||
<a id="4892" class="Symbol">(</a><a id="4893" href="Algebra.Properties.CommutativeSemigroup.html#4876" class="Bound">x</a> <a id="4895" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="4897" href="Algebra.Properties.CommutativeSemigroup.html#4876" class="Bound">x</a><a id="4898" class="Symbol">)</a> <a id="4900" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="4902" class="Symbol">(</a><a id="4903" href="Algebra.Properties.CommutativeSemigroup.html#4878" class="Bound">y</a> <a id="4905" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="4907" href="Algebra.Properties.CommutativeSemigroup.html#4880" class="Bound">z</a><a id="4908" class="Symbol">)</a> <a id="4910" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">≈⟨</a> <a id="4913" href="Algebra.Structures.html#2977" class="Function">assoc</a> <a id="4919" href="Algebra.Properties.CommutativeSemigroup.html#4876" class="Bound">x</a> <a id="4921" href="Algebra.Properties.CommutativeSemigroup.html#4876" class="Bound">x</a> <a id="4923" class="Symbol">(</a><a id="4924" href="Algebra.Properties.CommutativeSemigroup.html#4878" class="Bound">y</a> <a id="4926" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="4928" href="Algebra.Properties.CommutativeSemigroup.html#4880" class="Bound">z</a><a id="4929" class="Symbol">)</a> <a id="4931" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">⟩</a>
|
||
<a id="4935" href="Algebra.Properties.CommutativeSemigroup.html#4876" class="Bound">x</a> <a id="4937" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="4939" class="Symbol">(</a><a id="4940" href="Algebra.Properties.CommutativeSemigroup.html#4876" class="Bound">x</a> <a id="4942" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="4944" class="Symbol">(</a><a id="4945" href="Algebra.Properties.CommutativeSemigroup.html#4878" class="Bound">y</a> <a id="4947" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="4949" href="Algebra.Properties.CommutativeSemigroup.html#4880" class="Bound">z</a><a id="4950" class="Symbol">))</a> <a id="4953" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">≈⟨</a> <a id="4956" href="Algebra.Structures.html#1465" class="Function">∙-congˡ</a> <a id="4964" class="Symbol">(</a><a id="4965" href="Relation.Binary.Structures.html#1622" class="Function">sym</a> <a id="4969" class="Symbol">(</a><a id="4970" href="Algebra.Structures.html#2977" class="Function">assoc</a> <a id="4976" href="Algebra.Properties.CommutativeSemigroup.html#4876" class="Bound">x</a> <a id="4978" href="Algebra.Properties.CommutativeSemigroup.html#4878" class="Bound">y</a> <a id="4980" href="Algebra.Properties.CommutativeSemigroup.html#4880" class="Bound">z</a><a id="4981" class="Symbol">))</a> <a id="4984" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">⟩</a>
|
||
<a id="4988" href="Algebra.Properties.CommutativeSemigroup.html#4876" class="Bound">x</a> <a id="4990" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="4992" class="Symbol">((</a><a id="4994" href="Algebra.Properties.CommutativeSemigroup.html#4876" class="Bound">x</a> <a id="4996" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="4998" href="Algebra.Properties.CommutativeSemigroup.html#4878" class="Bound">y</a><a id="4999" class="Symbol">)</a> <a id="5001" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="5003" href="Algebra.Properties.CommutativeSemigroup.html#4880" class="Bound">z</a><a id="5004" class="Symbol">)</a> <a id="5006" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">≈⟨</a> <a id="5009" href="Algebra.Structures.html#1465" class="Function">∙-congˡ</a> <a id="5017" class="Symbol">(</a><a id="5018" href="Algebra.Structures.html#1526" class="Function">∙-congʳ</a> <a id="5026" class="Symbol">(</a><a id="5027" href="Algebra.Structures.html#3298" class="Function">comm</a> <a id="5032" href="Algebra.Properties.CommutativeSemigroup.html#4876" class="Bound">x</a> <a id="5034" href="Algebra.Properties.CommutativeSemigroup.html#4878" class="Bound">y</a><a id="5035" class="Symbol">))</a> <a id="5038" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">⟩</a>
|
||
<a id="5042" href="Algebra.Properties.CommutativeSemigroup.html#4876" class="Bound">x</a> <a id="5044" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="5046" class="Symbol">((</a><a id="5048" href="Algebra.Properties.CommutativeSemigroup.html#4878" class="Bound">y</a> <a id="5050" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="5052" href="Algebra.Properties.CommutativeSemigroup.html#4876" class="Bound">x</a><a id="5053" class="Symbol">)</a> <a id="5055" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="5057" href="Algebra.Properties.CommutativeSemigroup.html#4880" class="Bound">z</a><a id="5058" class="Symbol">)</a> <a id="5060" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">≈⟨</a> <a id="5063" href="Algebra.Structures.html#1465" class="Function">∙-congˡ</a> <a id="5071" class="Symbol">(</a><a id="5072" href="Algebra.Structures.html#2977" class="Function">assoc</a> <a id="5078" href="Algebra.Properties.CommutativeSemigroup.html#4878" class="Bound">y</a> <a id="5080" href="Algebra.Properties.CommutativeSemigroup.html#4876" class="Bound">x</a> <a id="5082" href="Algebra.Properties.CommutativeSemigroup.html#4880" class="Bound">z</a><a id="5083" class="Symbol">)</a> <a id="5085" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">⟩</a>
|
||
<a id="5089" href="Algebra.Properties.CommutativeSemigroup.html#4876" class="Bound">x</a> <a id="5091" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="5093" class="Symbol">(</a><a id="5094" href="Algebra.Properties.CommutativeSemigroup.html#4878" class="Bound">y</a> <a id="5096" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="5098" class="Symbol">(</a><a id="5099" href="Algebra.Properties.CommutativeSemigroup.html#4876" class="Bound">x</a> <a id="5101" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="5103" href="Algebra.Properties.CommutativeSemigroup.html#4880" class="Bound">z</a><a id="5104" class="Symbol">))</a> <a id="5107" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">≈⟨</a> <a id="5110" href="Relation.Binary.Structures.html#1622" class="Function">sym</a> <a id="5114" class="Symbol">(</a><a id="5115" href="Algebra.Structures.html#2977" class="Function">assoc</a> <a id="5121" href="Algebra.Properties.CommutativeSemigroup.html#4876" class="Bound">x</a> <a id="5123" href="Algebra.Properties.CommutativeSemigroup.html#4878" class="Bound">y</a> <a id="5125" class="Symbol">((</a><a id="5127" href="Algebra.Properties.CommutativeSemigroup.html#4876" class="Bound">x</a> <a id="5129" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="5131" href="Algebra.Properties.CommutativeSemigroup.html#4880" class="Bound">z</a><a id="5132" class="Symbol">)))</a> <a id="5136" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">⟩</a>
|
||
<a id="5140" class="Symbol">(</a><a id="5141" href="Algebra.Properties.CommutativeSemigroup.html#4876" class="Bound">x</a> <a id="5143" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="5145" href="Algebra.Properties.CommutativeSemigroup.html#4878" class="Bound">y</a><a id="5146" class="Symbol">)</a> <a id="5148" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="5150" class="Symbol">(</a><a id="5151" href="Algebra.Properties.CommutativeSemigroup.html#4876" class="Bound">x</a> <a id="5153" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="5155" href="Algebra.Properties.CommutativeSemigroup.html#4880" class="Bound">z</a><a id="5156" class="Symbol">)</a> <a id="5158" href="Relation.Binary.Reasoning.Syntax.html#12283" class="Function Operator">∎</a>
|
||
|
||
<a id="semimedialʳ"></a><a id="5161" href="Algebra.Properties.CommutativeSemigroup.html#5161" class="Function">semimedialʳ</a> <a id="5173" class="Symbol">:</a> <a id="5175" href="Algebra.Definitions.html#6917" class="Function">RightSemimedial</a> <a id="5191" href="Algebra.Bundles.html#5037" class="Field Operator">_∙_</a>
|
||
<a id="5195" href="Algebra.Properties.CommutativeSemigroup.html#5161" class="Function">semimedialʳ</a> <a id="5207" href="Algebra.Properties.CommutativeSemigroup.html#5207" class="Bound">x</a> <a id="5209" href="Algebra.Properties.CommutativeSemigroup.html#5209" class="Bound">y</a> <a id="5211" href="Algebra.Properties.CommutativeSemigroup.html#5211" class="Bound">z</a> <a id="5213" class="Symbol">=</a> <a id="5215" href="Relation.Binary.Reasoning.Syntax.html#1510" class="Function Operator">begin</a>
|
||
<a id="5223" class="Symbol">(</a><a id="5224" href="Algebra.Properties.CommutativeSemigroup.html#5209" class="Bound">y</a> <a id="5226" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="5228" href="Algebra.Properties.CommutativeSemigroup.html#5211" class="Bound">z</a><a id="5229" class="Symbol">)</a> <a id="5231" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="5233" class="Symbol">(</a><a id="5234" href="Algebra.Properties.CommutativeSemigroup.html#5207" class="Bound">x</a> <a id="5236" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="5238" href="Algebra.Properties.CommutativeSemigroup.html#5207" class="Bound">x</a><a id="5239" class="Symbol">)</a> <a id="5241" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">≈⟨</a> <a id="5244" href="Algebra.Structures.html#2977" class="Function">assoc</a> <a id="5250" href="Algebra.Properties.CommutativeSemigroup.html#5209" class="Bound">y</a> <a id="5252" href="Algebra.Properties.CommutativeSemigroup.html#5211" class="Bound">z</a> <a id="5254" class="Symbol">(</a><a id="5255" href="Algebra.Properties.CommutativeSemigroup.html#5207" class="Bound">x</a> <a id="5257" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="5259" href="Algebra.Properties.CommutativeSemigroup.html#5207" class="Bound">x</a><a id="5260" class="Symbol">)</a> <a id="5262" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">⟩</a>
|
||
<a id="5266" href="Algebra.Properties.CommutativeSemigroup.html#5209" class="Bound">y</a> <a id="5268" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="5270" class="Symbol">(</a><a id="5271" href="Algebra.Properties.CommutativeSemigroup.html#5211" class="Bound">z</a> <a id="5273" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="5275" class="Symbol">(</a><a id="5276" href="Algebra.Properties.CommutativeSemigroup.html#5207" class="Bound">x</a> <a id="5278" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="5280" href="Algebra.Properties.CommutativeSemigroup.html#5207" class="Bound">x</a><a id="5281" class="Symbol">))</a> <a id="5284" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">≈⟨</a> <a id="5287" href="Algebra.Structures.html#1465" class="Function">∙-congˡ</a> <a id="5295" class="Symbol">(</a><a id="5296" href="Relation.Binary.Structures.html#1622" class="Function">sym</a> <a id="5300" class="Symbol">(</a><a id="5301" href="Algebra.Structures.html#2977" class="Function">assoc</a> <a id="5307" href="Algebra.Properties.CommutativeSemigroup.html#5211" class="Bound">z</a> <a id="5309" href="Algebra.Properties.CommutativeSemigroup.html#5207" class="Bound">x</a> <a id="5311" href="Algebra.Properties.CommutativeSemigroup.html#5207" class="Bound">x</a><a id="5312" class="Symbol">))</a> <a id="5315" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">⟩</a>
|
||
<a id="5319" href="Algebra.Properties.CommutativeSemigroup.html#5209" class="Bound">y</a> <a id="5321" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="5323" class="Symbol">((</a><a id="5325" href="Algebra.Properties.CommutativeSemigroup.html#5211" class="Bound">z</a> <a id="5327" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="5329" href="Algebra.Properties.CommutativeSemigroup.html#5207" class="Bound">x</a><a id="5330" class="Symbol">)</a> <a id="5332" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="5334" href="Algebra.Properties.CommutativeSemigroup.html#5207" class="Bound">x</a><a id="5335" class="Symbol">)</a> <a id="5337" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">≈⟨</a> <a id="5340" href="Algebra.Structures.html#1465" class="Function">∙-congˡ</a> <a id="5348" class="Symbol">(</a><a id="5349" href="Algebra.Structures.html#1526" class="Function">∙-congʳ</a> <a id="5357" class="Symbol">(</a><a id="5358" href="Algebra.Structures.html#3298" class="Function">comm</a> <a id="5363" href="Algebra.Properties.CommutativeSemigroup.html#5211" class="Bound">z</a> <a id="5365" href="Algebra.Properties.CommutativeSemigroup.html#5207" class="Bound">x</a><a id="5366" class="Symbol">))</a> <a id="5369" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">⟩</a>
|
||
<a id="5373" href="Algebra.Properties.CommutativeSemigroup.html#5209" class="Bound">y</a> <a id="5375" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="5377" class="Symbol">((</a><a id="5379" href="Algebra.Properties.CommutativeSemigroup.html#5207" class="Bound">x</a> <a id="5381" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="5383" href="Algebra.Properties.CommutativeSemigroup.html#5211" class="Bound">z</a><a id="5384" class="Symbol">)</a> <a id="5386" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="5388" href="Algebra.Properties.CommutativeSemigroup.html#5207" class="Bound">x</a><a id="5389" class="Symbol">)</a> <a id="5391" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">≈⟨</a> <a id="5394" href="Algebra.Structures.html#1465" class="Function">∙-congˡ</a> <a id="5402" class="Symbol">(</a><a id="5403" href="Algebra.Structures.html#2977" class="Function">assoc</a> <a id="5409" href="Algebra.Properties.CommutativeSemigroup.html#5207" class="Bound">x</a> <a id="5411" href="Algebra.Properties.CommutativeSemigroup.html#5211" class="Bound">z</a> <a id="5413" href="Algebra.Properties.CommutativeSemigroup.html#5207" class="Bound">x</a><a id="5414" class="Symbol">)</a> <a id="5416" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">⟩</a>
|
||
<a id="5420" href="Algebra.Properties.CommutativeSemigroup.html#5209" class="Bound">y</a> <a id="5422" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="5424" class="Symbol">(</a><a id="5425" href="Algebra.Properties.CommutativeSemigroup.html#5207" class="Bound">x</a> <a id="5427" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="5429" class="Symbol">(</a><a id="5430" href="Algebra.Properties.CommutativeSemigroup.html#5211" class="Bound">z</a> <a id="5432" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="5434" href="Algebra.Properties.CommutativeSemigroup.html#5207" class="Bound">x</a><a id="5435" class="Symbol">))</a> <a id="5438" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">≈⟨</a> <a id="5441" href="Relation.Binary.Structures.html#1622" class="Function">sym</a> <a id="5445" class="Symbol">(</a><a id="5446" href="Algebra.Structures.html#2977" class="Function">assoc</a> <a id="5452" href="Algebra.Properties.CommutativeSemigroup.html#5209" class="Bound">y</a> <a id="5454" href="Algebra.Properties.CommutativeSemigroup.html#5207" class="Bound">x</a> <a id="5456" class="Symbol">((</a><a id="5458" href="Algebra.Properties.CommutativeSemigroup.html#5211" class="Bound">z</a> <a id="5460" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="5462" href="Algebra.Properties.CommutativeSemigroup.html#5207" class="Bound">x</a><a id="5463" class="Symbol">)))</a> <a id="5467" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">⟩</a>
|
||
<a id="5471" class="Symbol">(</a><a id="5472" href="Algebra.Properties.CommutativeSemigroup.html#5209" class="Bound">y</a> <a id="5474" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="5476" href="Algebra.Properties.CommutativeSemigroup.html#5207" class="Bound">x</a><a id="5477" class="Symbol">)</a> <a id="5479" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="5481" class="Symbol">(</a><a id="5482" href="Algebra.Properties.CommutativeSemigroup.html#5211" class="Bound">z</a> <a id="5484" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="5486" href="Algebra.Properties.CommutativeSemigroup.html#5207" class="Bound">x</a><a id="5487" class="Symbol">)</a> <a id="5489" href="Relation.Binary.Reasoning.Syntax.html#12283" class="Function Operator">∎</a>
|
||
|
||
<a id="middleSemimedial"></a><a id="5492" href="Algebra.Properties.CommutativeSemigroup.html#5492" class="Function">middleSemimedial</a> <a id="5509" class="Symbol">:</a> <a id="5511" class="Symbol">∀</a> <a id="5513" href="Algebra.Properties.CommutativeSemigroup.html#5513" class="Bound">x</a> <a id="5515" href="Algebra.Properties.CommutativeSemigroup.html#5515" class="Bound">y</a> <a id="5517" href="Algebra.Properties.CommutativeSemigroup.html#5517" class="Bound">z</a> <a id="5519" class="Symbol">→</a> <a id="5521" class="Symbol">(</a><a id="5522" href="Algebra.Properties.CommutativeSemigroup.html#5513" class="Bound">x</a> <a id="5524" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="5526" href="Algebra.Properties.CommutativeSemigroup.html#5515" class="Bound">y</a><a id="5527" class="Symbol">)</a> <a id="5529" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="5531" class="Symbol">(</a><a id="5532" href="Algebra.Properties.CommutativeSemigroup.html#5517" class="Bound">z</a> <a id="5534" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="5536" href="Algebra.Properties.CommutativeSemigroup.html#5513" class="Bound">x</a><a id="5537" class="Symbol">)</a> <a id="5539" href="Algebra.Bundles.html#4993" class="Field Operator">≈</a> <a id="5541" class="Symbol">(</a><a id="5542" href="Algebra.Properties.CommutativeSemigroup.html#5513" class="Bound">x</a> <a id="5544" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="5546" href="Algebra.Properties.CommutativeSemigroup.html#5517" class="Bound">z</a><a id="5547" class="Symbol">)</a> <a id="5549" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="5551" class="Symbol">(</a><a id="5552" href="Algebra.Properties.CommutativeSemigroup.html#5515" class="Bound">y</a> <a id="5554" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="5556" href="Algebra.Properties.CommutativeSemigroup.html#5513" class="Bound">x</a><a id="5557" class="Symbol">)</a>
|
||
<a id="5559" href="Algebra.Properties.CommutativeSemigroup.html#5492" class="Function">middleSemimedial</a> <a id="5576" href="Algebra.Properties.CommutativeSemigroup.html#5576" class="Bound">x</a> <a id="5578" href="Algebra.Properties.CommutativeSemigroup.html#5578" class="Bound">y</a> <a id="5580" href="Algebra.Properties.CommutativeSemigroup.html#5580" class="Bound">z</a> <a id="5582" class="Symbol">=</a> <a id="5584" href="Relation.Binary.Reasoning.Syntax.html#1510" class="Function Operator">begin</a>
|
||
<a id="5592" class="Symbol">(</a><a id="5593" href="Algebra.Properties.CommutativeSemigroup.html#5576" class="Bound">x</a> <a id="5595" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="5597" href="Algebra.Properties.CommutativeSemigroup.html#5578" class="Bound">y</a><a id="5598" class="Symbol">)</a> <a id="5600" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="5602" class="Symbol">(</a><a id="5603" href="Algebra.Properties.CommutativeSemigroup.html#5580" class="Bound">z</a> <a id="5605" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="5607" href="Algebra.Properties.CommutativeSemigroup.html#5576" class="Bound">x</a><a id="5608" class="Symbol">)</a> <a id="5610" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">≈⟨</a> <a id="5613" href="Algebra.Structures.html#2977" class="Function">assoc</a> <a id="5619" href="Algebra.Properties.CommutativeSemigroup.html#5576" class="Bound">x</a> <a id="5621" href="Algebra.Properties.CommutativeSemigroup.html#5578" class="Bound">y</a> <a id="5623" class="Symbol">((</a><a id="5625" href="Algebra.Properties.CommutativeSemigroup.html#5580" class="Bound">z</a> <a id="5627" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="5629" href="Algebra.Properties.CommutativeSemigroup.html#5576" class="Bound">x</a><a id="5630" class="Symbol">))</a> <a id="5633" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">⟩</a>
|
||
<a id="5637" href="Algebra.Properties.CommutativeSemigroup.html#5576" class="Bound">x</a> <a id="5639" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="5641" class="Symbol">(</a><a id="5642" href="Algebra.Properties.CommutativeSemigroup.html#5578" class="Bound">y</a> <a id="5644" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="5646" class="Symbol">(</a><a id="5647" href="Algebra.Properties.CommutativeSemigroup.html#5580" class="Bound">z</a> <a id="5649" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="5651" href="Algebra.Properties.CommutativeSemigroup.html#5576" class="Bound">x</a><a id="5652" class="Symbol">))</a> <a id="5655" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">≈⟨</a> <a id="5658" href="Algebra.Structures.html#1465" class="Function">∙-congˡ</a> <a id="5666" class="Symbol">(</a><a id="5667" href="Relation.Binary.Structures.html#1622" class="Function">sym</a> <a id="5671" class="Symbol">(</a><a id="5672" href="Algebra.Structures.html#2977" class="Function">assoc</a> <a id="5678" href="Algebra.Properties.CommutativeSemigroup.html#5578" class="Bound">y</a> <a id="5680" href="Algebra.Properties.CommutativeSemigroup.html#5580" class="Bound">z</a> <a id="5682" href="Algebra.Properties.CommutativeSemigroup.html#5576" class="Bound">x</a><a id="5683" class="Symbol">))</a> <a id="5686" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">⟩</a>
|
||
<a id="5690" href="Algebra.Properties.CommutativeSemigroup.html#5576" class="Bound">x</a> <a id="5692" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="5694" class="Symbol">((</a><a id="5696" href="Algebra.Properties.CommutativeSemigroup.html#5578" class="Bound">y</a> <a id="5698" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="5700" href="Algebra.Properties.CommutativeSemigroup.html#5580" class="Bound">z</a><a id="5701" class="Symbol">)</a> <a id="5703" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="5705" href="Algebra.Properties.CommutativeSemigroup.html#5576" class="Bound">x</a><a id="5706" class="Symbol">)</a> <a id="5708" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">≈⟨</a> <a id="5711" href="Algebra.Structures.html#1465" class="Function">∙-congˡ</a> <a id="5719" class="Symbol">(</a><a id="5720" href="Algebra.Structures.html#1526" class="Function">∙-congʳ</a> <a id="5728" class="Symbol">(</a><a id="5729" href="Algebra.Structures.html#3298" class="Function">comm</a> <a id="5734" href="Algebra.Properties.CommutativeSemigroup.html#5578" class="Bound">y</a> <a id="5736" href="Algebra.Properties.CommutativeSemigroup.html#5580" class="Bound">z</a><a id="5737" class="Symbol">))</a> <a id="5740" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">⟩</a>
|
||
<a id="5744" href="Algebra.Properties.CommutativeSemigroup.html#5576" class="Bound">x</a> <a id="5746" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="5748" class="Symbol">((</a><a id="5750" href="Algebra.Properties.CommutativeSemigroup.html#5580" class="Bound">z</a> <a id="5752" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="5754" href="Algebra.Properties.CommutativeSemigroup.html#5578" class="Bound">y</a><a id="5755" class="Symbol">)</a> <a id="5757" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="5759" href="Algebra.Properties.CommutativeSemigroup.html#5576" class="Bound">x</a><a id="5760" class="Symbol">)</a> <a id="5762" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">≈⟨</a> <a id="5765" href="Algebra.Structures.html#1465" class="Function">∙-congˡ</a> <a id="5773" class="Symbol">(</a> <a id="5775" href="Algebra.Structures.html#2977" class="Function">assoc</a> <a id="5781" href="Algebra.Properties.CommutativeSemigroup.html#5580" class="Bound">z</a> <a id="5783" href="Algebra.Properties.CommutativeSemigroup.html#5578" class="Bound">y</a> <a id="5785" href="Algebra.Properties.CommutativeSemigroup.html#5576" class="Bound">x</a><a id="5786" class="Symbol">)</a> <a id="5788" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">⟩</a>
|
||
<a id="5792" href="Algebra.Properties.CommutativeSemigroup.html#5576" class="Bound">x</a> <a id="5794" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="5796" class="Symbol">(</a><a id="5797" href="Algebra.Properties.CommutativeSemigroup.html#5580" class="Bound">z</a> <a id="5799" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="5801" class="Symbol">(</a><a id="5802" href="Algebra.Properties.CommutativeSemigroup.html#5578" class="Bound">y</a> <a id="5804" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="5806" href="Algebra.Properties.CommutativeSemigroup.html#5576" class="Bound">x</a><a id="5807" class="Symbol">))</a> <a id="5810" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">≈⟨</a> <a id="5813" href="Relation.Binary.Structures.html#1622" class="Function">sym</a> <a id="5817" class="Symbol">(</a><a id="5818" href="Algebra.Structures.html#2977" class="Function">assoc</a> <a id="5824" href="Algebra.Properties.CommutativeSemigroup.html#5576" class="Bound">x</a> <a id="5826" href="Algebra.Properties.CommutativeSemigroup.html#5580" class="Bound">z</a> <a id="5828" class="Symbol">((</a><a id="5830" href="Algebra.Properties.CommutativeSemigroup.html#5578" class="Bound">y</a> <a id="5832" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="5834" href="Algebra.Properties.CommutativeSemigroup.html#5576" class="Bound">x</a><a id="5835" class="Symbol">)))</a> <a id="5839" href="Relation.Binary.Reasoning.Syntax.html#7049" class="Function">⟩</a>
|
||
<a id="5843" class="Symbol">(</a><a id="5844" href="Algebra.Properties.CommutativeSemigroup.html#5576" class="Bound">x</a> <a id="5846" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="5848" href="Algebra.Properties.CommutativeSemigroup.html#5580" class="Bound">z</a><a id="5849" class="Symbol">)</a> <a id="5851" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="5853" class="Symbol">(</a><a id="5854" href="Algebra.Properties.CommutativeSemigroup.html#5578" class="Bound">y</a> <a id="5856" href="Algebra.Bundles.html#5037" class="Field Operator">∙</a> <a id="5858" href="Algebra.Properties.CommutativeSemigroup.html#5576" class="Bound">x</a><a id="5859" class="Symbol">)</a> <a id="5861" href="Relation.Binary.Reasoning.Syntax.html#12283" class="Function Operator">∎</a>
|
||
|
||
<a id="semimedial"></a><a id="5864" href="Algebra.Properties.CommutativeSemigroup.html#5864" class="Function">semimedial</a> <a id="5875" class="Symbol">:</a> <a id="5877" href="Algebra.Definitions.html#7024" class="Function">Semimedial</a> <a id="5888" href="Algebra.Bundles.html#5037" class="Field Operator">_∙_</a>
|
||
<a id="5892" href="Algebra.Properties.CommutativeSemigroup.html#5864" class="Function">semimedial</a> <a id="5903" class="Symbol">=</a> <a id="5905" href="Algebra.Properties.CommutativeSemigroup.html#4831" class="Function">semimedialˡ</a> <a id="5917" href="Agda.Builtin.Sigma.html#235" class="InductiveConstructor Operator">,</a> <a id="5919" href="Algebra.Properties.CommutativeSemigroup.html#5161" class="Function">semimedialʳ</a>
|
||
</pre></body></html> |