Facts about epimorphisms and monomorphisms. #
THIS FILE IS SYNCHRONIZED WITH MATHLIB4. Any changes to this file require a corresponding PR to mathlib4.
The definitions of epi
and mono
are in category_theory.category
,
since they are used by some lemmas for iso
, which is used everywhere.
A split monomorphism is a morphism f : X ⟶ Y
with a given retraction retraction f : Y ⟶ X
such that f ≫ retraction f = 𝟙 X
.
Every split monomorphism is a monomorphism.
Instances for category_theory.split_mono
- category_theory.split_mono.has_sizeof_inst
- exists_split_mono : nonempty (category_theory.split_mono f)
is_split_mono f
is the assertion that f
admits a retraction
Instances of this typeclass
- category_theory.is_split_mono.of_iso
- category_theory.section_is_split_mono
- category_theory.functor.map.is_split_mono
- category_theory.limits.terminal.is_split_mono_from
- category_theory.limits.diag.category_theory.is_split_mono
- category_theory.limits.is_split_mono_sigma_ι
- category_theory.limits.is_split_mono_coprod_inl
- category_theory.limits.is_split_mono_coprod_inr
- category_theory.limits.biproduct.ι_mono
- category_theory.limits.binary_bicone.inl.category_theory.is_split_mono
- category_theory.limits.binary_bicone.inr.category_theory.is_split_mono
- category_theory.limits.biprod.inl_mono
- category_theory.limits.biprod.inr_mono
- category_theory.functor.biproduct_comparison'.category_theory.is_split_mono
- category_theory.functor.biprod_comparison'.category_theory.is_split_mono
- category_theory.limits.pullback.diagonal.category_theory.is_split_mono
A constructor for is_split_mono f
taking a split_mono f
as an argument
A split epimorphism is a morphism f : X ⟶ Y
with a given section section_ f : Y ⟶ X
such that section_ f ≫ f = 𝟙 Y
.
(Note that section
is a reserved keyword, so we append an underscore.)
Every split epimorphism is an epimorphism.
Instances for category_theory.split_epi
- category_theory.split_epi.has_sizeof_inst
- exists_split_epi : nonempty (category_theory.split_epi f)
is_split_epi f
is the assertion that f
admits a section
Instances of this typeclass
- category_theory.is_split_epi.of_iso
- category_theory.retraction_is_split_epi
- category_theory.functor.map.is_split_epi
- category_theory.limits.initial.is_split_epi_to
- category_theory.limits.is_split_epi_pi_π
- category_theory.limits.is_split_epi_prod_fst
- category_theory.limits.is_split_epi_prod_snd
- category_theory.limits.biproduct.π_epi
- category_theory.limits.binary_bicone.fst.category_theory.is_split_epi
- category_theory.limits.binary_bicone.snd.category_theory.is_split_epi
- category_theory.limits.biprod.fst_epi
- category_theory.limits.biprod.snd_epi
- category_theory.functor.biproduct_comparison.category_theory.is_split_epi
- category_theory.functor.biprod_comparison.category_theory.is_split_epi
- category_theory.limits.pullback.fst.category_theory.is_split_epi
- category_theory.limits.pullback.snd.category_theory.is_split_epi
A constructor for is_split_epi f
taking a split_epi f
as an argument
The chosen retraction of a split monomorphism.
Equations
Instances for category_theory.retraction
The retraction of a split monomorphism has an obvious section.
The retraction of a split monomorphism is itself a split epimorphism.
A split mono which is epi is an iso.
The chosen section of a split epimorphism.
(Note that section
is a reserved keyword, so we append an underscore.)
Instances for category_theory.section_
The section of a split epimorphism has an obvious retraction.
Equations
- se.split_mono = {retraction := f, id' := _}
The section of a split epimorphism is itself a split monomorphism.
A split epi which is mono is an iso.
Every iso is a split mono.
Every iso is a split epi.
Every split mono is a mono.
Every split epi is an epi.
Every split mono whose retraction is mono is an iso.
Every split mono whose retraction is mono is an iso.
Every split epi whose section is epi is an iso.
Every split epi whose section is epi is an iso.
A category where every morphism has a trunc
retraction is computably a groupoid.
Equations
- is_split_mono_of_mono : ∀ {X Y : C} (f : X ⟶ Y) [_inst_2 : category_theory.mono f], category_theory.is_split_mono f
A split mono category is a category in which every monomorphism is split.
Instances for category_theory.split_mono_category
- category_theory.split_mono_category.has_sizeof_inst
- is_split_epi_of_epi : ∀ {X Y : C} (f : X ⟶ Y) [_inst_2 : category_theory.epi f], category_theory.is_split_epi f
A split epi category is a category in which every epimorphism is split.
Instances of this typeclass
Instances of other typeclasses for category_theory.split_epi_category
- category_theory.split_epi_category.has_sizeof_inst
In a category in which every monomorphism is split, every monomorphism splits. This is not an instance because it would create an instance loop.
In a category in which every epimorphism is split, every epimorphism splits. This is not an instance because it would create an instance loop.
Split monomorphisms are also absolute monomorphisms.
Equations
- sm.map F = {retraction := F.map sm.retraction, id' := _}
Split epimorphisms are also absolute epimorphisms.