module Cat.Restriction.Functor where
Restriction functors๐
A functor between restriction categories is a restriction functor if
is-restriction-functor : โ {oc โc od โd} {C : Precategory oc โc} {D : Precategory od โd} โ (F : Functor C D) โ (Cโ : Restriction-category C) โ (Dโ : Restriction-category D) โ Type _ is-restriction-functor {C = C} {D = D} F Cโ Dโ = โ {x y} (f : C.Hom x y) โ F .Fโ (f C.โ) โก (F .Fโ f D.โ) where module C = Cat.Restriction.Reasoning Cโ module D = Cat.Restriction.Reasoning Dโ
The identity functor is a restriction functor, and restriction functors are closed under composition.
Id-restriction : โ {oc โc} {C : Precategory oc โc} {Cโ : Restriction-category C} โ is-restriction-functor Id Cโ Cโ Id-restriction f = refl Fโ-restriction : โ {oc โc od โd oe โe} โ {C : Precategory oc โc} {D : Precategory od โd} {E : Precategory oe โe} โ {Cโ : Restriction-category C} โ {Dโ : Restriction-category D} โ {Eโ : Restriction-category E} โ (F : Functor D E) (G : Functor C D) โ is-restriction-functor F Dโ Eโ โ is-restriction-functor G Cโ Dโ โ is-restriction-functor (F Fโ G) Cโ Eโ Fโ-restriction F G Fโ Gโ f = ap (F .Fโ) (Gโ f) โ Fโ (G .Fโ f)
Properties of restriction functors๐
Let be a restriction functor. Note that preserves total morphisms and restriction idempotents.
module is-restriction-functor {oc โc od โd} {C : Precategory oc โc} {D : Precategory od โd} (F : Functor C D) (Cโ : Restriction-category C) (Dโ : Restriction-category D) (Fโ : is-restriction-functor F Cโ Dโ) where private module C = Cat.Restriction.Reasoning Cโ module D = Cat.Restriction.Reasoning Dโ
F-total : โ {x y} {f : C.Hom x y} โ C.is-total f โ D.is-total (F .Fโ f) F-total {f = f} f-total = sym (Fโ f) ยทยท ap (F .Fโ) f-total ยทยท F .F-id F-restrict-idem : โ {x} {f : C.Hom x x} โ C.is-restriction-idempotent f โ D.is-restriction-idempotent (F .Fโ f) F-restrict-idem {f = f} f-ridem = F .Fโ f D.โ โกหโจ Fโ f โฉโกห F .Fโ (f C.โ) โกโจ ap (F .Fโ) f-ridem โฉโก F .Fโ f โ
Furthermore, if refines then refines
F-โค : โ {x y} {f g : C.Hom x y} โ f C.โค g โ (F .Fโ f) D.โค (F .Fโ g) F-โค {f = f} {g = g} fโคg = F .Fโ g D.โ F .Fโ f D.โ โกโจ ap (F .Fโ g D.โ_) (sym (Fโ f)) โฉโก F .Fโ g D.โ F .Fโ (f C.โ) โกโจ sym (F .F-โ g (f C.โ)) โฉโก F .Fโ (g C.โ f C.โ) โกโจ ap (F .Fโ) fโคg โฉโก F .Fโ f โ
Restriction functors also preserve restricted isomorphisms.
F-restricted-inverses : โ {x y} {f : C.Hom x y} {g : C.Hom y x} โ C.restricted-inverses f g โ D.restricted-inverses (F .Fโ f) (F .Fโ g) F-restricted-inverses {f = f} {g = g} fg-inv = record { โ-invl = F .Fโ f D.โ F .Fโ g โกหโจ F .F-โ f g โฉโกห F .Fโ (f C.โ g) โกโจ ap (F .Fโ) fg-inv.โ-invl โฉโก F .Fโ (g C.โ) โกโจ Fโ g โฉโก F .Fโ g D.โ โ ; โ-invr = F .Fโ g D.โ F .Fโ f โกหโจ F .F-โ g f โฉโกห F .Fโ (g C.โ f) โกโจ ap (F .Fโ) fg-inv.โ-invr โฉโก F .Fโ (f C.โ) โกโจ Fโ f โฉโก F .Fโ f D.โ โ } where module fg-inv = C.restricted-inverses fg-inv F-restricted-invertible : โ {x y} {f : C.Hom x y} โ C.is-restricted-invertible f โ D.is-restricted-invertible (F .Fโ f) F-restricted-invertible f-inv = record { โ-inv = F .Fโ f-inv.โ-inv ; โ-inverses = F-restricted-inverses f-inv.โ-inverses } where module f-inv = C.is-restricted-invertible f-inv F-โโ : โ {x y} โ x C.โโ y โ F .Fโ x D.โโ F .Fโ y F-โโ f = record { โ-to = F .Fโ f.โ-to ; โ-from = F .Fโ f.โ-from ; โ-inverses = F-restricted-inverses f.โ-inverses } where module f = C._โโ _ f