@@ -162,6 +162,11 @@ m ≟ n = map′ (≡ᵇ⇒≡ m n) (≡⇒≡ᵇ m n) (T? (m ≡ᵇ n))
162
162
-- Properties of _≤_
163
163
------------------------------------------------------------------------
164
164
165
+ ≰⇒≥ : _≰_ ⇒ _≥_
166
+ ≰⇒≥ {m} {zero} m≰n = z≤n
167
+ ≰⇒≥ {zero} {suc n} m≰n = contradiction z≤n m≰n
168
+ ≰⇒≥ {suc m} {suc n} m≰n = s≤s (≰⇒≥ (m≰n ∘ s≤s))
169
+
165
170
------------------------------------------------------------------------
166
171
-- Relational properties of _≤_
167
172
@@ -180,11 +185,6 @@ m ≟ n = map′ (≡ᵇ⇒≡ m n) (≡⇒≡ᵇ m n) (T? (m ≡ᵇ n))
180
185
≤-trans z≤n _ = z≤n
181
186
≤-trans (s≤s m≤n) (s≤s n≤o) = s≤s (≤-trans m≤n n≤o)
182
187
183
- ≤-total : Total _≤_
184
- ≤-total zero _ = inj₁ z≤n
185
- ≤-total _ zero = inj₂ z≤n
186
- ≤-total (suc m) (suc n) = Sum.map s≤s s≤s (≤-total m n)
187
-
188
188
≤-irrelevant : Irrelevant _≤_
189
189
≤-irrelevant z≤n z≤n = refl
190
190
≤-irrelevant (s≤s m≤n₁) (s≤s m≤n₂) = cong s≤s (≤-irrelevant m≤n₁ m≤n₂)
@@ -203,6 +203,11 @@ m ≤? n = map′ (≤ᵇ⇒≤ m n) ≤⇒≤ᵇ (T? (m ≤ᵇ n))
203
203
_≥?_ : Decidable _≥_
204
204
_≥?_ = flip _≤?_
205
205
206
+ ≤-total : Total _≤_
207
+ ≤-total m n with m ≤? n
208
+ ... | true because m≤n = inj₁ (invert m≤n)
209
+ ... | false because m≰n = inj₂ (≰⇒≥ (invert m≰n))
210
+
206
211
------------------------------------------------------------------------
207
212
-- Structures
208
213
@@ -331,9 +336,6 @@ n≤1⇒n≡0∨n≡1 (s≤s z≤n) = inj₂ refl
331
336
≰⇒> {suc m} {zero} _ = z<s
332
337
≰⇒> {suc m} {suc n} m≰n = s<s (≰⇒> (m≰n ∘ s≤s))
333
338
334
- ≰⇒≥ : _≰_ ⇒ _≥_
335
- ≰⇒≥ = <⇒≤ ∘ ≰⇒>
336
-
337
339
≮⇒≥ : _≮_ ⇒ _≥_
338
340
≮⇒≥ {_} {zero} _ = z≤n
339
341
≮⇒≥ {zero} {suc j} 1≮j+1 = contradiction z<s 1≮j+1
0 commit comments