@[class]
structure
category_theory.reflects_isomorphisms
{C : Type u₁}
[category_theory.category C]
{D : Type u₂}
[category_theory.category D] :
C ⥤ D → Type (max u₁ v₁ v₂)
- reflects : Π {A B : C} (f : A ⟶ B) [_inst_3 : category_theory.is_iso (F.map f)], category_theory.is_iso f
Define what it means for a functor F : C ⥤ D
to reflect isomorphisms: for any
morphism f : A ⟶ B
, if F.map f
is an isomorphism then f
is as well.
Note that we do not assume or require that F
is faithful.
Instances
- category_theory.forget₂.category_theory.reflects_isomorphisms
- category_theory.category_theory.reflects_isomorphisms
- category_theory.forget.category_theory.reflects_isomorphisms
- Mon.forget_reflects_isos
- AddMon.forget_reflects_isos
- CommMon.forget_reflects_isos
- AddCommMon.forget_reflects_isos
- Group.forget_reflects_isos
- AddGroup.forget_reflects_isos
- CommGroup.forget_reflects_isos
- AddCommGroup.forget_reflects_isos
- Ring.forget_reflects_isos
- CommRing.forget_reflects_isos
- category_theory.limits.cones.reflects_cone_isomorphism
- category_theory.limits.cocones.reflects_cocone_isomorphism
- Algebra.forget_reflects_isos
- category_theory.over.forget_reflects_iso
- category_theory.monad.forget_reflects_iso
- TopCommRing.category_theory.reflects_isomorphisms
def
category_theory.is_iso_of_reflects_iso
{C : Type u₁}
[category_theory.category C]
{D : Type u₂}
[category_theory.category D]
{A B : C}
(f : A ⟶ B)
(F : C ⥤ D)
[category_theory.is_iso (F.map f)]
[category_theory.reflects_isomorphisms F] :
If F
reflects isos and F.map f
is an iso, then f
is an iso.
@[instance]
def
category_theory.category_theory.reflects_isomorphisms
{C : Type u₁}
[category_theory.category C]
{D : Type u₂}
[category_theory.category D]
(F : C ⥤ D)
[category_theory.full F]
[category_theory.faithful F] :
Equations
- category_theory.category_theory.reflects_isomorphisms F = {reflects := λ (X Y : C) (f : X ⟶ Y) (i : category_theory.is_iso (F.map f)), {inv := F.preimage (category_theory.is_iso.inv (F.map f)), hom_inv_id' := _, inv_hom_id' := _}}