Fix definition of 'less than' to not involve a third variable.

Signed-off-by: Danila Fedorin <danila.fedorin@gmail.com>
This commit is contained in:
2024-02-07 21:04:13 -08:00
parent 9646096c75
commit 512cd22be5
5 changed files with 38 additions and 30 deletions

View File

@@ -19,7 +19,7 @@ record IsSemilattice {a} (A : Set a)
(_⊔_ : A → A → A) : Set a where
_≼_ : A → A → Set a
a ≼ b = Σ A (λ c → (a ⊔ c) ≈ b)
a ≼ b = (a ⊔ b) ≈ b
_≺_ : A → A → Set a
a ≺ b = (a ≼ b) × (¬ a ≈ b)
@@ -34,11 +34,22 @@ record IsSemilattice {a} (A : Set a)
open IsEquivalence ≈-equiv public
open import Relation.Binary.Reasoning.Base.Single _≈_ ≈-refl ≈-trans
≼-refl : ∀ (a : A) → a ≼ a
≼-refl a = (a , ⊔-idemp a)
≼-refl a = ⊔-idemp a
≼-cong : ∀ {a₁ a₂ a₃ a₄ : A} → a₁ ≈ a₂ → a₃ ≈ a₄ → a₁ ≼ a₃ → a₂ ≼ a₄
≼-cong a₁≈a₂ a₃≈a₄ (c₁ , a₁⊔c₁≈a₃) = (c₁ , ≈-trans (≈-⊔-cong (≈-sym a₁≈a₂) ≈-refl) (≈-trans a₁⊔c₁≈a₃ a₃≈a₄))
≼-cong {a₁} {a₂} {a₃} {a₄} a₁≈a₂ a₃≈a₄ a₁⊔a₃≈a₃ =
begin
a₂ ⊔ a₄
∼⟨ ≈-⊔-cong (≈-sym a₁≈a₂) (≈-sym a₃≈a₄) ⟩
a₁ ⊔ a₃
∼⟨ a₁⊔a₃≈a₃ ⟩
a₃
∼⟨ a₃≈a₄ ⟩
a₄
∎
≺-cong : ∀ {a₁ a₂ a₃ a₄ : A} → a₁ ≈ a₂ → a₃ ≈ a₄ → a₁ ≺ a₃ → a₂ ≺ a₄
≺-cong a₁≈a₂ a₃≈a₄ (a₁≼a₃ , a₁̷≈a₃) =