Documentation

Mathlib.CategoryTheory.Limits.Shapes.Pullback.Mono

Pullbacks and monomorphisms #

This file provides some results about interactions between pullbacks and monomorphisms, as well as the dual statements between pushouts and epimorphisms.

Main results #

The dual notions for pushouts are also available.

Monomorphisms are stable under pullback in the first argument.

Monomorphisms are stable under pullback in the second argument.

The pullback cone (๐Ÿ™ X, ๐Ÿ™ X) for the pair (f, f) is a limit if f is a mono. The converse is shown in mono_of_pullback_is_id.

Equations
    Instances For

      f is a mono if the pullback cone (๐Ÿ™ X, ๐Ÿ™ X) is a limit for the pair (f, f). The converse is given in PullbackCone.is_id_of_mono.

      def CategoryTheory.Limits.PullbackCone.isLimitOfFactors {C : Type u} [Category.{v, u} C] {W X Y Z : C} (f : X โŸถ Z) (g : Y โŸถ Z) (h : W โŸถ Z) [Mono h] (x : X โŸถ W) (y : Y โŸถ W) (hxh : CategoryStruct.comp x h = f) (hyh : CategoryStruct.comp y h = g) (s : PullbackCone f g) (hs : IsLimit s) :
      IsLimit (mk s.fst s.snd โ‹ฏ)

      Suppose f and g are two morphisms with a common codomain and s is a limit cone over the diagram formed by f and g. Suppose f and g both factor through a monomorphism h via x and y, respectively. Then s is also a limit cone over the diagram formed by x and y.

      Equations
        Instances For
          def CategoryTheory.Limits.PullbackCone.isLimitOfCompMono {C : Type u} [Category.{v, u} C] {W X Y Z : C} (f : X โŸถ W) (g : Y โŸถ W) (i : W โŸถ Z) [Mono i] (s : PullbackCone f g) (H : IsLimit s) :
          IsLimit (mk s.fst s.snd โ‹ฏ)

          If W is the pullback of f, g, it is also the pullback of f โ‰ซ i, g โ‰ซ i for any mono i.

          Equations
            Instances For
              instance CategoryTheory.Limits.pullback.fst_of_mono {C : Type u} [Category.{v, u} C] {X Y Z : C} {f : X โŸถ Z} {g : Y โŸถ Z} [HasPullback f g] [Mono g] :
              Mono (fst f g)

              The pullback of a monomorphism is a monomorphism

              instance CategoryTheory.Limits.pullback.snd_of_mono {C : Type u} [Category.{v, u} C] {X Y Z : C} {f : X โŸถ Z} {g : Y โŸถ Z} [HasPullback f g] [Mono f] :
              Mono (snd f g)

              The pullback of a monomorphism is a monomorphism

              The map X ร—[Z] Y โŸถ X ร— Y is mono.

              noncomputable def CategoryTheory.Limits.pullbackIsPullbackOfCompMono {C : Type u} [Category.{v, u} C] {W X Y Z : C} (f : X โŸถ W) (g : Y โŸถ W) (i : W โŸถ Z) [Mono i] [HasPullback f g] :

              The pullback of f, g is also the pullback of f โ‰ซ i, g โ‰ซ i for any mono i.

              Equations
                Instances For

                  The pushout cocone (๐Ÿ™ X, ๐Ÿ™ X) for the pair (f, f) is a colimit if f is an epi. The converse is shown in epi_of_isColimit_mk_id_id.

                  Equations
                    Instances For

                      f is an epi if the pushout cocone (๐Ÿ™ X, ๐Ÿ™ X) is a colimit for the pair (f, f). The converse is given in PushoutCocone.isColimitMkIdId.

                      def CategoryTheory.Limits.PushoutCocone.isColimitOfFactors {C : Type u} [Category.{v, u} C] {W X Y Z : C} (f : X โŸถ Y) (g : X โŸถ Z) (h : X โŸถ W) [Epi h] (x : W โŸถ Y) (y : W โŸถ Z) (hhx : CategoryStruct.comp h x = f) (hhy : CategoryStruct.comp h y = g) (s : PushoutCocone f g) (hs : IsColimit s) :
                      have reassocโ‚ := โ‹ฏ; have reassocโ‚‚ := โ‹ฏ; IsColimit (mk s.inl s.inr โ‹ฏ)

                      Suppose f and g are two morphisms with a common domain and s is a colimit cocone over the diagram formed by f and g. Suppose f and g both factor through an epimorphism h via x and y, respectively. Then s is also a colimit cocone over the diagram formed by x and y.

                      Equations
                        Instances For
                          def CategoryTheory.Limits.PushoutCocone.isColimitOfEpiComp {C : Type u} [Category.{v, u} C] {W X Y Z : C} (f : X โŸถ Y) (g : X โŸถ Z) (h : W โŸถ X) [Epi h] (s : PushoutCocone f g) (H : IsColimit s) :
                          IsColimit (mk s.inl s.inr โ‹ฏ)

                          If W is the pushout of f, g, it is also the pushout of h โ‰ซ f, h โ‰ซ g for any epi h.

                          Equations
                            Instances For
                              instance CategoryTheory.Limits.pushout.inl_of_epi {C : Type u} [Category.{v, u} C] {X Y Z : C} {f : X โŸถ Y} {g : X โŸถ Z} [HasPushout f g] [Epi g] :
                              Epi (inl f g)

                              The pushout of an epimorphism is an epimorphism

                              instance CategoryTheory.Limits.pushout.inr_of_epi {C : Type u} [Category.{v, u} C] {X Y Z : C} {f : X โŸถ Y} {g : X โŸถ Z} [HasPushout f g] [Epi f] :
                              Epi (inr f g)

                              The pushout of an epimorphism is an epimorphism

                              The map X โจฟ Y โŸถ X โจฟ[Z] Y is epi.

                              noncomputable def CategoryTheory.Limits.pushoutIsPushoutOfEpiComp {C : Type u} [Category.{v, u} C] {W X Y Z : C} (f : X โŸถ Y) (g : X โŸถ Z) (h : W โŸถ X) [Epi h] [HasPushout f g] :

                              The pushout of f, g is also the pullback of h โ‰ซ f, h โ‰ซ g for any epi h.

                              Equations
                                Instances For