Provide a definition of partial congruence
Signed-off-by: Danila Fedorin <danila.fedorin@gmail.com>
This commit is contained in:
parent
d3bac2fe60
commit
14f1494fc3
@ -3,6 +3,7 @@ module Lattice.Builder where
|
|||||||
open import Lattice
|
open import Lattice
|
||||||
open import Equivalence
|
open import Equivalence
|
||||||
open import Data.Maybe as Maybe using (Maybe; just; nothing; _>>=_; maybe)
|
open import Data.Maybe as Maybe using (Maybe; just; nothing; _>>=_; maybe)
|
||||||
|
open import Data.Maybe.Properties using (just-injective)
|
||||||
open import Data.Unit using (⊤; tt)
|
open import Data.Unit using (⊤; tt)
|
||||||
open import Data.List.NonEmpty using (List⁺; tail; toList) renaming (_∷_ to _∷⁺_)
|
open import Data.List.NonEmpty using (List⁺; tail; toList) renaming (_∷_ to _∷⁺_)
|
||||||
open import Data.List using (List; _∷_; [])
|
open import Data.List using (List; _∷_; [])
|
||||||
@ -42,6 +43,9 @@ instance
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
PartialCong : ∀ {a} {A : Set a} (_≈_ : A → A → Set a) (_⊗_ : A → A → Maybe A) → Set a
|
||||||
|
PartialCong {a} {A} _≈_ _⊗_ = ∀ {a₁ a₂ a₃ a₄} → a₁ ≈ a₂ → a₃ ≈ a₄ → lift-≈ _≈_ (a₁ ⊗ a₃) (a₂ ⊗ a₄)
|
||||||
|
|
||||||
PartialAssoc : ∀ {a} {A : Set a} (_≈_ : A → A → Set a) (_⊗_ : A → A → Maybe A) → Set a
|
PartialAssoc : ∀ {a} {A : Set a} (_≈_ : A → A → Set a) (_⊗_ : A → A → Maybe A) → Set a
|
||||||
PartialAssoc {a} {A} _≈_ _⊗_ = ∀ (x y z : A) → lift-≈ _≈_ ((x ⊗ y) >>= (_⊗ z)) ((y ⊗ z) >>= (x ⊗_))
|
PartialAssoc {a} {A} _≈_ _⊗_ = ∀ (x y z : A) → lift-≈ _≈_ ((x ⊗ y) >>= (_⊗ z)) ((y ⊗ z) >>= (x ⊗_))
|
||||||
|
|
||||||
@ -69,7 +73,7 @@ record IsPartialSemilattice {a} {A : Set a}
|
|||||||
|
|
||||||
field
|
field
|
||||||
≈-equiv : IsEquivalence A _≈_
|
≈-equiv : IsEquivalence A _≈_
|
||||||
≈-⊔-cong : ∀ {a₁ a₂ a₃ a₄} → a₁ ≈ a₂ → a₃ ≈ a₄ → (a₁ ⊔? a₃) ≈? (a₂ ⊔? a₄)
|
≈-⊔-cong : PartialCong _≈_ _⊔?_
|
||||||
|
|
||||||
⊔-assoc : PartialAssoc _≈_ _⊔?_
|
⊔-assoc : PartialAssoc _≈_ _⊔?_
|
||||||
⊔-comm : PartialComm _≈_ _⊔?_
|
⊔-comm : PartialComm _≈_ _⊔?_
|
||||||
|
Loading…
Reference in New Issue
Block a user