Prove propositionality for IsMonad
This commit is contained in:
parent
c4e3625746
commit
b079f5e426
|
@ -194,7 +194,7 @@ record IsCategory {ℓa ℓb : Level} (ℂ : RawCategory ℓa ℓb) : Set (lsuc
|
||||||
--
|
--
|
||||||
-- Proves that all projections of `IsCategory` are mere propositions as well as
|
-- Proves that all projections of `IsCategory` are mere propositions as well as
|
||||||
-- `IsCategory` itself being a mere proposition.
|
-- `IsCategory` itself being a mere proposition.
|
||||||
module _ {ℓa ℓb : Level} {C : RawCategory ℓa ℓb} where
|
module Propositionality {ℓa ℓb : Level} {C : RawCategory ℓa ℓb} where
|
||||||
open RawCategory C
|
open RawCategory C
|
||||||
module _ (ℂ : IsCategory C) where
|
module _ (ℂ : IsCategory C) where
|
||||||
open IsCategory ℂ using (isAssociative ; arrowsAreSets ; isIdentity ; Univalent)
|
open IsCategory ℂ using (isAssociative ; arrowsAreSets ; isIdentity ; Univalent)
|
||||||
|
|
|
@ -8,7 +8,7 @@ open import Data.Product
|
||||||
open import Cubical
|
open import Cubical
|
||||||
open import Cubical.NType.Properties using (lemPropF)
|
open import Cubical.NType.Properties using (lemPropF)
|
||||||
|
|
||||||
open import Cat.Category hiding (propIsAssociative ; propIsIdentity)
|
open import Cat.Category
|
||||||
open import Cat.Category.Functor as F
|
open import Cat.Category.Functor as F
|
||||||
open import Cat.Category.NaturalTransformation
|
open import Cat.Category.NaturalTransformation
|
||||||
open import Cat.Categories.Fun
|
open import Cat.Categories.Fun
|
||||||
|
@ -375,10 +375,15 @@ module Kleisli {ℓa ℓb : Level} (ℂ : Category ℓa ℓb) where
|
||||||
|
|
||||||
module _ (raw : RawMonad) where
|
module _ (raw : RawMonad) where
|
||||||
open RawMonad raw
|
open RawMonad raw
|
||||||
postulate
|
propIsIdentity : isProp IsIdentity
|
||||||
propIsIdentity : isProp IsIdentity
|
propIsIdentity x y i = ℂ.arrowsAreSets _ _ x y i
|
||||||
propIsNatural : isProp IsNatural
|
propIsNatural : isProp IsNatural
|
||||||
propIsDistributive : isProp IsDistributive
|
propIsNatural x y i = λ f
|
||||||
|
→ ℂ.arrowsAreSets _ _ (x f) (y f) i
|
||||||
|
propIsDistributive : isProp IsDistributive
|
||||||
|
propIsDistributive x y i = λ g f
|
||||||
|
→ ℂ.arrowsAreSets _ _ (x g f) (y g f) i
|
||||||
|
|
||||||
open IsMonad
|
open IsMonad
|
||||||
propIsMonad : (raw : _) → isProp (IsMonad raw)
|
propIsMonad : (raw : _) → isProp (IsMonad raw)
|
||||||
IsMonad.isIdentity (propIsMonad raw x y i)
|
IsMonad.isIdentity (propIsMonad raw x y i)
|
||||||
|
|
Loading…
Reference in a new issue