### Strengthen lemma about IterProd bottom to definition equality

`Signed-off-by: Danila Fedorin <danila.fedorin@gmail.com>`
This commit is contained in:
parent 16fa4cd1d8
commit b78cb91f2a
1 changed files with 10 additions and 3 deletions

#### 13 Lattice/IterProd.agda View File

 `@ -13,6 +13,7 @@ module Lattice.IterProd {a} {A B : Set a}` `open import Agda.Primitive using (lsuc)` `open import Data.Nat using (ℕ; zero; suc; _+_)` `open import Data.Product using (_×_; _,_; proj₁; proj₂)` `open import Relation.Binary.PropositionalEquality as Eq using (_≡_; refl; cong)` `open import Utils using (iterate)` `open import Chain using (Height)` ``` ``` `@ -59,7 +60,7 @@ private` ` fixedHeight : IsLattice.FixedHeight isLattice height` ` ≈-dec : IsDecidable _≈_` ``` ``` ` ⊥-correct : Height.⊥ fixedHeight ≈ ⊥` ` ⊥-correct : Height.⊥ fixedHeight ≡ ⊥` ``` ``` ` record Everything (k : ℕ) : Set (lsuc a) where` ` T = IterProd k` `@ -84,7 +85,7 @@ private` ` { height = RequiredForFixedHeight.h₂ req` ` ; fixedHeight = RequiredForFixedHeight.fhB req` ` ; ≈-dec = RequiredForFixedHeight.≈₂-dec req` ` ; ⊥-correct = IsLattice.≈-refl lB` ` ; ⊥-correct = refl` ` }` ` }` ` everything (suc k') = record` `@ -104,7 +105,9 @@ private` ` (RequiredForFixedHeight.h₁ req) (IsFiniteHeightWithBotAndDecEq.height fhlRest)` ` (RequiredForFixedHeight.fhA req) (IsFiniteHeightWithBotAndDecEq.fixedHeight fhlRest)` ` ; ≈-dec = P.≈-dec (RequiredForFixedHeight.≈₁-dec req) (IsFiniteHeightWithBotAndDecEq.≈-dec fhlRest)` ` ; ⊥-correct = (IsLattice.≈-refl lA , IsFiniteHeightWithBotAndDecEq.⊥-correct fhlRest)` ` ; ⊥-correct =` ` cong ((Height.⊥ (RequiredForFixedHeight.fhA req)) ,_)` ` (IsFiniteHeightWithBotAndDecEq.⊥-correct fhlRest)` ` }` ` }` ` where` `@ -158,3 +161,7 @@ module _ (k : ℕ) where` ` ; _⊓_ = _⊓_` ` ; isFiniteHeightLattice = isFiniteHeightLattice` ` }` ``` ``` ` ⊥-built : Height.⊥ fixedHeight ≡ (build (Height.⊥ fhA) (Height.⊥ fhB) k)` ` ⊥-built = IsFiniteHeightWithBotAndDecEq.⊥-correct (Everything.isFiniteHeightIfSupported (everything k) required)` ``` ```