Remove IsDecidable record in favor of a plain definition

Signed-off-by: Danila Fedorin <danila.fedorin@gmail.com>
This commit is contained in:
2023-09-17 19:43:24 -07:00
parent e3b8cc39f1
commit e4f87175a0
2 changed files with 6 additions and 10 deletions

View File

@@ -5,7 +5,7 @@ module Fixedpoint {a} {A : Set a}
{h : ℕ} {h : ℕ}
{_≈_ : A → A → Set a} {_≈_ : A → A → Set a}
{_⊔_ : A → A → A} {_⊓_ : A → A → A} {_⊔_ : A → A → A} {_⊓_ : A → A → A}
(decA : IsDecidable _≈_) (≈-dec : IsDecidable _≈_)
(flA : IsFiniteHeightLattice A h _≈_ _⊔_ _⊓_) (flA : IsFiniteHeightLattice A h _≈_ _⊔_ _⊓_)
(f : A → A) (f : A → A)
(Monotonicᶠ : Monotonic (IsFiniteHeightLattice._≼_ flA) (Monotonicᶠ : Monotonic (IsFiniteHeightLattice._≼_ flA)
@@ -16,12 +16,11 @@ open import Data.Product using (_×_; Σ; _,_; proj₁; proj₂)
open import Relation.Binary.PropositionalEquality using (_≡_; sym) open import Relation.Binary.PropositionalEquality using (_≡_; sym)
open import Relation.Nullary using (Dec; ¬_; yes; no) open import Relation.Nullary using (Dec; ¬_; yes; no)
open IsFiniteHeightLattice flA
import Chain import Chain
module ChainA = Chain _≈_ ≈-equiv _≺_ ≺-cong module ChainA = Chain _≈_ ≈-equiv _≺_ ≺-cong
open IsDecidable decA using () renaming (R-dec to ≈-dec)
open IsFiniteHeightLattice flA
private private
⊥ᴬ : A ⊥ᴬ : A
⊥ᴬ = proj₁ (proj₁ (proj₁ fixedHeight)) ⊥ᴬ = proj₁ (proj₁ (proj₁ fixedHeight))

View File

@@ -19,9 +19,8 @@ open import Data.Empty using (⊥)
absurd : ∀ {a} {A : Set a} → ⊥ → A absurd : ∀ {a} {A : Set a} → ⊥ → A
absurd () absurd ()
record IsDecidable {a} {A : Set a} (R : A → A → Set a) : Set a where IsDecidable : ∀ {a} {A : Set a} (R : A → A → Set a) → Set a
field IsDecidable {a} {A} R = ∀ (a₁ a₂ : A) → Dec (R a₁ a₂)
R-dec : ∀ (a₁ a₂ : A) → Dec (R a₁ a₂)
record IsSemilattice {a} (A : Set a) record IsSemilattice {a} (A : Set a)
(_≈_ : A → A → Set a) (_≈_ : A → A → Set a)
@@ -361,7 +360,7 @@ module IsLatticeInstances where
module IsFiniteHeightLatticeInstances where module IsFiniteHeightLatticeInstances where
module ForProd {a} {A B : Set a} module ForProd {a} {A B : Set a}
(_≈₁_ : A → A → Set a) (_≈₂_ : B → B → Set a) (_≈₁_ : A → A → Set a) (_≈₂_ : B → B → Set a)
(decA : IsDecidable _≈₁_) (decB : IsDecidable _≈₂_) (≈₁-dec : IsDecidable _≈₁_) (≈₂-dec : IsDecidable _≈₂_)
(_⊔₁_ : A → A → A) (_⊓₁_ : A → A → A) (_⊔₁_ : A → A → A) (_⊓₁_ : A → A → A)
(_⊔₂_ : B → B → B) (_⊓₂_ : B → B → B) (_⊔₂_ : B → B → B) (_⊓₂_ : B → B → B)
(h₁ h₂ : ℕ) (h₁ h₂ : ℕ)
@@ -373,8 +372,6 @@ module IsFiniteHeightLatticeInstances where
open IsLattice ProdLattice.ProdIsLattice using (_≼_; _≺_; ≺-cong; ≈-equiv) open IsLattice ProdLattice.ProdIsLattice using (_≼_; _≺_; ≺-cong; ≈-equiv)
open IsFiniteHeightLattice lA using () renaming (⊔-idemp to ⊔₁-idemp; _≼_ to _≼₁_; ≈-equiv to ≈₁-equiv; ≈-refl to ≈₁-refl; ≈-trans to ≈₁-trans; ≈-sym to ≈₁-sym; _≺_ to _≺₁_; ≺-cong to ≺₁-cong) open IsFiniteHeightLattice lA using () renaming (⊔-idemp to ⊔₁-idemp; _≼_ to _≼₁_; ≈-equiv to ≈₁-equiv; ≈-refl to ≈₁-refl; ≈-trans to ≈₁-trans; ≈-sym to ≈₁-sym; _≺_ to _≺₁_; ≺-cong to ≺₁-cong)
open IsFiniteHeightLattice lB using () renaming (⊔-idemp to ⊔₂-idemp; _≼_ to _≼₂_; ≈-equiv to ≈₂-equiv; ≈-refl to ≈₂-refl; ≈-trans to ≈₂-trans; ≈-sym to ≈₂-sym; _≺_ to _≺₂_; ≺-cong to ≺₂-cong) open IsFiniteHeightLattice lB using () renaming (⊔-idemp to ⊔₂-idemp; _≼_ to _≼₂_; ≈-equiv to ≈₂-equiv; ≈-refl to ≈₂-refl; ≈-trans to ≈₂-trans; ≈-sym to ≈₂-sym; _≺_ to _≺₂_; ≺-cong to ≺₂-cong)
open IsDecidable decA using () renaming (R-dec to ≈₁-dec)
open IsDecidable decB using () renaming (R-dec to ≈₂-dec)
module ChainMapping₁ = ChainMapping (IsFiniteHeightLattice.joinSemilattice lA) (IsLattice.joinSemilattice ProdLattice.ProdIsLattice) module ChainMapping₁ = ChainMapping (IsFiniteHeightLattice.joinSemilattice lA) (IsLattice.joinSemilattice ProdLattice.ProdIsLattice)
module ChainMapping₂ = ChainMapping (IsFiniteHeightLattice.joinSemilattice lB) (IsLattice.joinSemilattice ProdLattice.ProdIsLattice) module ChainMapping₂ = ChainMapping (IsFiniteHeightLattice.joinSemilattice lB) (IsLattice.joinSemilattice ProdLattice.ProdIsLattice)