@@ -1098,6 +1098,19 @@ m≥n⇒m⊓n≡n {suc m} {suc n} (s≤s m≤n) = cong suc (m≥n⇒m⊓n≡n m
10981098 ; x≥y⇒x⊔y≈x = m≥n⇒m⊔n≡m
10991099 }
11001100
1101+ ------------------------------------------------------------------------
1102+ -- Equality to their counterparts defined in terms of primitive operations
1103+
1104+ ⊔≡⊔′ : ∀ m n → m ⊔ n ≡ m ⊔′ n
1105+ ⊔≡⊔′ m n with m <ᵇ n in eq
1106+ ... | false = m≥n⇒m⊔n≡m (≮⇒≥ (λ m<n → subst T eq (<⇒<ᵇ m<n)))
1107+ ... | true = m≤n⇒m⊔n≡n (<⇒≤ (<ᵇ⇒< m n (subst T (sym eq) _)))
1108+
1109+ ⊓≡⊓′ : ∀ m n → m ⊓ n ≡ m ⊓′ n
1110+ ⊓≡⊓′ m n with m <ᵇ n in eq
1111+ ... | false = m≥n⇒m⊓n≡n (≮⇒≥ (λ m<n → subst T eq (<⇒<ᵇ m<n)))
1112+ ... | true = m≤n⇒m⊓n≡m (<⇒≤ (<ᵇ⇒< m n (subst T (sym eq) _)))
1113+
11011114------------------------------------------------------------------------
11021115-- Derived properties of _⊓_ and _⊔_
11031116
@@ -1695,6 +1708,11 @@ m≤n⇒∣n-m∣≡n∸m {_} {zero} z≤n = refl
16951708m≤n⇒∣n-m∣≡n∸m {_} {suc m} z≤n = refl
16961709m≤n⇒∣n-m∣≡n∸m {_} {_} (s≤s m≤n) = m≤n⇒∣n-m∣≡n∸m m≤n
16971710
1711+ m≤n⇒∣m-n∣≡n∸m : ∀ {m n} → m ≤ n → ∣ m - n ∣ ≡ n ∸ m
1712+ m≤n⇒∣m-n∣≡n∸m {_} {zero} z≤n = refl
1713+ m≤n⇒∣m-n∣≡n∸m {_} {suc n} z≤n = refl
1714+ m≤n⇒∣m-n∣≡n∸m {_} {_} (s≤s m≤n) = m≤n⇒∣m-n∣≡n∸m m≤n
1715+
16981716∣m-n∣≡m∸n⇒n≤m : ∀ {m n} → ∣ m - n ∣ ≡ m ∸ n → n ≤ m
16991717∣m-n∣≡m∸n⇒n≤m {zero} {zero} eq = z≤n
17001718∣m-n∣≡m∸n⇒n≤m {suc m} {zero} eq = z≤n
@@ -1796,6 +1814,11 @@ m≤∣m-n∣+n m n = subst (m ≤_) (+-comm n _) (m≤n+∣m-n∣ m n)
17961814 where open ≤-Reasoning
17971815∣-∣-triangle (suc x) (suc y) (suc z) = ∣-∣-triangle x y z
17981816
1817+ ∣-∣≡∣-∣′ : ∀ m n → ∣ m - n ∣ ≡ ∣ m - n ∣′
1818+ ∣-∣≡∣-∣′ m n with m <ᵇ n in eq
1819+ ... | false = m≤n⇒∣n-m∣≡n∸m {n} {m} (≮⇒≥ (λ m<n → subst T eq (<⇒<ᵇ m<n)))
1820+ ... | true = m≤n⇒∣m-n∣≡n∸m {m} {n} (<⇒≤ (<ᵇ⇒< m n (subst T (sym eq) _)))
1821+
17991822------------------------------------------------------------------------
18001823-- Metric structures
18011824
0 commit comments