mirror of
https://git8.cs.fau.de/theses/bsc-leon-vatthauer.git
synced 2024-05-31 07:28:34 +02:00
201 lines
No EOL
67 KiB
HTML
201 lines
No EOL
67 KiB
HTML
<!DOCTYPE HTML>
|
||
<html><head><meta charset="utf-8"><title>Algebra.Construct.NaturalChoice.MinMaxOp</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">-- Properties of min and max operators specified over a total order</a>
|
||
<a id="174" class="Comment">------------------------------------------------------------------------</a>
|
||
|
||
<a id="248" class="Symbol">{-#</a> <a id="252" class="Keyword">OPTIONS</a> <a id="260" class="Pragma">--cubical-compatible</a> <a id="281" class="Pragma">--safe</a> <a id="288" class="Symbol">#-}</a>
|
||
|
||
<a id="293" class="Keyword">open</a> <a id="298" class="Keyword">import</a> <a id="305" href="Algebra.Core.html" class="Module">Algebra.Core</a>
|
||
<a id="318" class="Keyword">open</a> <a id="323" class="Keyword">import</a> <a id="330" href="Algebra.Bundles.html" class="Module">Algebra.Bundles</a>
|
||
<a id="346" class="Keyword">open</a> <a id="351" class="Keyword">import</a> <a id="358" href="Algebra.Construct.NaturalChoice.Base.html" class="Module">Algebra.Construct.NaturalChoice.Base</a>
|
||
<a id="395" class="Keyword">open</a> <a id="400" class="Keyword">import</a> <a id="407" href="Data.Sum.Base.html" class="Module">Data.Sum.Base</a> <a id="421" class="Symbol">as</a> <a id="424" class="Module">Sum</a> <a id="428" class="Keyword">using</a> <a id="434" class="Symbol">(</a><a id="435" href="Data.Sum.Base.html#793" class="InductiveConstructor">inj₁</a><a id="439" class="Symbol">;</a> <a id="441" href="Data.Sum.Base.html#818" class="InductiveConstructor">inj₂</a><a id="445" class="Symbol">;</a> <a id="447" href="Data.Sum.Base.html#929" class="Function Operator">[_,_]</a><a id="452" class="Symbol">)</a>
|
||
<a id="454" class="Keyword">open</a> <a id="459" class="Keyword">import</a> <a id="466" href="Data.Product.html" class="Module">Data.Product</a> <a id="479" class="Keyword">using</a> <a id="485" class="Symbol">(</a><a id="486" href="Agda.Builtin.Sigma.html#218" class="InductiveConstructor Operator">_,_</a><a id="489" class="Symbol">)</a>
|
||
<a id="491" class="Keyword">open</a> <a id="496" class="Keyword">import</a> <a id="503" href="Function.Base.html" class="Module">Function.Base</a> <a id="517" class="Keyword">using</a> <a id="523" class="Symbol">(</a><a id="524" href="Function.Base.html#624" class="Function">id</a><a id="526" class="Symbol">;</a> <a id="528" href="Function.Base.html#1040" class="Function Operator">_∘_</a><a id="531" class="Symbol">;</a> <a id="533" href="Function.Base.html#1563" class="Function">flip</a><a id="537" class="Symbol">)</a>
|
||
<a id="539" class="Keyword">open</a> <a id="544" class="Keyword">import</a> <a id="551" href="Relation.Binary.html" class="Module">Relation.Binary</a>
|
||
<a id="567" class="Keyword">open</a> <a id="572" class="Keyword">import</a> <a id="579" href="Relation.Binary.Consequences.html" class="Module">Relation.Binary.Consequences</a>
|
||
|
||
<a id="609" class="Keyword">module</a> <a id="616" href="Algebra.Construct.NaturalChoice.MinMaxOp.html" class="Module">Algebra.Construct.NaturalChoice.MinMaxOp</a>
|
||
<a id="659" class="Symbol">{</a><a id="660" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#660" class="Bound">a</a> <a id="662" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#662" class="Bound">ℓ₁</a> <a id="665" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#665" class="Bound">ℓ₂</a><a id="667" class="Symbol">}</a> <a id="669" class="Symbol">{</a><a id="670" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#670" class="Bound">O</a> <a id="672" class="Symbol">:</a> <a id="674" href="Relation.Binary.Bundles.html#2384" class="Record">TotalPreorder</a> <a id="688" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#660" class="Bound">a</a> <a id="690" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#662" class="Bound">ℓ₁</a> <a id="693" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#665" class="Bound">ℓ₂</a><a id="695" class="Symbol">}</a>
|
||
<a id="699" class="Symbol">(</a><a id="700" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#700" class="Bound">minOp</a> <a id="706" class="Symbol">:</a> <a id="708" href="Algebra.Construct.NaturalChoice.Base.html#955" class="Record">MinOperator</a> <a id="720" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#670" class="Bound">O</a><a id="721" class="Symbol">)</a>
|
||
<a id="725" class="Symbol">(</a><a id="726" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#726" class="Bound">maxOp</a> <a id="732" class="Symbol">:</a> <a id="734" href="Algebra.Construct.NaturalChoice.Base.html#1156" class="Record">MaxOperator</a> <a id="746" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#670" class="Bound">O</a><a id="747" class="Symbol">)</a>
|
||
<a id="751" class="Keyword">where</a>
|
||
|
||
<a id="758" class="Keyword">open</a> <a id="763" href="Relation.Binary.Bundles.html#2384" class="Module">TotalPreorder</a> <a id="777" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#670" class="Bound">O</a> <a id="779" class="Keyword">renaming</a>
|
||
<a id="790" class="Symbol">(</a> <a id="792" href="Relation.Binary.Bundles.html#2468" class="Field">Carrier</a> <a id="802" class="Symbol">to</a> <a id="805" class="Field">A</a>
|
||
<a id="809" class="Symbol">;</a> <a id="811" href="Relation.Binary.Bundles.html#2562" class="Field Operator">_≲_</a> <a id="821" class="Symbol">to</a> <a id="824" class="Field Operator">_≤_</a>
|
||
<a id="830" class="Symbol">;</a> <a id="832" href="Relation.Binary.Structures.html#2994" class="Function">≲-resp-≈</a> <a id="842" class="Symbol">to</a> <a id="845" class="Function">≤-resp-≈</a>
|
||
<a id="856" class="Symbol">;</a> <a id="858" href="Relation.Binary.Structures.html#2965" class="Function">≲-respʳ-≈</a> <a id="868" class="Symbol">to</a> <a id="871" class="Function">≤-respʳ-≈</a>
|
||
<a id="883" class="Symbol">;</a> <a id="885" href="Relation.Binary.Structures.html#2936" class="Function">≲-respˡ-≈</a> <a id="895" class="Symbol">to</a> <a id="898" class="Function">≤-respˡ-≈</a>
|
||
<a id="910" class="Symbol">)</a>
|
||
<a id="912" class="Keyword">open</a> <a id="917" href="Algebra.Construct.NaturalChoice.Base.html#955" class="Module">MinOperator</a> <a id="929" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#700" class="Bound">minOp</a>
|
||
<a id="935" class="Keyword">open</a> <a id="940" href="Algebra.Construct.NaturalChoice.Base.html#1156" class="Module">MaxOperator</a> <a id="952" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#726" class="Bound">maxOp</a>
|
||
|
||
<a id="959" class="Keyword">open</a> <a id="964" class="Keyword">import</a> <a id="971" href="Algebra.Definitions.html" class="Module">Algebra.Definitions</a> <a id="991" href="Relation.Binary.Bundles.html#2496" class="Function Operator">_≈_</a>
|
||
<a id="995" class="Keyword">open</a> <a id="1000" class="Keyword">import</a> <a id="1007" href="Algebra.Structures.html" class="Module">Algebra.Structures</a> <a id="1026" href="Relation.Binary.Bundles.html#2496" class="Function Operator">_≈_</a>
|
||
<a id="1030" class="Keyword">open</a> <a id="1035" class="Keyword">import</a> <a id="1042" href="Algebra.Consequences.Setoid.html" class="Module">Algebra.Consequences.Setoid</a> <a id="1070" href="Relation.Binary.Bundles.html#2257" class="Function">Eq.setoid</a>
|
||
<a id="1080" class="Keyword">open</a> <a id="1085" class="Keyword">import</a> <a id="1092" href="Relation.Binary.Reasoning.Preorder.html" class="Module">Relation.Binary.Reasoning.Preorder</a> <a id="1127" href="Relation.Binary.Bundles.html#2732" class="Function">preorder</a>
|
||
|
||
<a id="1137" class="Comment">------------------------------------------------------------------------</a>
|
||
<a id="1210" class="Comment">-- Re-export properties of individual operators</a>
|
||
|
||
<a id="1259" class="Keyword">open</a> <a id="1264" class="Keyword">import</a> <a id="1271" href="Algebra.Construct.NaturalChoice.MinOp.html" class="Module">Algebra.Construct.NaturalChoice.MinOp</a> <a id="1309" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#700" class="Bound">minOp</a> <a id="1315" class="Keyword">public</a>
|
||
<a id="1322" class="Keyword">open</a> <a id="1327" class="Keyword">import</a> <a id="1334" href="Algebra.Construct.NaturalChoice.MaxOp.html" class="Module">Algebra.Construct.NaturalChoice.MaxOp</a> <a id="1372" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#726" class="Bound">maxOp</a> <a id="1378" class="Keyword">public</a>
|
||
|
||
<a id="1386" class="Comment">------------------------------------------------------------------------</a>
|
||
<a id="1459" class="Comment">-- Joint algebraic structures</a>
|
||
|
||
<a id="⊓-distribˡ-⊔"></a><a id="1490" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#1490" class="Function">⊓-distribˡ-⊔</a> <a id="1503" class="Symbol">:</a> <a id="1505" href="Algebra.Construct.NaturalChoice.Base.html#1030" class="Function Operator">_⊓_</a> <a id="1509" href="Algebra.Definitions.html#2236" class="Function Operator">DistributesOverˡ</a> <a id="1526" href="Algebra.Construct.NaturalChoice.Base.html#1231" class="Field Operator">_⊔_</a>
|
||
<a id="1530" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#1490" class="Function">⊓-distribˡ-⊔</a> <a id="1543" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#1543" class="Bound">x</a> <a id="1545" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#1545" class="Bound">y</a> <a id="1547" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#1547" class="Bound">z</a> <a id="1549" class="Keyword">with</a> <a id="1554" href="Relation.Binary.Structures.html#2844" class="Function">total</a> <a id="1560" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#1545" class="Bound">y</a> <a id="1562" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#1547" class="Bound">z</a>
|
||
<a id="1564" class="Symbol">...</a> <a id="1568" class="Symbol">|</a> <a id="1570" href="Data.Sum.Base.html#793" class="InductiveConstructor">inj₁</a> <a id="1575" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#1575" class="Bound">y≤z</a> <a id="1579" class="Symbol">=</a> <a id="1581" href="Relation.Binary.Reasoning.Base.Double.html#2336" class="Function Operator">begin-equality</a>
|
||
<a id="1598" class="Bound">x</a> <a id="1600" href="Algebra.Construct.NaturalChoice.Base.html#1030" class="Function Operator">⊓</a> <a id="1602" class="Symbol">(</a><a id="1603" class="Bound">y</a> <a id="1605" href="Algebra.Construct.NaturalChoice.Base.html#1231" class="Field Operator">⊔</a> <a id="1607" class="Bound">z</a><a id="1608" class="Symbol">)</a> <a id="1616" href="Relation.Binary.Reasoning.Base.Double.html#2730" class="Function">≈⟨</a> <a id="1620" href="Algebra.Construct.NaturalChoice.MinOp.html#1739" class="Function">⊓-congˡ</a> <a id="1628" class="Bound">x</a> <a id="1630" class="Symbol">(</a><a id="1631" href="Algebra.Construct.NaturalChoice.Base.html#1261" class="Field">x≤y⇒x⊔y≈y</a> <a id="1641" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#1575" class="Bound">y≤z</a><a id="1644" class="Symbol">)</a> <a id="1646" href="Relation.Binary.Reasoning.Base.Double.html#2730" class="Function">⟩</a>
|
||
<a id="1650" class="Bound">x</a> <a id="1652" href="Algebra.Construct.NaturalChoice.Base.html#1030" class="Function Operator">⊓</a> <a id="1654" class="Bound">z</a> <a id="1668" href="Relation.Binary.Reasoning.Base.Double.html#2972" class="Function">≈˘⟨</a> <a id="1672" href="Algebra.Construct.NaturalChoice.Base.html#1261" class="Field">x≤y⇒x⊔y≈y</a> <a id="1682" class="Symbol">(</a><a id="1683" href="Algebra.Construct.NaturalChoice.MinOp.html#7000" class="Function">⊓-monoʳ-≤</a> <a id="1693" class="Bound">x</a> <a id="1695" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#1575" class="Bound">y≤z</a><a id="1698" class="Symbol">)</a> <a id="1700" href="Relation.Binary.Reasoning.Base.Double.html#2972" class="Function">⟩</a>
|
||
<a id="1704" class="Symbol">(</a><a id="1705" class="Bound">x</a> <a id="1707" href="Algebra.Construct.NaturalChoice.Base.html#1030" class="Function Operator">⊓</a> <a id="1709" class="Bound">y</a><a id="1710" class="Symbol">)</a> <a id="1712" href="Algebra.Construct.NaturalChoice.Base.html#1231" class="Field Operator">⊔</a> <a id="1714" class="Symbol">(</a><a id="1715" class="Bound">x</a> <a id="1717" href="Algebra.Construct.NaturalChoice.Base.html#1030" class="Function Operator">⊓</a> <a id="1719" class="Bound">z</a><a id="1720" class="Symbol">)</a> <a id="1722" href="Relation.Binary.Reasoning.Base.Double.html#3656" class="Function Operator">∎</a>
|
||
<a id="1724" class="Symbol">...</a> <a id="1728" class="Symbol">|</a> <a id="1730" href="Data.Sum.Base.html#818" class="InductiveConstructor">inj₂</a> <a id="1735" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#1735" class="Bound">y≥z</a> <a id="1739" class="Symbol">=</a> <a id="1741" href="Relation.Binary.Reasoning.Base.Double.html#2336" class="Function Operator">begin-equality</a>
|
||
<a id="1758" class="Bound">x</a> <a id="1760" href="Algebra.Construct.NaturalChoice.Base.html#1030" class="Function Operator">⊓</a> <a id="1762" class="Symbol">(</a><a id="1763" class="Bound">y</a> <a id="1765" href="Algebra.Construct.NaturalChoice.Base.html#1231" class="Field Operator">⊔</a> <a id="1767" class="Bound">z</a><a id="1768" class="Symbol">)</a> <a id="1776" href="Relation.Binary.Reasoning.Base.Double.html#2730" class="Function">≈⟨</a> <a id="1780" href="Algebra.Construct.NaturalChoice.MinOp.html#1739" class="Function">⊓-congˡ</a> <a id="1788" class="Bound">x</a> <a id="1790" class="Symbol">(</a><a id="1791" href="Algebra.Construct.NaturalChoice.Base.html#1307" class="Field">x≥y⇒x⊔y≈x</a> <a id="1801" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#1735" class="Bound">y≥z</a><a id="1804" class="Symbol">)</a> <a id="1806" href="Relation.Binary.Reasoning.Base.Double.html#2730" class="Function">⟩</a>
|
||
<a id="1810" class="Bound">x</a> <a id="1812" href="Algebra.Construct.NaturalChoice.Base.html#1030" class="Function Operator">⊓</a> <a id="1814" class="Bound">y</a> <a id="1828" href="Relation.Binary.Reasoning.Base.Double.html#2972" class="Function">≈˘⟨</a> <a id="1832" href="Algebra.Construct.NaturalChoice.Base.html#1307" class="Field">x≥y⇒x⊔y≈x</a> <a id="1842" class="Symbol">(</a><a id="1843" href="Algebra.Construct.NaturalChoice.MinOp.html#7000" class="Function">⊓-monoʳ-≤</a> <a id="1853" class="Bound">x</a> <a id="1855" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#1735" class="Bound">y≥z</a><a id="1858" class="Symbol">)</a> <a id="1860" href="Relation.Binary.Reasoning.Base.Double.html#2972" class="Function">⟩</a>
|
||
<a id="1864" class="Symbol">(</a><a id="1865" class="Bound">x</a> <a id="1867" href="Algebra.Construct.NaturalChoice.Base.html#1030" class="Function Operator">⊓</a> <a id="1869" class="Bound">y</a><a id="1870" class="Symbol">)</a> <a id="1872" href="Algebra.Construct.NaturalChoice.Base.html#1231" class="Field Operator">⊔</a> <a id="1874" class="Symbol">(</a><a id="1875" class="Bound">x</a> <a id="1877" href="Algebra.Construct.NaturalChoice.Base.html#1030" class="Function Operator">⊓</a> <a id="1879" class="Bound">z</a><a id="1880" class="Symbol">)</a> <a id="1882" href="Relation.Binary.Reasoning.Base.Double.html#3656" class="Function Operator">∎</a>
|
||
|
||
<a id="⊓-distribʳ-⊔"></a><a id="1885" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#1885" class="Function">⊓-distribʳ-⊔</a> <a id="1898" class="Symbol">:</a> <a id="1900" href="Algebra.Construct.NaturalChoice.Base.html#1030" class="Function Operator">_⊓_</a> <a id="1904" href="Algebra.Definitions.html#2355" class="Function Operator">DistributesOverʳ</a> <a id="1921" href="Algebra.Construct.NaturalChoice.Base.html#1231" class="Field Operator">_⊔_</a>
|
||
<a id="1925" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#1885" class="Function">⊓-distribʳ-⊔</a> <a id="1938" class="Symbol">=</a> <a id="1940" href="Algebra.Consequences.Setoid.html#4794" class="Function">comm+distrˡ⇒distrʳ</a> <a id="1959" href="Algebra.Construct.NaturalChoice.MaxOp.html#938" class="Function">⊔-cong</a> <a id="1966" href="Algebra.Construct.NaturalChoice.MinOp.html#1553" class="Function">⊓-comm</a> <a id="1973" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#1490" class="Function">⊓-distribˡ-⊔</a>
|
||
|
||
<a id="⊓-distrib-⊔"></a><a id="1987" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#1987" class="Function">⊓-distrib-⊔</a> <a id="1999" class="Symbol">:</a> <a id="2001" href="Algebra.Construct.NaturalChoice.Base.html#1030" class="Function Operator">_⊓_</a> <a id="2005" href="Algebra.Definitions.html#2474" class="Function Operator">DistributesOver</a> <a id="2021" href="Algebra.Construct.NaturalChoice.Base.html#1231" class="Field Operator">_⊔_</a>
|
||
<a id="2025" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#1987" class="Function">⊓-distrib-⊔</a> <a id="2037" class="Symbol">=</a> <a id="2039" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#1490" class="Function">⊓-distribˡ-⊔</a> <a id="2052" href="Agda.Builtin.Sigma.html#218" class="InductiveConstructor Operator">,</a> <a id="2054" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#1885" class="Function">⊓-distribʳ-⊔</a>
|
||
|
||
<a id="⊔-distribˡ-⊓"></a><a id="2068" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#2068" class="Function">⊔-distribˡ-⊓</a> <a id="2081" class="Symbol">:</a> <a id="2083" href="Algebra.Construct.NaturalChoice.Base.html#1231" class="Field Operator">_⊔_</a> <a id="2087" href="Algebra.Definitions.html#2236" class="Function Operator">DistributesOverˡ</a> <a id="2104" href="Algebra.Construct.NaturalChoice.Base.html#1030" class="Function Operator">_⊓_</a>
|
||
<a id="2108" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#2068" class="Function">⊔-distribˡ-⊓</a> <a id="2121" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#2121" class="Bound">x</a> <a id="2123" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#2123" class="Bound">y</a> <a id="2125" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#2125" class="Bound">z</a> <a id="2127" class="Keyword">with</a> <a id="2132" href="Relation.Binary.Structures.html#2844" class="Function">total</a> <a id="2138" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#2123" class="Bound">y</a> <a id="2140" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#2125" class="Bound">z</a>
|
||
<a id="2142" class="Symbol">...</a> <a id="2146" class="Symbol">|</a> <a id="2148" href="Data.Sum.Base.html#793" class="InductiveConstructor">inj₁</a> <a id="2153" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#2153" class="Bound">y≤z</a> <a id="2157" class="Symbol">=</a> <a id="2159" href="Relation.Binary.Reasoning.Base.Double.html#2336" class="Function Operator">begin-equality</a>
|
||
<a id="2176" class="Bound">x</a> <a id="2178" href="Algebra.Construct.NaturalChoice.Base.html#1231" class="Field Operator">⊔</a> <a id="2180" class="Symbol">(</a><a id="2181" class="Bound">y</a> <a id="2183" href="Algebra.Construct.NaturalChoice.Base.html#1030" class="Function Operator">⊓</a> <a id="2185" class="Bound">z</a><a id="2186" class="Symbol">)</a> <a id="2194" href="Relation.Binary.Reasoning.Base.Double.html#2730" class="Function">≈⟨</a> <a id="2198" href="Algebra.Construct.NaturalChoice.MaxOp.html#995" class="Function">⊔-congˡ</a> <a id="2206" class="Bound">x</a> <a id="2208" class="Symbol">(</a><a id="2209" href="Algebra.Construct.NaturalChoice.Base.html#1060" class="Function">x≤y⇒x⊓y≈x</a> <a id="2219" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#2153" class="Bound">y≤z</a><a id="2222" class="Symbol">)</a> <a id="2224" href="Relation.Binary.Reasoning.Base.Double.html#2730" class="Function">⟩</a>
|
||
<a id="2228" class="Bound">x</a> <a id="2230" href="Algebra.Construct.NaturalChoice.Base.html#1231" class="Field Operator">⊔</a> <a id="2232" class="Bound">y</a> <a id="2246" href="Relation.Binary.Reasoning.Base.Double.html#2972" class="Function">≈˘⟨</a> <a id="2250" href="Algebra.Construct.NaturalChoice.Base.html#1060" class="Function">x≤y⇒x⊓y≈x</a> <a id="2260" class="Symbol">(</a><a id="2261" href="Algebra.Construct.NaturalChoice.MaxOp.html#2364" class="Function">⊔-monoʳ-≤</a> <a id="2271" class="Bound">x</a> <a id="2273" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#2153" class="Bound">y≤z</a><a id="2276" class="Symbol">)</a> <a id="2278" href="Relation.Binary.Reasoning.Base.Double.html#2972" class="Function">⟩</a>
|
||
<a id="2282" class="Symbol">(</a><a id="2283" class="Bound">x</a> <a id="2285" href="Algebra.Construct.NaturalChoice.Base.html#1231" class="Field Operator">⊔</a> <a id="2287" class="Bound">y</a><a id="2288" class="Symbol">)</a> <a id="2290" href="Algebra.Construct.NaturalChoice.Base.html#1030" class="Function Operator">⊓</a> <a id="2292" class="Symbol">(</a><a id="2293" class="Bound">x</a> <a id="2295" href="Algebra.Construct.NaturalChoice.Base.html#1231" class="Field Operator">⊔</a> <a id="2297" class="Bound">z</a><a id="2298" class="Symbol">)</a> <a id="2300" href="Relation.Binary.Reasoning.Base.Double.html#3656" class="Function Operator">∎</a>
|
||
<a id="2302" class="Symbol">...</a> <a id="2306" class="Symbol">|</a> <a id="2308" href="Data.Sum.Base.html#818" class="InductiveConstructor">inj₂</a> <a id="2313" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#2313" class="Bound">y≥z</a> <a id="2317" class="Symbol">=</a> <a id="2319" href="Relation.Binary.Reasoning.Base.Double.html#2336" class="Function Operator">begin-equality</a>
|
||
<a id="2336" class="Bound">x</a> <a id="2338" href="Algebra.Construct.NaturalChoice.Base.html#1231" class="Field Operator">⊔</a> <a id="2340" class="Symbol">(</a><a id="2341" class="Bound">y</a> <a id="2343" href="Algebra.Construct.NaturalChoice.Base.html#1030" class="Function Operator">⊓</a> <a id="2345" class="Bound">z</a><a id="2346" class="Symbol">)</a> <a id="2354" href="Relation.Binary.Reasoning.Base.Double.html#2730" class="Function">≈⟨</a> <a id="2358" href="Algebra.Construct.NaturalChoice.MaxOp.html#995" class="Function">⊔-congˡ</a> <a id="2366" class="Bound">x</a> <a id="2368" class="Symbol">(</a><a id="2369" href="Algebra.Construct.NaturalChoice.Base.html#1106" class="Function">x≥y⇒x⊓y≈y</a> <a id="2379" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#2313" class="Bound">y≥z</a><a id="2382" class="Symbol">)</a> <a id="2384" href="Relation.Binary.Reasoning.Base.Double.html#2730" class="Function">⟩</a>
|
||
<a id="2388" class="Bound">x</a> <a id="2390" href="Algebra.Construct.NaturalChoice.Base.html#1231" class="Field Operator">⊔</a> <a id="2392" class="Bound">z</a> <a id="2406" href="Relation.Binary.Reasoning.Base.Double.html#2972" class="Function">≈˘⟨</a> <a id="2410" href="Algebra.Construct.NaturalChoice.Base.html#1106" class="Function">x≥y⇒x⊓y≈y</a> <a id="2420" class="Symbol">(</a><a id="2421" href="Algebra.Construct.NaturalChoice.MaxOp.html#2364" class="Function">⊔-monoʳ-≤</a> <a id="2431" class="Bound">x</a> <a id="2433" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#2313" class="Bound">y≥z</a><a id="2436" class="Symbol">)</a> <a id="2438" href="Relation.Binary.Reasoning.Base.Double.html#2972" class="Function">⟩</a>
|
||
<a id="2442" class="Symbol">(</a><a id="2443" class="Bound">x</a> <a id="2445" href="Algebra.Construct.NaturalChoice.Base.html#1231" class="Field Operator">⊔</a> <a id="2447" class="Bound">y</a><a id="2448" class="Symbol">)</a> <a id="2450" href="Algebra.Construct.NaturalChoice.Base.html#1030" class="Function Operator">⊓</a> <a id="2452" class="Symbol">(</a><a id="2453" class="Bound">x</a> <a id="2455" href="Algebra.Construct.NaturalChoice.Base.html#1231" class="Field Operator">⊔</a> <a id="2457" class="Bound">z</a><a id="2458" class="Symbol">)</a> <a id="2460" href="Relation.Binary.Reasoning.Base.Double.html#3656" class="Function Operator">∎</a>
|
||
|
||
<a id="⊔-distribʳ-⊓"></a><a id="2463" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#2463" class="Function">⊔-distribʳ-⊓</a> <a id="2476" class="Symbol">:</a> <a id="2478" href="Algebra.Construct.NaturalChoice.Base.html#1231" class="Field Operator">_⊔_</a> <a id="2482" href="Algebra.Definitions.html#2355" class="Function Operator">DistributesOverʳ</a> <a id="2499" href="Algebra.Construct.NaturalChoice.Base.html#1030" class="Function Operator">_⊓_</a>
|
||
<a id="2503" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#2463" class="Function">⊔-distribʳ-⊓</a> <a id="2516" class="Symbol">=</a> <a id="2518" href="Algebra.Consequences.Setoid.html#4794" class="Function">comm+distrˡ⇒distrʳ</a> <a id="2537" href="Algebra.Construct.NaturalChoice.MinOp.html#2242" class="Function">⊓-cong</a> <a id="2544" href="Algebra.Construct.NaturalChoice.MaxOp.html#1108" class="Function">⊔-comm</a> <a id="2551" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#2068" class="Function">⊔-distribˡ-⊓</a>
|
||
|
||
<a id="⊔-distrib-⊓"></a><a id="2565" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#2565" class="Function">⊔-distrib-⊓</a> <a id="2577" class="Symbol">:</a> <a id="2579" href="Algebra.Construct.NaturalChoice.Base.html#1231" class="Field Operator">_⊔_</a> <a id="2583" href="Algebra.Definitions.html#2474" class="Function Operator">DistributesOver</a> <a id="2599" href="Algebra.Construct.NaturalChoice.Base.html#1030" class="Function Operator">_⊓_</a>
|
||
<a id="2603" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#2565" class="Function">⊔-distrib-⊓</a> <a id="2615" class="Symbol">=</a> <a id="2617" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#2068" class="Function">⊔-distribˡ-⊓</a> <a id="2630" href="Agda.Builtin.Sigma.html#218" class="InductiveConstructor Operator">,</a> <a id="2632" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#2463" class="Function">⊔-distribʳ-⊓</a>
|
||
|
||
<a id="⊓-absorbs-⊔"></a><a id="2646" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#2646" class="Function">⊓-absorbs-⊔</a> <a id="2658" class="Symbol">:</a> <a id="2660" href="Algebra.Construct.NaturalChoice.Base.html#1030" class="Function Operator">_⊓_</a> <a id="2664" href="Algebra.Definitions.html#2868" class="Function Operator">Absorbs</a> <a id="2672" href="Algebra.Construct.NaturalChoice.Base.html#1231" class="Field Operator">_⊔_</a>
|
||
<a id="2676" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#2646" class="Function">⊓-absorbs-⊔</a> <a id="2688" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#2688" class="Bound">x</a> <a id="2690" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#2690" class="Bound">y</a> <a id="2692" class="Keyword">with</a> <a id="2697" href="Relation.Binary.Structures.html#2844" class="Function">total</a> <a id="2703" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#2688" class="Bound">x</a> <a id="2705" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#2690" class="Bound">y</a>
|
||
<a id="2707" class="Symbol">...</a> <a id="2711" class="Symbol">|</a> <a id="2713" href="Data.Sum.Base.html#793" class="InductiveConstructor">inj₁</a> <a id="2718" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#2718" class="Bound">x≤y</a> <a id="2722" class="Symbol">=</a> <a id="2724" href="Relation.Binary.Reasoning.Base.Double.html#2336" class="Function Operator">begin-equality</a>
|
||
<a id="2741" class="Bound">x</a> <a id="2743" href="Algebra.Construct.NaturalChoice.Base.html#1030" class="Function Operator">⊓</a> <a id="2745" class="Symbol">(</a><a id="2746" class="Bound">x</a> <a id="2748" href="Algebra.Construct.NaturalChoice.Base.html#1231" class="Field Operator">⊔</a> <a id="2750" class="Bound">y</a><a id="2751" class="Symbol">)</a> <a id="2754" href="Relation.Binary.Reasoning.Base.Double.html#2730" class="Function">≈⟨</a> <a id="2757" href="Algebra.Construct.NaturalChoice.MinOp.html#1739" class="Function">⊓-congˡ</a> <a id="2765" class="Bound">x</a> <a id="2767" class="Symbol">(</a><a id="2768" href="Algebra.Construct.NaturalChoice.Base.html#1261" class="Field">x≤y⇒x⊔y≈y</a> <a id="2778" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#2718" class="Bound">x≤y</a><a id="2781" class="Symbol">)</a> <a id="2783" href="Relation.Binary.Reasoning.Base.Double.html#2730" class="Function">⟩</a>
|
||
<a id="2787" class="Bound">x</a> <a id="2789" href="Algebra.Construct.NaturalChoice.Base.html#1030" class="Function Operator">⊓</a> <a id="2791" class="Bound">y</a> <a id="2800" href="Relation.Binary.Reasoning.Base.Double.html#2730" class="Function">≈⟨</a> <a id="2803" href="Algebra.Construct.NaturalChoice.Base.html#1060" class="Function">x≤y⇒x⊓y≈x</a> <a id="2813" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#2718" class="Bound">x≤y</a> <a id="2817" href="Relation.Binary.Reasoning.Base.Double.html#2730" class="Function">⟩</a>
|
||
<a id="2821" class="Bound">x</a> <a id="2834" href="Relation.Binary.Reasoning.Base.Double.html#3656" class="Function Operator">∎</a>
|
||
<a id="2836" class="Symbol">...</a> <a id="2840" class="Symbol">|</a> <a id="2842" href="Data.Sum.Base.html#818" class="InductiveConstructor">inj₂</a> <a id="2847" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#2847" class="Bound">y≤x</a> <a id="2851" class="Symbol">=</a> <a id="2853" href="Relation.Binary.Reasoning.Base.Double.html#2336" class="Function Operator">begin-equality</a>
|
||
<a id="2870" class="Bound">x</a> <a id="2872" href="Algebra.Construct.NaturalChoice.Base.html#1030" class="Function Operator">⊓</a> <a id="2874" class="Symbol">(</a><a id="2875" class="Bound">x</a> <a id="2877" href="Algebra.Construct.NaturalChoice.Base.html#1231" class="Field Operator">⊔</a> <a id="2879" class="Bound">y</a><a id="2880" class="Symbol">)</a> <a id="2883" href="Relation.Binary.Reasoning.Base.Double.html#2730" class="Function">≈⟨</a> <a id="2886" href="Algebra.Construct.NaturalChoice.MinOp.html#1739" class="Function">⊓-congˡ</a> <a id="2894" class="Bound">x</a> <a id="2896" class="Symbol">(</a><a id="2897" href="Algebra.Construct.NaturalChoice.Base.html#1307" class="Field">x≥y⇒x⊔y≈x</a> <a id="2907" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#2847" class="Bound">y≤x</a><a id="2910" class="Symbol">)</a> <a id="2912" href="Relation.Binary.Reasoning.Base.Double.html#2730" class="Function">⟩</a>
|
||
<a id="2916" class="Bound">x</a> <a id="2918" href="Algebra.Construct.NaturalChoice.Base.html#1030" class="Function Operator">⊓</a> <a id="2920" class="Bound">x</a> <a id="2929" href="Relation.Binary.Reasoning.Base.Double.html#2730" class="Function">≈⟨</a> <a id="2932" href="Algebra.Construct.NaturalChoice.MinOp.html#2994" class="Function">⊓-idem</a> <a id="2939" class="Bound">x</a> <a id="2941" href="Relation.Binary.Reasoning.Base.Double.html#2730" class="Function">⟩</a>
|
||
<a id="2945" class="Bound">x</a> <a id="2958" href="Relation.Binary.Reasoning.Base.Double.html#3656" class="Function Operator">∎</a>
|
||
|
||
<a id="⊔-absorbs-⊓"></a><a id="2961" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#2961" class="Function">⊔-absorbs-⊓</a> <a id="2973" class="Symbol">:</a> <a id="2975" href="Algebra.Construct.NaturalChoice.Base.html#1231" class="Field Operator">_⊔_</a> <a id="2979" href="Algebra.Definitions.html#2868" class="Function Operator">Absorbs</a> <a id="2987" href="Algebra.Construct.NaturalChoice.Base.html#1030" class="Function Operator">_⊓_</a>
|
||
<a id="2991" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#2961" class="Function">⊔-absorbs-⊓</a> <a id="3003" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#3003" class="Bound">x</a> <a id="3005" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#3005" class="Bound">y</a> <a id="3007" class="Keyword">with</a> <a id="3012" href="Relation.Binary.Structures.html#2844" class="Function">total</a> <a id="3018" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#3003" class="Bound">x</a> <a id="3020" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#3005" class="Bound">y</a>
|
||
<a id="3022" class="Symbol">...</a> <a id="3026" class="Symbol">|</a> <a id="3028" href="Data.Sum.Base.html#793" class="InductiveConstructor">inj₁</a> <a id="3033" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#3033" class="Bound">x≤y</a> <a id="3037" class="Symbol">=</a> <a id="3039" href="Relation.Binary.Reasoning.Base.Double.html#2336" class="Function Operator">begin-equality</a>
|
||
<a id="3056" class="Bound">x</a> <a id="3058" href="Algebra.Construct.NaturalChoice.Base.html#1231" class="Field Operator">⊔</a> <a id="3060" class="Symbol">(</a><a id="3061" class="Bound">x</a> <a id="3063" href="Algebra.Construct.NaturalChoice.Base.html#1030" class="Function Operator">⊓</a> <a id="3065" class="Bound">y</a><a id="3066" class="Symbol">)</a> <a id="3069" href="Relation.Binary.Reasoning.Base.Double.html#2730" class="Function">≈⟨</a> <a id="3072" href="Algebra.Construct.NaturalChoice.MaxOp.html#995" class="Function">⊔-congˡ</a> <a id="3080" class="Bound">x</a> <a id="3082" class="Symbol">(</a><a id="3083" href="Algebra.Construct.NaturalChoice.Base.html#1060" class="Function">x≤y⇒x⊓y≈x</a> <a id="3093" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#3033" class="Bound">x≤y</a><a id="3096" class="Symbol">)</a> <a id="3098" href="Relation.Binary.Reasoning.Base.Double.html#2730" class="Function">⟩</a>
|
||
<a id="3102" class="Bound">x</a> <a id="3104" href="Algebra.Construct.NaturalChoice.Base.html#1231" class="Field Operator">⊔</a> <a id="3106" class="Bound">x</a> <a id="3115" href="Relation.Binary.Reasoning.Base.Double.html#2730" class="Function">≈⟨</a> <a id="3118" href="Algebra.Construct.NaturalChoice.MaxOp.html#1024" class="Function">⊔-idem</a> <a id="3125" class="Bound">x</a> <a id="3127" href="Relation.Binary.Reasoning.Base.Double.html#2730" class="Function">⟩</a>
|
||
<a id="3131" class="Bound">x</a> <a id="3144" href="Relation.Binary.Reasoning.Base.Double.html#3656" class="Function Operator">∎</a>
|
||
<a id="3146" class="Symbol">...</a> <a id="3150" class="Symbol">|</a> <a id="3152" href="Data.Sum.Base.html#818" class="InductiveConstructor">inj₂</a> <a id="3157" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#3157" class="Bound">y≤x</a> <a id="3161" class="Symbol">=</a> <a id="3163" href="Relation.Binary.Reasoning.Base.Double.html#2336" class="Function Operator">begin-equality</a>
|
||
<a id="3180" class="Bound">x</a> <a id="3182" href="Algebra.Construct.NaturalChoice.Base.html#1231" class="Field Operator">⊔</a> <a id="3184" class="Symbol">(</a><a id="3185" class="Bound">x</a> <a id="3187" href="Algebra.Construct.NaturalChoice.Base.html#1030" class="Function Operator">⊓</a> <a id="3189" class="Bound">y</a><a id="3190" class="Symbol">)</a> <a id="3193" href="Relation.Binary.Reasoning.Base.Double.html#2730" class="Function">≈⟨</a> <a id="3196" href="Algebra.Construct.NaturalChoice.MaxOp.html#995" class="Function">⊔-congˡ</a> <a id="3204" class="Bound">x</a> <a id="3206" class="Symbol">(</a><a id="3207" href="Algebra.Construct.NaturalChoice.Base.html#1106" class="Function">x≥y⇒x⊓y≈y</a> <a id="3217" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#3157" class="Bound">y≤x</a><a id="3220" class="Symbol">)</a> <a id="3222" href="Relation.Binary.Reasoning.Base.Double.html#2730" class="Function">⟩</a>
|
||
<a id="3226" class="Bound">x</a> <a id="3228" href="Algebra.Construct.NaturalChoice.Base.html#1231" class="Field Operator">⊔</a> <a id="3230" class="Bound">y</a> <a id="3239" href="Relation.Binary.Reasoning.Base.Double.html#2730" class="Function">≈⟨</a> <a id="3242" href="Algebra.Construct.NaturalChoice.Base.html#1307" class="Field">x≥y⇒x⊔y≈x</a> <a id="3252" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#3157" class="Bound">y≤x</a> <a id="3256" href="Relation.Binary.Reasoning.Base.Double.html#2730" class="Function">⟩</a>
|
||
<a id="3260" class="Bound">x</a> <a id="3273" href="Relation.Binary.Reasoning.Base.Double.html#3656" class="Function Operator">∎</a>
|
||
|
||
<a id="⊔-⊓-absorptive"></a><a id="3276" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#3276" class="Function">⊔-⊓-absorptive</a> <a id="3291" class="Symbol">:</a> <a id="3293" href="Algebra.Definitions.html#2947" class="Function">Absorptive</a> <a id="3304" href="Algebra.Construct.NaturalChoice.Base.html#1231" class="Field Operator">_⊔_</a> <a id="3308" href="Algebra.Construct.NaturalChoice.Base.html#1030" class="Function Operator">_⊓_</a>
|
||
<a id="3312" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#3276" class="Function">⊔-⊓-absorptive</a> <a id="3327" class="Symbol">=</a> <a id="3329" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#2961" class="Function">⊔-absorbs-⊓</a> <a id="3341" href="Agda.Builtin.Sigma.html#218" class="InductiveConstructor Operator">,</a> <a id="3343" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#2646" class="Function">⊓-absorbs-⊔</a>
|
||
|
||
<a id="⊓-⊔-absorptive"></a><a id="3356" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#3356" class="Function">⊓-⊔-absorptive</a> <a id="3371" class="Symbol">:</a> <a id="3373" href="Algebra.Definitions.html#2947" class="Function">Absorptive</a> <a id="3384" href="Algebra.Construct.NaturalChoice.Base.html#1030" class="Function Operator">_⊓_</a> <a id="3388" href="Algebra.Construct.NaturalChoice.Base.html#1231" class="Field Operator">_⊔_</a>
|
||
<a id="3392" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#3356" class="Function">⊓-⊔-absorptive</a> <a id="3407" class="Symbol">=</a> <a id="3409" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#2646" class="Function">⊓-absorbs-⊔</a> <a id="3421" href="Agda.Builtin.Sigma.html#218" class="InductiveConstructor Operator">,</a> <a id="3423" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#2961" class="Function">⊔-absorbs-⊓</a>
|
||
|
||
<a id="⊔-⊓-isLattice"></a><a id="3436" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#3436" class="Function">⊔-⊓-isLattice</a> <a id="3450" class="Symbol">:</a> <a id="3452" href="Algebra.Structures.html#6130" class="Record">IsLattice</a> <a id="3462" href="Algebra.Construct.NaturalChoice.Base.html#1231" class="Field Operator">_⊔_</a> <a id="3466" href="Algebra.Construct.NaturalChoice.Base.html#1030" class="Function Operator">_⊓_</a>
|
||
<a id="3470" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#3436" class="Function">⊔-⊓-isLattice</a> <a id="3484" class="Symbol">=</a> <a id="3486" class="Keyword">record</a>
|
||
<a id="3495" class="Symbol">{</a> <a id="3497" href="Algebra.Structures.html#6186" class="Field">isEquivalence</a> <a id="3511" class="Symbol">=</a> <a id="3513" href="Relation.Binary.Structures.html#2237" class="Function">isEquivalence</a>
|
||
<a id="3529" class="Symbol">;</a> <a id="3531" href="Algebra.Structures.html#6224" class="Field">∨-comm</a> <a id="3545" class="Symbol">=</a> <a id="3547" href="Algebra.Construct.NaturalChoice.MaxOp.html#1108" class="Function">⊔-comm</a>
|
||
<a id="3556" class="Symbol">;</a> <a id="3558" href="Algebra.Structures.html#6258" class="Field">∨-assoc</a> <a id="3572" class="Symbol">=</a> <a id="3574" href="Algebra.Construct.NaturalChoice.MaxOp.html#1079" class="Function">⊔-assoc</a>
|
||
<a id="3584" class="Symbol">;</a> <a id="3586" href="Algebra.Structures.html#6292" class="Field">∨-cong</a> <a id="3600" class="Symbol">=</a> <a id="3602" href="Algebra.Construct.NaturalChoice.MaxOp.html#938" class="Function">⊔-cong</a>
|
||
<a id="3611" class="Symbol">;</a> <a id="3613" href="Algebra.Structures.html#6325" class="Field">∧-comm</a> <a id="3627" class="Symbol">=</a> <a id="3629" href="Algebra.Construct.NaturalChoice.MinOp.html#1553" class="Function">⊓-comm</a>
|
||
<a id="3638" class="Symbol">;</a> <a id="3640" href="Algebra.Structures.html#6359" class="Field">∧-assoc</a> <a id="3654" class="Symbol">=</a> <a id="3656" href="Algebra.Construct.NaturalChoice.MinOp.html#2355" class="Function">⊓-assoc</a>
|
||
<a id="3666" class="Symbol">;</a> <a id="3668" href="Algebra.Structures.html#6393" class="Field">∧-cong</a> <a id="3682" class="Symbol">=</a> <a id="3684" href="Algebra.Construct.NaturalChoice.MinOp.html#2242" class="Function">⊓-cong</a>
|
||
<a id="3693" class="Symbol">;</a> <a id="3695" href="Algebra.Structures.html#6426" class="Field">absorptive</a> <a id="3709" class="Symbol">=</a> <a id="3711" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#3276" class="Function">⊔-⊓-absorptive</a>
|
||
<a id="3728" class="Symbol">}</a>
|
||
|
||
<a id="⊓-⊔-isLattice"></a><a id="3731" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#3731" class="Function">⊓-⊔-isLattice</a> <a id="3745" class="Symbol">:</a> <a id="3747" href="Algebra.Structures.html#6130" class="Record">IsLattice</a> <a id="3757" href="Algebra.Construct.NaturalChoice.Base.html#1030" class="Function Operator">_⊓_</a> <a id="3761" href="Algebra.Construct.NaturalChoice.Base.html#1231" class="Field Operator">_⊔_</a>
|
||
<a id="3765" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#3731" class="Function">⊓-⊔-isLattice</a> <a id="3779" class="Symbol">=</a> <a id="3781" class="Keyword">record</a>
|
||
<a id="3790" class="Symbol">{</a> <a id="3792" href="Algebra.Structures.html#6186" class="Field">isEquivalence</a> <a id="3806" class="Symbol">=</a> <a id="3808" href="Relation.Binary.Structures.html#2237" class="Function">isEquivalence</a>
|
||
<a id="3824" class="Symbol">;</a> <a id="3826" href="Algebra.Structures.html#6224" class="Field">∨-comm</a> <a id="3840" class="Symbol">=</a> <a id="3842" href="Algebra.Construct.NaturalChoice.MinOp.html#1553" class="Function">⊓-comm</a>
|
||
<a id="3851" class="Symbol">;</a> <a id="3853" href="Algebra.Structures.html#6258" class="Field">∨-assoc</a> <a id="3867" class="Symbol">=</a> <a id="3869" href="Algebra.Construct.NaturalChoice.MinOp.html#2355" class="Function">⊓-assoc</a>
|
||
<a id="3879" class="Symbol">;</a> <a id="3881" href="Algebra.Structures.html#6292" class="Field">∨-cong</a> <a id="3895" class="Symbol">=</a> <a id="3897" href="Algebra.Construct.NaturalChoice.MinOp.html#2242" class="Function">⊓-cong</a>
|
||
<a id="3906" class="Symbol">;</a> <a id="3908" href="Algebra.Structures.html#6325" class="Field">∧-comm</a> <a id="3922" class="Symbol">=</a> <a id="3924" href="Algebra.Construct.NaturalChoice.MaxOp.html#1108" class="Function">⊔-comm</a>
|
||
<a id="3933" class="Symbol">;</a> <a id="3935" href="Algebra.Structures.html#6359" class="Field">∧-assoc</a> <a id="3949" class="Symbol">=</a> <a id="3951" href="Algebra.Construct.NaturalChoice.MaxOp.html#1079" class="Function">⊔-assoc</a>
|
||
<a id="3961" class="Symbol">;</a> <a id="3963" href="Algebra.Structures.html#6393" class="Field">∧-cong</a> <a id="3977" class="Symbol">=</a> <a id="3979" href="Algebra.Construct.NaturalChoice.MaxOp.html#938" class="Function">⊔-cong</a>
|
||
<a id="3988" class="Symbol">;</a> <a id="3990" href="Algebra.Structures.html#6426" class="Field">absorptive</a> <a id="4004" class="Symbol">=</a> <a id="4006" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#3356" class="Function">⊓-⊔-absorptive</a>
|
||
<a id="4023" class="Symbol">}</a>
|
||
|
||
<a id="⊓-⊔-isDistributiveLattice"></a><a id="4026" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#4026" class="Function">⊓-⊔-isDistributiveLattice</a> <a id="4052" class="Symbol">:</a> <a id="4054" href="Algebra.Structures.html#6879" class="Record">IsDistributiveLattice</a> <a id="4076" href="Algebra.Construct.NaturalChoice.Base.html#1030" class="Function Operator">_⊓_</a> <a id="4080" href="Algebra.Construct.NaturalChoice.Base.html#1231" class="Field Operator">_⊔_</a>
|
||
<a id="4084" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#4026" class="Function">⊓-⊔-isDistributiveLattice</a> <a id="4110" class="Symbol">=</a> <a id="4112" class="Keyword">record</a>
|
||
<a id="4121" class="Symbol">{</a> <a id="4123" href="Algebra.Structures.html#6947" class="Field">isLattice</a> <a id="4136" class="Symbol">=</a> <a id="4138" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#3731" class="Function">⊓-⊔-isLattice</a>
|
||
<a id="4154" class="Symbol">;</a> <a id="4156" href="Algebra.Structures.html#6980" class="Field">∨-distribʳ-∧</a> <a id="4169" class="Symbol">=</a> <a id="4171" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#1885" class="Function">⊓-distribʳ-⊔</a>
|
||
<a id="4186" class="Symbol">}</a>
|
||
|
||
<a id="⊔-⊓-isDistributiveLattice"></a><a id="4189" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#4189" class="Function">⊔-⊓-isDistributiveLattice</a> <a id="4215" class="Symbol">:</a> <a id="4217" href="Algebra.Structures.html#6879" class="Record">IsDistributiveLattice</a> <a id="4239" href="Algebra.Construct.NaturalChoice.Base.html#1231" class="Field Operator">_⊔_</a> <a id="4243" href="Algebra.Construct.NaturalChoice.Base.html#1030" class="Function Operator">_⊓_</a>
|
||
<a id="4247" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#4189" class="Function">⊔-⊓-isDistributiveLattice</a> <a id="4273" class="Symbol">=</a> <a id="4275" class="Keyword">record</a>
|
||
<a id="4284" class="Symbol">{</a> <a id="4286" href="Algebra.Structures.html#6947" class="Field">isLattice</a> <a id="4299" class="Symbol">=</a> <a id="4301" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#3436" class="Function">⊔-⊓-isLattice</a>
|
||
<a id="4317" class="Symbol">;</a> <a id="4319" href="Algebra.Structures.html#6980" class="Field">∨-distribʳ-∧</a> <a id="4332" class="Symbol">=</a> <a id="4334" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#2463" class="Function">⊔-distribʳ-⊓</a>
|
||
<a id="4349" class="Symbol">}</a>
|
||
|
||
<a id="⊔-⊓-lattice"></a><a id="4352" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#4352" class="Function">⊔-⊓-lattice</a> <a id="4364" class="Symbol">:</a> <a id="4366" href="Algebra.Bundles.html#9170" class="Record">Lattice</a> <a id="4374" class="Symbol">_</a> <a id="4376" class="Symbol">_</a>
|
||
<a id="4378" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#4352" class="Function">⊔-⊓-lattice</a> <a id="4390" class="Symbol">=</a> <a id="4392" class="Keyword">record</a>
|
||
<a id="4401" class="Symbol">{</a> <a id="4403" href="Algebra.Bundles.html#9373" class="Field">isLattice</a> <a id="4413" class="Symbol">=</a> <a id="4415" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#3436" class="Function">⊔-⊓-isLattice</a>
|
||
<a id="4431" class="Symbol">}</a>
|
||
|
||
<a id="⊓-⊔-lattice"></a><a id="4434" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#4434" class="Function">⊓-⊔-lattice</a> <a id="4446" class="Symbol">:</a> <a id="4448" href="Algebra.Bundles.html#9170" class="Record">Lattice</a> <a id="4456" class="Symbol">_</a> <a id="4458" class="Symbol">_</a>
|
||
<a id="4460" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#4434" class="Function">⊓-⊔-lattice</a> <a id="4472" class="Symbol">=</a> <a id="4474" class="Keyword">record</a>
|
||
<a id="4483" class="Symbol">{</a> <a id="4485" href="Algebra.Bundles.html#9373" class="Field">isLattice</a> <a id="4495" class="Symbol">=</a> <a id="4497" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#3731" class="Function">⊓-⊔-isLattice</a>
|
||
<a id="4513" class="Symbol">}</a>
|
||
|
||
<a id="⊔-⊓-distributiveLattice"></a><a id="4516" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#4516" class="Function">⊔-⊓-distributiveLattice</a> <a id="4540" class="Symbol">:</a> <a id="4542" href="Algebra.Bundles.html#9746" class="Record">DistributiveLattice</a> <a id="4562" class="Symbol">_</a> <a id="4564" class="Symbol">_</a>
|
||
<a id="4566" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#4516" class="Function">⊔-⊓-distributiveLattice</a> <a id="4590" class="Symbol">=</a> <a id="4592" class="Keyword">record</a>
|
||
<a id="4601" class="Symbol">{</a> <a id="4603" href="Algebra.Bundles.html#10009" class="Field">isDistributiveLattice</a> <a id="4625" class="Symbol">=</a> <a id="4627" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#4189" class="Function">⊔-⊓-isDistributiveLattice</a>
|
||
<a id="4655" class="Symbol">}</a>
|
||
|
||
<a id="⊓-⊔-distributiveLattice"></a><a id="4658" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#4658" class="Function">⊓-⊔-distributiveLattice</a> <a id="4682" class="Symbol">:</a> <a id="4684" href="Algebra.Bundles.html#9746" class="Record">DistributiveLattice</a> <a id="4704" class="Symbol">_</a> <a id="4706" class="Symbol">_</a>
|
||
<a id="4708" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#4658" class="Function">⊓-⊔-distributiveLattice</a> <a id="4732" class="Symbol">=</a> <a id="4734" class="Keyword">record</a>
|
||
<a id="4743" class="Symbol">{</a> <a id="4745" href="Algebra.Bundles.html#10009" class="Field">isDistributiveLattice</a> <a id="4767" class="Symbol">=</a> <a id="4769" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#4026" class="Function">⊓-⊔-isDistributiveLattice</a>
|
||
<a id="4797" class="Symbol">}</a>
|
||
|
||
<a id="4800" class="Comment">------------------------------------------------------------------------</a>
|
||
<a id="4873" class="Comment">-- Other joint properties</a>
|
||
|
||
<a id="4900" class="Keyword">private</a> <a id="_≥_"></a><a id="4908" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#4908" class="Function Operator">_≥_</a> <a id="4912" class="Symbol">=</a> <a id="4914" href="Function.Base.html#1563" class="Function">flip</a> <a id="4919" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#824" class="Function Operator">_≤_</a>
|
||
|
||
<a id="antimono-≤-distrib-⊓"></a><a id="4924" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#4924" class="Function">antimono-≤-distrib-⊓</a> <a id="4945" class="Symbol">:</a> <a id="4947" class="Symbol">∀</a> <a id="4949" class="Symbol">{</a><a id="4950" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#4950" class="Bound">f</a><a id="4951" class="Symbol">}</a> <a id="4953" class="Symbol">→</a> <a id="4955" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#4950" class="Bound">f</a> <a id="4957" href="Relation.Binary.Core.html#1572" class="Function Operator">Preserves</a> <a id="4967" href="Relation.Binary.Bundles.html#2496" class="Function Operator">_≈_</a> <a id="4971" href="Relation.Binary.Core.html#1572" class="Function Operator">⟶</a> <a id="4973" href="Relation.Binary.Bundles.html#2496" class="Function Operator">_≈_</a> <a id="4977" class="Symbol">→</a> <a id="4979" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#4950" class="Bound">f</a> <a id="4981" href="Relation.Binary.Core.html#1572" class="Function Operator">Preserves</a> <a id="4991" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#824" class="Function Operator">_≤_</a> <a id="4995" href="Relation.Binary.Core.html#1572" class="Function Operator">⟶</a> <a id="4997" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#4908" class="Function Operator">_≥_</a> <a id="5001" class="Symbol">→</a>
|
||
<a id="5026" class="Symbol">∀</a> <a id="5028" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#5028" class="Bound">x</a> <a id="5030" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#5030" class="Bound">y</a> <a id="5032" class="Symbol">→</a> <a id="5034" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#4950" class="Bound">f</a> <a id="5036" class="Symbol">(</a><a id="5037" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#5028" class="Bound">x</a> <a id="5039" href="Algebra.Construct.NaturalChoice.Base.html#1030" class="Function Operator">⊓</a> <a id="5041" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#5030" class="Bound">y</a><a id="5042" class="Symbol">)</a> <a id="5044" href="Relation.Binary.Bundles.html#2496" class="Function Operator">≈</a> <a id="5046" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#4950" class="Bound">f</a> <a id="5048" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#5028" class="Bound">x</a> <a id="5050" href="Algebra.Construct.NaturalChoice.Base.html#1231" class="Field Operator">⊔</a> <a id="5052" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#4950" class="Bound">f</a> <a id="5054" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#5030" class="Bound">y</a>
|
||
<a id="5056" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#4924" class="Function">antimono-≤-distrib-⊓</a> <a id="5077" class="Symbol">{</a><a id="5078" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#5078" class="Bound">f</a><a id="5079" class="Symbol">}</a> <a id="5081" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#5081" class="Bound">cong</a> <a id="5086" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#5086" class="Bound">antimono</a> <a id="5095" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#5095" class="Bound">x</a> <a id="5097" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#5097" class="Bound">y</a> <a id="5099" class="Keyword">with</a> <a id="5104" href="Relation.Binary.Structures.html#2844" class="Function">total</a> <a id="5110" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#5095" class="Bound">x</a> <a id="5112" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#5097" class="Bound">y</a>
|
||
<a id="5114" class="Symbol">...</a> <a id="5118" class="Symbol">|</a> <a id="5120" href="Data.Sum.Base.html#793" class="InductiveConstructor">inj₁</a> <a id="5125" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#5125" class="Bound">x≤y</a> <a id="5129" class="Symbol">=</a> <a id="5131" href="Relation.Binary.Reasoning.Base.Double.html#2336" class="Function Operator">begin-equality</a>
|
||
<a id="5148" class="Bound">f</a> <a id="5150" class="Symbol">(</a><a id="5151" class="Bound">x</a> <a id="5153" href="Algebra.Construct.NaturalChoice.Base.html#1030" class="Function Operator">⊓</a> <a id="5155" class="Bound">y</a><a id="5156" class="Symbol">)</a> <a id="5159" href="Relation.Binary.Reasoning.Base.Double.html#2730" class="Function">≈⟨</a> <a id="5162" class="Bound">cong</a> <a id="5167" class="Symbol">(</a><a id="5168" href="Algebra.Construct.NaturalChoice.Base.html#1060" class="Function">x≤y⇒x⊓y≈x</a> <a id="5178" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#5125" class="Bound">x≤y</a><a id="5181" class="Symbol">)</a> <a id="5183" href="Relation.Binary.Reasoning.Base.Double.html#2730" class="Function">⟩</a>
|
||
<a id="5187" class="Bound">f</a> <a id="5189" class="Bound">x</a> <a id="5198" href="Relation.Binary.Reasoning.Base.Double.html#2972" class="Function">≈˘⟨</a> <a id="5202" href="Algebra.Construct.NaturalChoice.Base.html#1307" class="Field">x≥y⇒x⊔y≈x</a> <a id="5212" class="Symbol">(</a><a id="5213" class="Bound">antimono</a> <a id="5222" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#5125" class="Bound">x≤y</a><a id="5225" class="Symbol">)</a> <a id="5227" href="Relation.Binary.Reasoning.Base.Double.html#2972" class="Function">⟩</a>
|
||
<a id="5231" class="Bound">f</a> <a id="5233" class="Bound">x</a> <a id="5235" href="Algebra.Construct.NaturalChoice.Base.html#1231" class="Field Operator">⊔</a> <a id="5237" class="Bound">f</a> <a id="5239" class="Bound">y</a> <a id="5242" href="Relation.Binary.Reasoning.Base.Double.html#3656" class="Function Operator">∎</a>
|
||
<a id="5244" class="Symbol">...</a> <a id="5248" class="Symbol">|</a> <a id="5250" href="Data.Sum.Base.html#818" class="InductiveConstructor">inj₂</a> <a id="5255" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#5255" class="Bound">y≤x</a> <a id="5259" class="Symbol">=</a> <a id="5261" href="Relation.Binary.Reasoning.Base.Double.html#2336" class="Function Operator">begin-equality</a>
|
||
<a id="5278" class="Bound">f</a> <a id="5280" class="Symbol">(</a><a id="5281" class="Bound">x</a> <a id="5283" href="Algebra.Construct.NaturalChoice.Base.html#1030" class="Function Operator">⊓</a> <a id="5285" class="Bound">y</a><a id="5286" class="Symbol">)</a> <a id="5289" href="Relation.Binary.Reasoning.Base.Double.html#2730" class="Function">≈⟨</a> <a id="5292" class="Bound">cong</a> <a id="5297" class="Symbol">(</a><a id="5298" href="Algebra.Construct.NaturalChoice.Base.html#1106" class="Function">x≥y⇒x⊓y≈y</a> <a id="5308" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#5255" class="Bound">y≤x</a><a id="5311" class="Symbol">)</a> <a id="5313" href="Relation.Binary.Reasoning.Base.Double.html#2730" class="Function">⟩</a>
|
||
<a id="5317" class="Bound">f</a> <a id="5319" class="Bound">y</a> <a id="5328" href="Relation.Binary.Reasoning.Base.Double.html#2972" class="Function">≈˘⟨</a> <a id="5332" href="Algebra.Construct.NaturalChoice.Base.html#1261" class="Field">x≤y⇒x⊔y≈y</a> <a id="5342" class="Symbol">(</a><a id="5343" class="Bound">antimono</a> <a id="5352" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#5255" class="Bound">y≤x</a><a id="5355" class="Symbol">)</a> <a id="5357" href="Relation.Binary.Reasoning.Base.Double.html#2972" class="Function">⟩</a>
|
||
<a id="5361" class="Bound">f</a> <a id="5363" class="Bound">x</a> <a id="5365" href="Algebra.Construct.NaturalChoice.Base.html#1231" class="Field Operator">⊔</a> <a id="5367" class="Bound">f</a> <a id="5369" class="Bound">y</a> <a id="5372" href="Relation.Binary.Reasoning.Base.Double.html#3656" class="Function Operator">∎</a>
|
||
|
||
<a id="antimono-≤-distrib-⊔"></a><a id="5375" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#5375" class="Function">antimono-≤-distrib-⊔</a> <a id="5396" class="Symbol">:</a> <a id="5398" class="Symbol">∀</a> <a id="5400" class="Symbol">{</a><a id="5401" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#5401" class="Bound">f</a><a id="5402" class="Symbol">}</a> <a id="5404" class="Symbol">→</a> <a id="5406" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#5401" class="Bound">f</a> <a id="5408" href="Relation.Binary.Core.html#1572" class="Function Operator">Preserves</a> <a id="5418" href="Relation.Binary.Bundles.html#2496" class="Function Operator">_≈_</a> <a id="5422" href="Relation.Binary.Core.html#1572" class="Function Operator">⟶</a> <a id="5424" href="Relation.Binary.Bundles.html#2496" class="Function Operator">_≈_</a> <a id="5428" class="Symbol">→</a> <a id="5430" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#5401" class="Bound">f</a> <a id="5432" href="Relation.Binary.Core.html#1572" class="Function Operator">Preserves</a> <a id="5442" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#824" class="Function Operator">_≤_</a> <a id="5446" href="Relation.Binary.Core.html#1572" class="Function Operator">⟶</a> <a id="5448" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#4908" class="Function Operator">_≥_</a> <a id="5452" class="Symbol">→</a>
|
||
<a id="5477" class="Symbol">∀</a> <a id="5479" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#5479" class="Bound">x</a> <a id="5481" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#5481" class="Bound">y</a> <a id="5483" class="Symbol">→</a> <a id="5485" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#5401" class="Bound">f</a> <a id="5487" class="Symbol">(</a><a id="5488" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#5479" class="Bound">x</a> <a id="5490" href="Algebra.Construct.NaturalChoice.Base.html#1231" class="Field Operator">⊔</a> <a id="5492" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#5481" class="Bound">y</a><a id="5493" class="Symbol">)</a> <a id="5495" href="Relation.Binary.Bundles.html#2496" class="Function Operator">≈</a> <a id="5497" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#5401" class="Bound">f</a> <a id="5499" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#5479" class="Bound">x</a> <a id="5501" href="Algebra.Construct.NaturalChoice.Base.html#1030" class="Function Operator">⊓</a> <a id="5503" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#5401" class="Bound">f</a> <a id="5505" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#5481" class="Bound">y</a>
|
||
<a id="5507" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#5375" class="Function">antimono-≤-distrib-⊔</a> <a id="5528" class="Symbol">{</a><a id="5529" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#5529" class="Bound">f</a><a id="5530" class="Symbol">}</a> <a id="5532" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#5532" class="Bound">cong</a> <a id="5537" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#5537" class="Bound">antimono</a> <a id="5546" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#5546" class="Bound">x</a> <a id="5548" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#5548" class="Bound">y</a> <a id="5550" class="Keyword">with</a> <a id="5555" href="Relation.Binary.Structures.html#2844" class="Function">total</a> <a id="5561" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#5546" class="Bound">x</a> <a id="5563" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#5548" class="Bound">y</a>
|
||
<a id="5565" class="Symbol">...</a> <a id="5569" class="Symbol">|</a> <a id="5571" href="Data.Sum.Base.html#793" class="InductiveConstructor">inj₁</a> <a id="5576" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#5576" class="Bound">x≤y</a> <a id="5580" class="Symbol">=</a> <a id="5582" href="Relation.Binary.Reasoning.Base.Double.html#2336" class="Function Operator">begin-equality</a>
|
||
<a id="5599" class="Bound">f</a> <a id="5601" class="Symbol">(</a><a id="5602" class="Bound">x</a> <a id="5604" href="Algebra.Construct.NaturalChoice.Base.html#1231" class="Field Operator">⊔</a> <a id="5606" class="Bound">y</a><a id="5607" class="Symbol">)</a> <a id="5610" href="Relation.Binary.Reasoning.Base.Double.html#2730" class="Function">≈⟨</a> <a id="5613" class="Bound">cong</a> <a id="5618" class="Symbol">(</a><a id="5619" href="Algebra.Construct.NaturalChoice.Base.html#1261" class="Field">x≤y⇒x⊔y≈y</a> <a id="5629" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#5576" class="Bound">x≤y</a><a id="5632" class="Symbol">)</a> <a id="5634" href="Relation.Binary.Reasoning.Base.Double.html#2730" class="Function">⟩</a>
|
||
<a id="5638" class="Bound">f</a> <a id="5640" class="Bound">y</a> <a id="5649" href="Relation.Binary.Reasoning.Base.Double.html#2972" class="Function">≈˘⟨</a> <a id="5653" href="Algebra.Construct.NaturalChoice.Base.html#1106" class="Function">x≥y⇒x⊓y≈y</a> <a id="5663" class="Symbol">(</a><a id="5664" class="Bound">antimono</a> <a id="5673" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#5576" class="Bound">x≤y</a><a id="5676" class="Symbol">)</a> <a id="5678" href="Relation.Binary.Reasoning.Base.Double.html#2972" class="Function">⟩</a>
|
||
<a id="5682" class="Bound">f</a> <a id="5684" class="Bound">x</a> <a id="5686" href="Algebra.Construct.NaturalChoice.Base.html#1030" class="Function Operator">⊓</a> <a id="5688" class="Bound">f</a> <a id="5690" class="Bound">y</a> <a id="5693" href="Relation.Binary.Reasoning.Base.Double.html#3656" class="Function Operator">∎</a>
|
||
<a id="5695" class="Symbol">...</a> <a id="5699" class="Symbol">|</a> <a id="5701" href="Data.Sum.Base.html#818" class="InductiveConstructor">inj₂</a> <a id="5706" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#5706" class="Bound">y≤x</a> <a id="5710" class="Symbol">=</a> <a id="5712" href="Relation.Binary.Reasoning.Base.Double.html#2336" class="Function Operator">begin-equality</a>
|
||
<a id="5729" class="Bound">f</a> <a id="5731" class="Symbol">(</a><a id="5732" class="Bound">x</a> <a id="5734" href="Algebra.Construct.NaturalChoice.Base.html#1231" class="Field Operator">⊔</a> <a id="5736" class="Bound">y</a><a id="5737" class="Symbol">)</a> <a id="5740" href="Relation.Binary.Reasoning.Base.Double.html#2730" class="Function">≈⟨</a> <a id="5743" class="Bound">cong</a> <a id="5748" class="Symbol">(</a><a id="5749" href="Algebra.Construct.NaturalChoice.Base.html#1307" class="Field">x≥y⇒x⊔y≈x</a> <a id="5759" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#5706" class="Bound">y≤x</a><a id="5762" class="Symbol">)</a> <a id="5764" href="Relation.Binary.Reasoning.Base.Double.html#2730" class="Function">⟩</a>
|
||
<a id="5768" class="Bound">f</a> <a id="5770" class="Bound">x</a> <a id="5779" href="Relation.Binary.Reasoning.Base.Double.html#2972" class="Function">≈˘⟨</a> <a id="5783" href="Algebra.Construct.NaturalChoice.Base.html#1060" class="Function">x≤y⇒x⊓y≈x</a> <a id="5793" class="Symbol">(</a><a id="5794" class="Bound">antimono</a> <a id="5803" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#5706" class="Bound">y≤x</a><a id="5806" class="Symbol">)</a> <a id="5808" href="Relation.Binary.Reasoning.Base.Double.html#2972" class="Function">⟩</a>
|
||
<a id="5812" class="Bound">f</a> <a id="5814" class="Bound">x</a> <a id="5816" href="Algebra.Construct.NaturalChoice.Base.html#1030" class="Function Operator">⊓</a> <a id="5818" class="Bound">f</a> <a id="5820" class="Bound">y</a> <a id="5823" href="Relation.Binary.Reasoning.Base.Double.html#3656" class="Function Operator">∎</a>
|
||
|
||
<a id="x⊓y≤x⊔y"></a><a id="5826" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#5826" class="Function">x⊓y≤x⊔y</a> <a id="5834" class="Symbol">:</a> <a id="5836" class="Symbol">∀</a> <a id="5838" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#5838" class="Bound">x</a> <a id="5840" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#5840" class="Bound">y</a> <a id="5842" class="Symbol">→</a> <a id="5844" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#5838" class="Bound">x</a> <a id="5846" href="Algebra.Construct.NaturalChoice.Base.html#1030" class="Function Operator">⊓</a> <a id="5848" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#5840" class="Bound">y</a> <a id="5850" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#824" class="Function Operator">≤</a> <a id="5852" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#5838" class="Bound">x</a> <a id="5854" href="Algebra.Construct.NaturalChoice.Base.html#1231" class="Field Operator">⊔</a> <a id="5856" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#5840" class="Bound">y</a>
|
||
<a id="5858" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#5826" class="Function">x⊓y≤x⊔y</a> <a id="5866" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#5866" class="Bound">x</a> <a id="5868" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#5868" class="Bound">y</a> <a id="5870" class="Symbol">=</a> <a id="5872" href="Relation.Binary.Reasoning.Base.Double.html#2222" class="Function Operator">begin</a>
|
||
<a id="5880" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#5866" class="Bound">x</a> <a id="5882" href="Algebra.Construct.NaturalChoice.Base.html#1030" class="Function Operator">⊓</a> <a id="5884" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#5868" class="Bound">y</a> <a id="5886" href="Relation.Binary.Reasoning.Base.Double.html#2508" class="Function">∼⟨</a> <a id="5889" href="Algebra.Construct.NaturalChoice.MinOp.html#1125" class="Function">x⊓y≤x</a> <a id="5895" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#5866" class="Bound">x</a> <a id="5897" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#5868" class="Bound">y</a> <a id="5899" href="Relation.Binary.Reasoning.Base.Double.html#2508" class="Function">⟩</a>
|
||
<a id="5903" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#5866" class="Bound">x</a> <a id="5909" href="Relation.Binary.Reasoning.Base.Double.html#2508" class="Function">∼⟨</a> <a id="5912" href="Algebra.Construct.NaturalChoice.MaxOp.html#2047" class="Function">x≤x⊔y</a> <a id="5918" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#5866" class="Bound">x</a> <a id="5920" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#5868" class="Bound">y</a> <a id="5922" href="Relation.Binary.Reasoning.Base.Double.html#2508" class="Function">⟩</a>
|
||
<a id="5926" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#5866" class="Bound">x</a> <a id="5928" href="Algebra.Construct.NaturalChoice.Base.html#1231" class="Field Operator">⊔</a> <a id="5930" href="Algebra.Construct.NaturalChoice.MinMaxOp.html#5868" class="Bound">y</a> <a id="5932" href="Relation.Binary.Reasoning.Base.Double.html#3656" class="Function Operator">∎</a>
|
||
</pre></body></html> |