Choose new name for functor composition
This commit is contained in:
parent
b158b1d420
commit
b21c9b7a89
|
@ -42,26 +42,25 @@ module _ {ℓ ℓ' : Level} {A B : Category ℓ ℓ'} where
|
||||||
-- The category of categories
|
-- The category of categories
|
||||||
module _ {ℓ ℓ' : Level} where
|
module _ {ℓ ℓ' : Level} where
|
||||||
private
|
private
|
||||||
_⊛_ = functor-comp
|
|
||||||
module _ {A B C D : Category ℓ ℓ'} {f : Functor A B} {g : Functor B C} {h : Functor C D} where
|
module _ {A B C D : Category ℓ ℓ'} {f : Functor A B} {g : Functor B C} {h : Functor C D} where
|
||||||
postulate assc : h ⊛ (g ⊛ f) ≡ (h ⊛ g) ⊛ f
|
postulate assc : h ∘f (g ∘f f) ≡ (h ∘f g) ∘f f
|
||||||
-- assc = lift-eq-functors refl refl {!refl!} λ i j → {!!}
|
-- assc = lift-eq-functors refl refl {!refl!} λ i j → {!!}
|
||||||
|
|
||||||
module _ {A B : Category ℓ ℓ'} {f : Functor A B} where
|
module _ {A B : Category ℓ ℓ'} {f : Functor A B} where
|
||||||
lem : (func* f) ∘ (func* (identity {C = A})) ≡ func* f
|
lem : (func* f) ∘ (func* (identity {C = A})) ≡ func* f
|
||||||
lem = refl
|
lem = refl
|
||||||
-- lemmm : func→ {C = A} {D = B} (f ⊛ identity) ≡ func→ f
|
-- lemmm : func→ {C = A} {D = B} (f ∘f identity) ≡ func→ f
|
||||||
lemmm : PathP
|
lemmm : PathP
|
||||||
(λ i →
|
(λ i →
|
||||||
{x y : Object A} → Arrow A x y → Arrow B (func* f x) (func* f y))
|
{x y : Object A} → Arrow A x y → Arrow B (func* f x) (func* f y))
|
||||||
(func→ (f ⊛ identity)) (func→ f)
|
(func→ (f ∘f identity)) (func→ f)
|
||||||
lemmm = refl
|
lemmm = refl
|
||||||
postulate lemz : PathP (λ i → {c : A .Object} → PathP (λ _ → Arrow B (func* f c) (func* f c)) (func→ f (A .𝟙)) (B .𝟙))
|
postulate lemz : PathP (λ i → {c : A .Object} → PathP (λ _ → Arrow B (func* f c) (func* f c)) (func→ f (A .𝟙)) (B .𝟙))
|
||||||
(ident (f ⊛ identity)) (ident f)
|
(ident (f ∘f identity)) (ident f)
|
||||||
-- lemz = {!!}
|
-- lemz = {!!}
|
||||||
postulate ident-r : f ⊛ identity ≡ f
|
postulate ident-r : f ∘f identity ≡ f
|
||||||
-- ident-r = lift-eq-functors lem lemmm {!lemz!} {!!}
|
-- ident-r = lift-eq-functors lem lemmm {!lemz!} {!!}
|
||||||
postulate ident-l : identity ⊛ f ≡ f
|
postulate ident-l : identity ∘f f ≡ f
|
||||||
-- ident-l = lift-eq-functors lem lemmm {!refl!} {!!}
|
-- ident-l = lift-eq-functors lem lemmm {!refl!} {!!}
|
||||||
|
|
||||||
CatCat : Category (lsuc (ℓ ⊔ ℓ')) (ℓ ⊔ ℓ')
|
CatCat : Category (lsuc (ℓ ⊔ ℓ')) (ℓ ⊔ ℓ')
|
||||||
|
@ -70,7 +69,7 @@ module _ {ℓ ℓ' : Level} where
|
||||||
{ Object = Category ℓ ℓ'
|
{ Object = Category ℓ ℓ'
|
||||||
; Arrow = Functor
|
; Arrow = Functor
|
||||||
; 𝟙 = identity
|
; 𝟙 = identity
|
||||||
; _⊕_ = functor-comp
|
; _⊕_ = _∘f_
|
||||||
-- What gives here? Why can I not name the variables directly?
|
-- What gives here? Why can I not name the variables directly?
|
||||||
; isCategory = {!!}
|
; isCategory = {!!}
|
||||||
-- ; assoc = λ {_ _ _ _ f g h} → assc {f = f} {g = g} {h = h}
|
-- ; assoc = λ {_ _ _ _ f g h} → assc {f = f} {g = g} {h = h}
|
||||||
|
|
|
@ -41,8 +41,8 @@ module _ {ℓ ℓ' : Level} {A B C : Category ℓ ℓ'} (F : Functor B C) (G : F
|
||||||
F→ ((G→ α1) B⊕ (G→ α0)) ≡⟨ F .distrib ⟩
|
F→ ((G→ α1) B⊕ (G→ α0)) ≡⟨ F .distrib ⟩
|
||||||
(F→ ∘ G→) α1 C⊕ (F→ ∘ G→) α0 ∎
|
(F→ ∘ G→) α1 C⊕ (F→ ∘ G→) α0 ∎
|
||||||
|
|
||||||
functor-comp : Functor A C
|
_∘f_ : Functor A C
|
||||||
functor-comp =
|
_∘f_ =
|
||||||
record
|
record
|
||||||
{ func* = F* ∘ G*
|
{ func* = F* ∘ G*
|
||||||
; func→ = F→ ∘ G→
|
; func→ = F→ ∘ G→
|
||||||
|
@ -56,7 +56,6 @@ module _ {ℓ ℓ' : Level} {A B C : Category ℓ ℓ'} (F : Functor B C) (G : F
|
||||||
|
|
||||||
-- The identity functor
|
-- The identity functor
|
||||||
identity : ∀ {ℓ ℓ'} → {C : Category ℓ ℓ'} → Functor C C
|
identity : ∀ {ℓ ℓ'} → {C : Category ℓ ℓ'} → Functor C C
|
||||||
-- Identity = record { F* = λ x → x ; F→ = λ x → x ; ident = refl ; distrib = refl }
|
|
||||||
identity = record
|
identity = record
|
||||||
{ func* = λ x → x
|
{ func* = λ x → x
|
||||||
; func→ = λ x → x
|
; func→ = λ x → x
|
||||||
|
|
Loading…
Reference in a new issue