Get forward analysis working again
Signed-off-by: Danila Fedorin <danila.fedorin@gmail.com>
This commit is contained in:
15
Lattice.agda
15
Lattice.agda
@@ -150,6 +150,21 @@ module _ {a b} {A : Set a} {B : Set b}
|
||||
≼₂-trans (f-Mono₁ (foldr f b₁ xs) x≼y)
|
||||
(f-Mono₂ y (foldr-Mono xs ys f b₁ b₂ xs≼ys b₁≼b₂ f-Mono₁ f-Mono₂))
|
||||
|
||||
module _ {a b} {A : Set a} {B : Set b}
|
||||
{_≈₂_ : B → B → Set b} {_⊔₂_ : B → B → B}
|
||||
(lB : IsSemilattice B _≈₂_ _⊔₂_) where
|
||||
|
||||
open IsSemilattice lB using () renaming (_≼_ to _≼₂_; ⊔-idemp to ⊔₂-idemp; ≼-trans to ≼₂-trans)
|
||||
|
||||
open import Data.List as List using (List; foldr; _∷_)
|
||||
open import Utils using (Pairwise; _∷_)
|
||||
|
||||
foldr-Mono' : ∀ (l : List A) (f : A → B → B) →
|
||||
(∀ a → Monotonic _≼₂_ _≼₂_ (f a)) →
|
||||
Monotonic _≼₂_ _≼₂_ (λ b → foldr f b l)
|
||||
foldr-Mono' List.[] f _ b₁≼b₂ = b₁≼b₂
|
||||
foldr-Mono' (x ∷ xs) f f-Mono₂ b₁≼b₂ = f-Mono₂ x (foldr-Mono' xs f f-Mono₂ b₁≼b₂)
|
||||
|
||||
record IsLattice {a} (A : Set a)
|
||||
(_≈_ : A → A → Set a)
|
||||
(_⊔_ : A → A → A)
|
||||
|
||||
Reference in New Issue
Block a user