Cosmetics
This commit is contained in:
parent
44eda0ced0
commit
38ec53d5c2
|
@ -5,11 +5,14 @@ consisting of the proposal for the thesis).
|
|||
|
||||
Installation
|
||||
============
|
||||
You probably need a very recent version of the Agda compiler. At the time
|
||||
of writing the solution has been tested with Agda version 2.6.0-5d84754.
|
||||
|
||||
Dependencies
|
||||
------------
|
||||
To succesfully compile the following is needed:
|
||||
|
||||
* Agda version >= `707ce6042b6a3bdb26521f3fe8dfe5d8a8470a43`.
|
||||
* Agda Standard Library >= `87d28d7d753f73abd20665d7bbb88f9d72ed88aa`.
|
||||
|
||||
I've used git submodules to manage dependencies. Unfortunately Agda does not
|
||||
allow specifying libraries to be used only as local dependencies.
|
||||
|
||||
|
|
|
@ -99,7 +99,8 @@ record IsCategory {ℓa ℓb : Level} (ℂ : RawCategory ℓa ℓb) : Set (lsuc
|
|||
id-to-iso : (A B : Object) → A ≡ B → A ≅ B
|
||||
id-to-iso A B eq = transp (\ i → A ≅ eq i) (idIso A)
|
||||
|
||||
-- TODO: might want to implement isEquiv differently, there are 3
|
||||
-- TODO: might want to implement isEquiv
|
||||
-- differently, there are 3
|
||||
-- equivalent formulations in the book.
|
||||
Univalent : Set (ℓa ⊔ ℓb)
|
||||
Univalent = {A B : Object} → isEquiv (A ≡ B) (A ≅ B) (id-to-iso A B)
|
||||
|
@ -144,20 +145,22 @@ module _ {ℓa} {ℓb} {ℂ : RawCategory ℓa ℓb} where
|
|||
-- Why choose `x`'s `propIsAssociative`?
|
||||
-- Well, probably it could be pulled out of the record.
|
||||
{ assoc = x.propIsAssociative x.assoc y.assoc i
|
||||
; ident = x.propIsIdentity x.ident y.ident i
|
||||
; ident = ident' i
|
||||
; arrowIsSet = x.propArrowIsSet x.arrowIsSet y.arrowIsSet i
|
||||
; univalent = eqUni i
|
||||
}
|
||||
where
|
||||
module x = IsCategory x
|
||||
module y = IsCategory y
|
||||
ident' = x.propIsIdentity x.ident y.ident
|
||||
ident'' = ident' i
|
||||
xuni : x.Univalent
|
||||
xuni = x.univalent
|
||||
yuni : y.Univalent
|
||||
yuni = y.univalent
|
||||
open RawCategory ℂ
|
||||
T : I → Set (ℓa ⊔ ℓb)
|
||||
T i = {A B : Object} →
|
||||
Pp : (x.ident ≡ y.ident) → I → Set (ℓa ⊔ ℓb)
|
||||
Pp eqIdent i = {A B : Object} →
|
||||
isEquiv (A ≡ B) (A x.≅ B)
|
||||
(λ A≡B →
|
||||
transp
|
||||
|
@ -166,17 +169,21 @@ module _ {ℓa} {ℓb} {ℂ : RawCategory ℓa ℓb} where
|
|||
(λ f → Σ-syntax (Arrow (A≡B j) A) (λ g → g ∘ f ≡ 𝟙 × f ∘ g ≡ 𝟙)))
|
||||
( 𝟙
|
||||
, 𝟙
|
||||
, x.propIsIdentity x.ident y.ident i
|
||||
, ident' i
|
||||
)
|
||||
)
|
||||
T : I → Set (ℓa ⊔ ℓb)
|
||||
T = Pp {!ident'!}
|
||||
open Cubical.NType.Properties
|
||||
test : (λ _ → x.Univalent) [ xuni ≡ xuni ]
|
||||
test = refl
|
||||
t = {!!}
|
||||
P : (uni : x.Univalent) → xuni ≡ uni → Set (ℓa ⊔ ℓb)
|
||||
P = {!!}
|
||||
-- T i0 ≡ x.Univalent
|
||||
-- T i1 ≡ y.Univalent
|
||||
eqUni : T [ xuni ≡ yuni ]
|
||||
eqUni = pathJprop {x = x.Univalent} P {!!} i
|
||||
eqUni = {!!}
|
||||
|
||||
|
||||
record Category (ℓa ℓb : Level) : Set (lsuc (ℓa ⊔ ℓb)) where
|
||||
|
|
|
@ -47,7 +47,6 @@ module _ {ℓc ℓc' ℓd ℓd'}
|
|||
open IsFunctor
|
||||
open Functor
|
||||
|
||||
-- TODO: Is `IsFunctor` a proposition?
|
||||
module _
|
||||
{ℓa ℓb : Level}
|
||||
{ℂ 𝔻 : Category ℓa ℓb}
|
||||
|
@ -56,11 +55,8 @@ module _
|
|||
private
|
||||
module 𝔻 = IsCategory (isCategory 𝔻)
|
||||
|
||||
-- isProp : Set ℓ
|
||||
-- isProp = (x y : A) → x ≡ y
|
||||
|
||||
IsFunctorIsProp : isProp (IsFunctor _ _ F)
|
||||
IsFunctorIsProp isF0 isF1 i = record
|
||||
propIsFunctor : isProp (IsFunctor _ _ F)
|
||||
propIsFunctor isF0 isF1 i = record
|
||||
{ ident = 𝔻.arrowIsSet _ _ isF0.ident isF1.ident i
|
||||
; distrib = 𝔻.arrowIsSet _ _ isF0.distrib isF1.distrib i
|
||||
}
|
||||
|
@ -81,7 +77,7 @@ module _
|
|||
|
||||
IsFunctorIsProp' : IsProp' λ i → IsFunctor _ _ (F i)
|
||||
IsFunctorIsProp' isF0 isF1 = lemPropF {B = IsFunctor ℂ 𝔻}
|
||||
(\ F → IsFunctorIsProp {F = F}) (\ i → F i)
|
||||
(\ F → propIsFunctor {F = F}) (\ i → F i)
|
||||
where
|
||||
open import Cubical.NType.Properties using (lemPropF)
|
||||
|
||||
|
|
Loading…
Reference in a new issue