Unfinished stuff about HOM-sets and exponentials
This commit is contained in:
parent
0cd75e6e31
commit
26d449771a
|
@ -1,8 +1,14 @@
|
||||||
module Category.Sets where
|
{-# OPTIONS --allow-unsolved-metas #-}
|
||||||
|
|
||||||
|
module Cat.Categories.Sets where
|
||||||
|
|
||||||
open import Cubical.PathPrelude
|
open import Cubical.PathPrelude
|
||||||
open import Agda.Primitive
|
open import Agda.Primitive
|
||||||
open import Category
|
open import Data.Product
|
||||||
|
open import Data.Product renaming (proj₁ to fst ; proj₂ to snd)
|
||||||
|
|
||||||
|
open import Cat.Category
|
||||||
|
open import Cat.Functor
|
||||||
|
|
||||||
-- Sets are built-in to Agda. The set of all small sets is called Set.
|
-- Sets are built-in to Agda. The set of all small sets is called Set.
|
||||||
|
|
||||||
|
@ -27,8 +33,28 @@ module _ {ℓ ℓ' : Level} {ℂ : Category {ℓ} {ℓ}} where
|
||||||
RepFunctor : Functor ℂ Sets
|
RepFunctor : Functor ℂ Sets
|
||||||
RepFunctor =
|
RepFunctor =
|
||||||
record
|
record
|
||||||
{ F = λ A → (B : C-Obj) → Hom {ℂ = ℂ} A B
|
{ func* = λ A → (B : C-Obj) → Hom {ℂ = ℂ} A B
|
||||||
; f = λ { {c' = c'} f g → {!HomFromArrow {ℂ = } c' g!}}
|
; func→ = λ { {c} {c'} f g → {!HomFromArrow {ℂ = {!!}} c' g!} }
|
||||||
; ident = {!!}
|
; ident = {!!}
|
||||||
; distrib = {!!}
|
; distrib = {!!}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Hom0 : {ℓ ℓ' : Level} → {ℂ : Category {ℓ} {ℓ'}} → Category.Object ℂ → Functor ℂ (Sets {ℓ'})
|
||||||
|
Hom0 {ℂ = ℂ} A = record
|
||||||
|
{ func* = λ B → ℂ.Arrow A B
|
||||||
|
; func→ = λ f g → f ℂ.⊕ g
|
||||||
|
; ident = funExt λ _ → snd ℂ.ident
|
||||||
|
; distrib = funExt λ x → sym ℂ.assoc
|
||||||
|
}
|
||||||
|
where
|
||||||
|
open module ℂ = Category ℂ
|
||||||
|
|
||||||
|
Hom1 : {ℓ ℓ' : Level} → {ℂ : Category {ℓ} {ℓ'}} → Category.Object ℂ → Functor (Opposite ℂ) (Sets {ℓ'})
|
||||||
|
Hom1 {ℂ = ℂ} B = record
|
||||||
|
{ func* = λ A → ℂ.Arrow A B
|
||||||
|
; func→ = λ f g → {!!} ℂ.⊕ {!!}
|
||||||
|
; ident = {!!}
|
||||||
|
; distrib = {!!}
|
||||||
|
}
|
||||||
|
where
|
||||||
|
open module ℂ = Category ℂ
|
||||||
|
|
23
src/Cat/Category/Properties.agda
Normal file
23
src/Cat/Category/Properties.agda
Normal file
|
@ -0,0 +1,23 @@
|
||||||
|
{-# OPTIONS --allow-unsolved-metas #-}
|
||||||
|
|
||||||
|
module Cat.Category.Properties where
|
||||||
|
|
||||||
|
open import Cat.Category
|
||||||
|
open import Cat.Functor
|
||||||
|
open import Cat.Categories.Sets
|
||||||
|
|
||||||
|
module _ {ℓa ℓa' ℓb ℓb'} where
|
||||||
|
Exponential : Category {ℓa} {ℓa'} → Category {ℓb} {ℓb'} → Category {{!!}} {{!!}}
|
||||||
|
Exponential A B = record
|
||||||
|
{ Object = {!!}
|
||||||
|
; Arrow = {!!}
|
||||||
|
; 𝟙 = {!!}
|
||||||
|
; _⊕_ = {!!}
|
||||||
|
; assoc = {!!}
|
||||||
|
; ident = {!!}
|
||||||
|
}
|
||||||
|
|
||||||
|
_⇑_ = Exponential
|
||||||
|
|
||||||
|
yoneda : ∀ {ℓ ℓ'} → {ℂ : Category {ℓ} {ℓ'}} → Functor ℂ (Sets ⇑ (Opposite ℂ))
|
||||||
|
yoneda = {!!}
|
|
@ -8,7 +8,6 @@ open import Cat.Category
|
||||||
|
|
||||||
record Functor {ℓc ℓc' ℓd ℓd'} (C : Category {ℓc} {ℓc'}) (D : Category {ℓd} {ℓd'})
|
record Functor {ℓc ℓc' ℓd ℓd'} (C : Category {ℓc} {ℓc'}) (D : Category {ℓd} {ℓd'})
|
||||||
: Set (ℓc ⊔ ℓc' ⊔ ℓd ⊔ ℓd') where
|
: Set (ℓc ⊔ ℓc' ⊔ ℓd ⊔ ℓd') where
|
||||||
constructor functor
|
|
||||||
private
|
private
|
||||||
open module C = Category C
|
open module C = Category C
|
||||||
open module D = Category D
|
open module D = Category D
|
||||||
|
@ -59,4 +58,9 @@ module _ {ℓ ℓ' : Level} {A B C : Category {ℓ} {ℓ'}} (F : Functor B C) (G
|
||||||
-- The identity functor
|
-- The identity functor
|
||||||
identity : {ℓ ℓ' : Level} → {C : Category {ℓ} {ℓ'}} → Functor C C
|
identity : {ℓ ℓ' : Level} → {C : Category {ℓ} {ℓ'}} → Functor C C
|
||||||
-- Identity = record { F* = λ x → x ; F→ = λ x → x ; ident = refl ; distrib = refl }
|
-- Identity = record { F* = λ x → x ; F→ = λ x → x ; ident = refl ; distrib = refl }
|
||||||
identity = functor (λ x → x) (λ x → x) (refl) (refl)
|
identity = record
|
||||||
|
{ func* = λ x → x
|
||||||
|
; func→ = λ x → x
|
||||||
|
; ident = refl
|
||||||
|
; distrib = refl
|
||||||
|
}
|
||||||
|
|
Loading…
Reference in a new issue