Move category of Categories to own module
This commit is contained in:
parent
c9042c682e
commit
e3d2c0d39e
|
@ -184,51 +184,6 @@ Opposite ℂ =
|
|||
where
|
||||
open module ℂ = Category ℂ
|
||||
|
||||
-- The category of categories
|
||||
module _ {ℓ ℓ' : Level} where
|
||||
private
|
||||
_⊛_ = functor-comp
|
||||
module _ {A B C D : Category {ℓ} {ℓ'}} {f : Functor A B} {g : Functor B C} {h : Functor C D} where
|
||||
assc : h ⊛ (g ⊛ f) ≡ (h ⊛ g) ⊛ f
|
||||
assc = {!!}
|
||||
|
||||
module _ {A B : Category {ℓ} {ℓ'}} where
|
||||
lift-eq : (f g : Functor A B)
|
||||
→ (eq* : Functor.func* f ≡ Functor.func* g)
|
||||
-- TODO: Must transport here using the equality from above.
|
||||
-- Reason:
|
||||
-- func→ : Arrow A dom cod → Arrow B (func* dom) (func* cod)
|
||||
-- func→₁ : Arrow A dom cod → Arrow B (func*₁ dom) (func*₁ cod)
|
||||
-- In other words, func→ and func→₁ does not have the same type.
|
||||
-- → Functor.func→ f ≡ Functor.func→ g
|
||||
-- → Functor.ident f ≡ Functor.ident g
|
||||
-- → Functor.distrib f ≡ Functor.distrib g
|
||||
→ f ≡ g
|
||||
lift-eq
|
||||
(functor func* func→ idnt distrib)
|
||||
(functor func*₁ func→₁ idnt₁ distrib₁)
|
||||
eq-func* = {!!}
|
||||
|
||||
module _ {A B : Category {ℓ} {ℓ'}} {f : Functor A B} where
|
||||
idHere = identity {ℓ} {ℓ'} {A}
|
||||
lem : (Functor.func* f) ∘ (Functor.func* idHere) ≡ Functor.func* f
|
||||
lem = refl
|
||||
ident-r : f ⊛ identity ≡ f
|
||||
ident-r = lift-eq (f ⊛ identity) f refl
|
||||
ident-l : identity ⊛ f ≡ f
|
||||
ident-l = {!!}
|
||||
|
||||
CatCat : Category {lsuc (ℓ ⊔ ℓ')} {ℓ ⊔ ℓ'}
|
||||
CatCat =
|
||||
record
|
||||
{ Object = Category {ℓ} {ℓ'}
|
||||
; Arrow = Functor
|
||||
; 𝟙 = identity
|
||||
; _⊕_ = functor-comp
|
||||
; assoc = {!!}
|
||||
; ident = ident-r , ident-l
|
||||
}
|
||||
|
||||
Hom : {ℓ ℓ' : Level} → {ℂ : Category {ℓ} {ℓ'}} → (A B : Object ℂ) → Set ℓ'
|
||||
Hom {ℂ = ℂ} A B = Arrow ℂ A B
|
||||
|
||||
|
|
55
src/Category/Categories/Cat.agda
Normal file
55
src/Category/Categories/Cat.agda
Normal file
|
@ -0,0 +1,55 @@
|
|||
{-# OPTIONS --cubical #-}
|
||||
|
||||
module Category.Categories.Cat where
|
||||
|
||||
open import Agda.Primitive
|
||||
open import Cubical
|
||||
open import Function
|
||||
open import Data.Product renaming (proj₁ to fst ; proj₂ to snd)
|
||||
|
||||
open import Category
|
||||
|
||||
-- The category of categories
|
||||
module _ {ℓ ℓ' : Level} where
|
||||
private
|
||||
_⊛_ = functor-comp
|
||||
module _ {A B C D : Category {ℓ} {ℓ'}} {f : Functor A B} {g : Functor B C} {h : Functor C D} where
|
||||
assc : h ⊛ (g ⊛ f) ≡ (h ⊛ g) ⊛ f
|
||||
assc = {!!}
|
||||
|
||||
module _ {A B : Category {ℓ} {ℓ'}} where
|
||||
lift-eq : (f g : Functor A B)
|
||||
→ (eq* : Functor.func* f ≡ Functor.func* g)
|
||||
-- TODO: Must transport here using the equality from above.
|
||||
-- Reason:
|
||||
-- func→ : Arrow A dom cod → Arrow B (func* dom) (func* cod)
|
||||
-- func→₁ : Arrow A dom cod → Arrow B (func*₁ dom) (func*₁ cod)
|
||||
-- In other words, func→ and func→₁ does not have the same type.
|
||||
-- → Functor.func→ f ≡ Functor.func→ g
|
||||
-- → Functor.ident f ≡ Functor.ident g
|
||||
-- → Functor.distrib f ≡ Functor.distrib g
|
||||
→ f ≡ g
|
||||
lift-eq
|
||||
(functor func* func→ idnt distrib)
|
||||
(functor func*₁ func→₁ idnt₁ distrib₁)
|
||||
eq-func* = {!!}
|
||||
|
||||
module _ {A B : Category {ℓ} {ℓ'}} {f : Functor A B} where
|
||||
idHere = identity {ℓ} {ℓ'} {A}
|
||||
lem : (Functor.func* f) ∘ (Functor.func* idHere) ≡ Functor.func* f
|
||||
lem = refl
|
||||
ident-r : f ⊛ identity ≡ f
|
||||
ident-r = lift-eq (f ⊛ identity) f refl
|
||||
ident-l : identity ⊛ f ≡ f
|
||||
ident-l = {!!}
|
||||
|
||||
CatCat : Category {lsuc (ℓ ⊔ ℓ')} {ℓ ⊔ ℓ'}
|
||||
CatCat =
|
||||
record
|
||||
{ Object = Category {ℓ} {ℓ'}
|
||||
; Arrow = Functor
|
||||
; 𝟙 = identity
|
||||
; _⊕_ = functor-comp
|
||||
; assoc = {!!}
|
||||
; ident = ident-r , ident-l
|
||||
}
|
Loading…
Reference in a new issue