Documentation

Mathlib.CategoryTheory.Localization.CalculusOfFractions

Calculus of fractions #

Following the definitions by Gabriel and Zisman, given a morphism property W : MorphismProperty C on a category C, we introduce the class W.HasLeftCalculusOfFractions. The main result Localization.exists_leftFraction is that if L : C ⥤ D is a localization functor for W, then for any morphism L.obj X ⟶ L.obj Y in D, there exists an auxiliary object Y' : C and morphisms g : X ⟶ Y' and s : Y ⟶ Y', with W s, such that the given morphism is a sort of fraction g / s, or more precisely of the form L.map g ≫ (Localization.isoOfHom L W s hs).inv. We also show that the functor L.mapArrow : Arrow C ⥤ Arrow D is essentially surjective.

Similar results are obtained when W has a right calculus of fractions.

References #

structure CategoryTheory.MorphismProperty.LeftFraction {C : Type u_1} [Category.{u_3, u_1} C] (W : MorphismProperty C) (X Y : C) :
Type (max u_1 u_3)

A left fraction from X : C to Y : C for W : MorphismProperty C consists of the datum of an object Y' : C and maps f : X ⟶ Y' and s : Y ⟶ Y' such that W s.

  • Y' : C

    the auxiliary object of a left fraction

  • f : X self.Y'

    the numerator of a left fraction

  • s : Y self.Y'

    the denominator of a left fraction

  • hs : W self.s

    the condition that the denominator belongs to the given morphism property

Instances For

    The left fraction from X to Y given by a morphism s : Y ⟶ X such that W s.

    Equations
    Instances For
      @[simp]
      theorem CategoryTheory.MorphismProperty.LeftFraction.ofInv_s {C : Type u_1} [Category.{u_3, u_1} C] {W : MorphismProperty C} {X Y : C} (s : Y X) (hs : W s) :
      (ofInv s hs).s = s
      @[simp]
      theorem CategoryTheory.MorphismProperty.LeftFraction.ofInv_f {C : Type u_1} [Category.{u_3, u_1} C] {W : MorphismProperty C} {X Y : C} (s : Y X) (hs : W s) :
      @[simp]
      theorem CategoryTheory.MorphismProperty.LeftFraction.ofInv_Y' {C : Type u_1} [Category.{u_3, u_1} C] {W : MorphismProperty C} {X Y : C} (s : Y X) (hs : W s) :
      (ofInv s hs).Y' = X
      noncomputable def CategoryTheory.MorphismProperty.LeftFraction.map {C : Type u_1} {D : Type u_2} [Category.{u_3, u_1} C] [Category.{u_4, u_2} D] {W : MorphismProperty C} {X Y : C} (φ : W.LeftFraction X Y) (L : Functor C D) (hL : W.IsInvertedBy L) :
      L.obj X L.obj Y

      If φ : W.LeftFraction X Y and L is a functor which inverts W, this is the induced morphism L.obj X ⟶ L.obj Y

      Equations
      Instances For
        @[simp]
        theorem CategoryTheory.MorphismProperty.LeftFraction.map_comp_map_s {C : Type u_1} {D : Type u_2} [Category.{u_3, u_1} C] [Category.{u_4, u_2} D] {W : MorphismProperty C} {X Y : C} (φ : W.LeftFraction X Y) (L : Functor C D) (hL : W.IsInvertedBy L) :
        CategoryStruct.comp (φ.map L hL) (L.map φ.s) = L.map φ.f
        @[simp]
        theorem CategoryTheory.MorphismProperty.LeftFraction.map_comp_map_s_assoc {C : Type u_1} {D : Type u_2} [Category.{u_3, u_1} C] [Category.{u_4, u_2} D] {W : MorphismProperty C} {X Y : C} (φ : W.LeftFraction X Y) (L : Functor C D) (hL : W.IsInvertedBy L) {Z : D} (h : L.obj φ.Y' Z) :
        theorem CategoryTheory.MorphismProperty.LeftFraction.map_ofHom {C : Type u_1} {D : Type u_2} [Category.{u_3, u_1} C] [Category.{u_4, u_2} D] (W : MorphismProperty C) {X Y : C} (f : X Y) (L : Functor C D) (hL : W.IsInvertedBy L) [W.ContainsIdentities] :
        (ofHom W f).map L hL = L.map f
        @[simp]
        theorem CategoryTheory.MorphismProperty.LeftFraction.map_ofInv_hom_id {C : Type u_1} {D : Type u_2} [Category.{u_3, u_1} C] [Category.{u_4, u_2} D] (W : MorphismProperty C) {X Y : C} (s : Y X) (hs : W s) (L : Functor C D) (hL : W.IsInvertedBy L) :
        @[simp]
        theorem CategoryTheory.MorphismProperty.LeftFraction.map_ofInv_hom_id_assoc {C : Type u_1} {D : Type u_2} [Category.{u_3, u_1} C] [Category.{u_4, u_2} D] (W : MorphismProperty C) {X Y : C} (s : Y X) (hs : W s) (L : Functor C D) (hL : W.IsInvertedBy L) {Z : D} (h : L.obj X Z) :
        @[simp]
        theorem CategoryTheory.MorphismProperty.LeftFraction.map_hom_ofInv_id {C : Type u_1} {D : Type u_2} [Category.{u_3, u_1} C] [Category.{u_4, u_2} D] (W : MorphismProperty C) {X Y : C} (s : Y X) (hs : W s) (L : Functor C D) (hL : W.IsInvertedBy L) :
        @[simp]
        theorem CategoryTheory.MorphismProperty.LeftFraction.map_hom_ofInv_id_assoc {C : Type u_1} {D : Type u_2} [Category.{u_3, u_1} C] [Category.{u_4, u_2} D] (W : MorphismProperty C) {X Y : C} (s : Y X) (hs : W s) (L : Functor C D) (hL : W.IsInvertedBy L) {Z : D} (h : L.obj Y Z) :
        theorem CategoryTheory.MorphismProperty.LeftFraction.cases {C : Type u_1} [Category.{u_3, u_1} C] {W : MorphismProperty C} {X Y : C} (α : W.LeftFraction X Y) :
        ∃ (Y' : C) (f : X Y') (s : Y Y') (hs : W s), α = mk f s hs
        structure CategoryTheory.MorphismProperty.RightFraction {C : Type u_1} [Category.{u_3, u_1} C] (W : MorphismProperty C) (X Y : C) :
        Type (max u_1 u_3)

        A right fraction from X : C to Y : C for W : MorphismProperty C consists of the datum of an object X' : C and maps s : X' ⟶ X and f : X' ⟶ Y such that W s.

        • X' : C

          the auxiliary object of a right fraction

        • s : self.X' X

          the denominator of a right fraction

        • hs : W self.s

          the condition that the denominator belongs to the given morphism property

        • f : self.X' Y

          the numerator of a right fraction

        Instances For

          The right fraction from X to Y given by a morphism s : Y ⟶ X such that W s.

          Equations
          Instances For
            @[simp]
            @[simp]
            theorem CategoryTheory.MorphismProperty.RightFraction.ofInv_X' {C : Type u_1} [Category.{u_3, u_1} C] {W : MorphismProperty C} {X Y : C} (s : Y X) (hs : W s) :
            (ofInv s hs).X' = Y
            @[simp]
            theorem CategoryTheory.MorphismProperty.RightFraction.ofInv_s {C : Type u_1} [Category.{u_3, u_1} C] {W : MorphismProperty C} {X Y : C} (s : Y X) (hs : W s) :
            (ofInv s hs).s = s
            noncomputable def CategoryTheory.MorphismProperty.RightFraction.map {C : Type u_1} {D : Type u_2} [Category.{u_3, u_1} C] [Category.{u_4, u_2} D] {W : MorphismProperty C} {X Y : C} (φ : W.RightFraction X Y) (L : Functor C D) (hL : W.IsInvertedBy L) :
            L.obj X L.obj Y

            If φ : W.RightFraction X Y and L is a functor which inverts W, this is the induced morphism L.obj X ⟶ L.obj Y

            Equations
            Instances For
              @[simp]
              theorem CategoryTheory.MorphismProperty.RightFraction.map_s_comp_map {C : Type u_1} {D : Type u_2} [Category.{u_3, u_1} C] [Category.{u_4, u_2} D] {W : MorphismProperty C} {X Y : C} (φ : W.RightFraction X Y) (L : Functor C D) (hL : W.IsInvertedBy L) :
              CategoryStruct.comp (L.map φ.s) (φ.map L hL) = L.map φ.f
              @[simp]
              theorem CategoryTheory.MorphismProperty.RightFraction.map_s_comp_map_assoc {C : Type u_1} {D : Type u_2} [Category.{u_3, u_1} C] [Category.{u_4, u_2} D] {W : MorphismProperty C} {X Y : C} (φ : W.RightFraction X Y) (L : Functor C D) (hL : W.IsInvertedBy L) {Z : D} (h : L.obj Y Z) :
              @[simp]
              theorem CategoryTheory.MorphismProperty.RightFraction.map_ofHom {C : Type u_1} {D : Type u_2} [Category.{u_3, u_1} C] [Category.{u_4, u_2} D] (W : MorphismProperty C) {X Y : C} (f : X Y) (L : Functor C D) (hL : W.IsInvertedBy L) [W.ContainsIdentities] :
              (ofHom W f).map L hL = L.map f
              @[simp]
              theorem CategoryTheory.MorphismProperty.RightFraction.map_ofInv_hom_id {C : Type u_1} {D : Type u_2} [Category.{u_3, u_1} C] [Category.{u_4, u_2} D] (W : MorphismProperty C) {X Y : C} (s : Y X) (hs : W s) (L : Functor C D) (hL : W.IsInvertedBy L) :
              @[simp]
              theorem CategoryTheory.MorphismProperty.RightFraction.map_ofInv_hom_id_assoc {C : Type u_1} {D : Type u_2} [Category.{u_3, u_1} C] [Category.{u_4, u_2} D] (W : MorphismProperty C) {X Y : C} (s : Y X) (hs : W s) (L : Functor C D) (hL : W.IsInvertedBy L) {Z : D} (h : L.obj X Z) :
              @[simp]
              theorem CategoryTheory.MorphismProperty.RightFraction.map_hom_ofInv_id {C : Type u_1} {D : Type u_2} [Category.{u_3, u_1} C] [Category.{u_4, u_2} D] (W : MorphismProperty C) {X Y : C} (s : Y X) (hs : W s) (L : Functor C D) (hL : W.IsInvertedBy L) :
              @[simp]
              theorem CategoryTheory.MorphismProperty.RightFraction.map_hom_ofInv_id_assoc {C : Type u_1} {D : Type u_2} [Category.{u_3, u_1} C] [Category.{u_4, u_2} D] (W : MorphismProperty C) {X Y : C} (s : Y X) (hs : W s) (L : Functor C D) (hL : W.IsInvertedBy L) {Z : D} (h : L.obj Y Z) :
              theorem CategoryTheory.MorphismProperty.RightFraction.cases {C : Type u_1} [Category.{u_3, u_1} C] {W : MorphismProperty C} {X Y : C} (α : W.RightFraction X Y) :
              ∃ (X' : C) (s : X' X) (hs : W s) (f : X' Y), α = mk s hs f

              A multiplicative morphism property W has left calculus of fractions if any right fraction can be turned into a left fraction and that two morphisms that can be equalized by precomposition with a morphism in W can also be equalized by postcomposition with a morphism in W.

              Instances

                A multiplicative morphism property W has right calculus of fractions if any left fraction can be turned into a right fraction and that two morphisms that can be equalized by postcomposition with a morphism in W can also be equalized by precomposition with a morphism in W.

                Instances

                  A choice of a left fraction deduced from a right fraction for a morphism property W when W has left calculus of fractions.

                  Equations
                  Instances For

                    A choice of a right fraction deduced from a left fraction for a morphism property W when W has right calculus of fractions.

                    Equations
                    Instances For

                      The equivalence relation on left fractions for a morphism property W.

                      Equations
                      • One or more equations did not get rendered due to their size.
                      Instances For
                        theorem CategoryTheory.MorphismProperty.LeftFractionRel.symm {C : Type u_1} [Category.{u_3, u_1} C] {W : MorphismProperty C} {X Y : C} {z₁ z₂ : W.LeftFraction X Y} (h : LeftFractionRel z₁ z₂) :
                        LeftFractionRel z₂ z₁
                        theorem CategoryTheory.MorphismProperty.LeftFractionRel.trans {C : Type u_1} [Category.{u_3, u_1} C] {W : MorphismProperty C} {X Y : C} {z₁ z₂ z₃ : W.LeftFraction X Y} [W.HasLeftCalculusOfFractions] (h₁₂ : LeftFractionRel z₁ z₂) (h₂₃ : LeftFractionRel z₂ z₃) :
                        LeftFractionRel z₁ z₃

                        Auxiliary definition for the composition of left fractions.

                        Equations
                        Instances For
                          theorem CategoryTheory.MorphismProperty.LeftFraction.comp₀_rel {C : Type u_1} [Category.{u_3, u_1} C] {W : MorphismProperty C} [W.HasLeftCalculusOfFractions] {X Y Z : C} (z₁ : W.LeftFraction X Y) (z₂ : W.LeftFraction Y Z) (z₃ z₃' : W.LeftFraction z₁.Y' z₂.Y') (h₃ : CategoryStruct.comp z₂.f z₃.s = CategoryStruct.comp z₁.s z₃.f) (h₃' : CategoryStruct.comp z₂.f z₃'.s = CategoryStruct.comp z₁.s z₃'.f) :
                          LeftFractionRel (z₁.comp₀ z₂ z₃) (z₁.comp₀ z₂ z₃')

                          The equivalence class of z₁.comp₀ z₂ z₃ does not depend on the choice of z₃ provided they satisfy the compatibility z₂.f ≫ z₃.s = z₁.s ≫ z₃.f.

                          The morphisms in the constructed localized category for a morphism property W that has left calculus of fractions are equivalence classes of left fractions.

                          Equations
                          Instances For

                            The morphism in the constructed localized category that is induced by a left fraction.

                            Equations
                            Instances For

                              Auxiliary definition towards the definition of the composition of morphisms in the constructed localized category for a morphism property that has left calculus of fractions.

                              Equations
                              Instances For
                                theorem CategoryTheory.MorphismProperty.LeftFraction.comp_eq {C : Type u_1} [Category.{u_3, u_1} C] {W : MorphismProperty C} [W.HasLeftCalculusOfFractions] {X Y Z : C} (z₁ : W.LeftFraction X Y) (z₂ : W.LeftFraction Y Z) (z₃ : W.LeftFraction z₁.Y' z₂.Y') (h₃ : CategoryStruct.comp z₂.f z₃.s = CategoryStruct.comp z₁.s z₃.f) :
                                z₁.comp z₂ = Localization.Hom.mk (z₁.comp₀ z₂ z₃)
                                noncomputable def CategoryTheory.MorphismProperty.LeftFraction.Localization.Hom.comp {C : Type u_1} [Category.{u_3, u_1} C] {W : MorphismProperty C} [W.HasLeftCalculusOfFractions] {X Y Z : C} (z₁ : Hom W X Y) (z₂ : Hom W Y Z) :
                                Hom W X Z

                                Composition of morphisms in the constructed localized category for a morphism property that has left calculus of fractions.

                                Equations
                                Instances For

                                  The constructed localized category for a morphism property that has left calculus of fractions.

                                  Equations
                                  Instances For

                                    The localization functor to the constructed localized category for a morphism property that has left calculus of fractions.

                                    Equations
                                    • One or more equations did not get rendered due to their size.
                                    Instances For
                                      theorem CategoryTheory.MorphismProperty.LeftFraction.Localization.homMk_comp_homMk {C : Type u_1} [Category.{u_3, u_1} C] {W : MorphismProperty C} [W.HasLeftCalculusOfFractions] {X Y Z : C} (z₁ : W.LeftFraction X Y) (z₂ : W.LeftFraction Y Z) (z₃ : W.LeftFraction z₁.Y' z₂.Y') (h₃ : CategoryStruct.comp z₂.f z₃.s = CategoryStruct.comp z₁.s z₃.f) :
                                      CategoryStruct.comp (homMk z₁) (homMk z₂) = homMk (z₁.comp₀ z₂ z₃)

                                      The isomorphism in Localization W that is induced by a morphism in W.

                                      Equations
                                      • One or more equations did not get rendered due to their size.
                                      Instances For
                                        noncomputable def CategoryTheory.MorphismProperty.LeftFraction.Localization.Hom.map {C : Type u_1} [Category.{u_4, u_1} C] {W : MorphismProperty C} {E : Type u_3} [Category.{u_5, u_3} E] {X Y : C} (f : Hom W X Y) (F : Functor C E) (hF : W.IsInvertedBy F) :
                                        F.obj X F.obj Y

                                        The image by a functor which inverts W of an equivalence class of left fractions.

                                        Equations
                                        Instances For
                                          @[simp]
                                          theorem CategoryTheory.MorphismProperty.LeftFraction.Localization.Hom.map_mk {C : Type u_1} [Category.{u_4, u_1} C] {E : Type u_3} [Category.{u_5, u_3} E] {W : MorphismProperty C} {X Y : C} (f : W.LeftFraction X Y) (F : Functor C E) (hF : W.IsInvertedBy F) :
                                          (mk f).map F hF = f.map F hF

                                          The functor Localization W ⥤ E that is induced by a functor C ⥤ E which inverts W, when W has a left calculus of fractions.

                                          Equations
                                          • One or more equations did not get rendered due to their size.
                                          Instances For

                                            The universal property of the localization for the constructed localized category when there is a left calculus of fractions.

                                            Equations
                                            • One or more equations did not get rendered due to their size.
                                            Instances For
                                              theorem CategoryTheory.MorphismProperty.LeftFraction.map_compatibility {C : Type u_1} {D : Type u_2} [Category.{u_4, u_1} C] [Category.{u_6, u_2} D] {W : MorphismProperty C} {X Y : C} (φ : W.LeftFraction X Y) {E : Type u_3} [Category.{u_5, u_3} E] (L₁ : Functor C D) (L₂ : Functor C E) [L₁.IsLocalization W] [L₂.IsLocalization W] :
                                              theorem CategoryTheory.MorphismProperty.LeftFraction.map_eq_of_map_eq {C : Type u_1} {D : Type u_2} [Category.{u_4, u_1} C] [Category.{u_6, u_2} D] {W : MorphismProperty C} {X Y : C} (φ₁ φ₂ : W.LeftFraction X Y) {E : Type u_3} [Category.{u_5, u_3} E] (L₁ : Functor C D) (L₂ : Functor C E) [L₁.IsLocalization W] [L₂.IsLocalization W] (h : φ₁.map L₁ = φ₂.map L₁ ) :
                                              φ₁.map L₂ = φ₂.map L₂
                                              theorem CategoryTheory.MorphismProperty.LeftFraction.map_comp_map_eq_map {C : Type u_1} {D : Type u_2} [Category.{u_3, u_1} C] [Category.{u_4, u_2} D] {W : MorphismProperty C} [W.HasLeftCalculusOfFractions] {X Y Z : C} (z₁ : W.LeftFraction X Y) (z₂ : W.LeftFraction Y Z) (z₃ : W.LeftFraction z₁.Y' z₂.Y') (h₃ : CategoryStruct.comp z₂.f z₃.s = CategoryStruct.comp z₁.s z₃.f) (L : Functor C D) [L.IsLocalization W] :
                                              CategoryStruct.comp (z₁.map L ) (z₂.map L ) = (z₁.comp₀ z₂ z₃).map L
                                              theorem CategoryTheory.Localization.exists_leftFraction {C : Type u_1} {D : Type u_2} [Category.{u_4, u_1} C] [Category.{u_3, u_2} D] (L : Functor C D) (W : MorphismProperty C) [L.IsLocalization W] [W.HasLeftCalculusOfFractions] {X Y : C} (f : L.obj X L.obj Y) :
                                              ∃ (φ : W.LeftFraction X Y), f = φ.map L
                                              theorem CategoryTheory.MorphismProperty.map_eq_iff_postcomp {C : Type u_1} {D : Type u_2} [Category.{u_3, u_1} C] [Category.{u_4, u_2} D] (L : Functor C D) (W : MorphismProperty C) [L.IsLocalization W] [W.HasLeftCalculusOfFractions] {X Y : C} (f₁ f₂ : X Y) :
                                              L.map f₁ = L.map f₂ ∃ (Z : C) (s : Y Z) (_ : W s), CategoryStruct.comp f₁ s = CategoryStruct.comp f₂ s

                                              The right fraction in the opposite category corresponding to a left fraction.

                                              Equations
                                              Instances For
                                                @[simp]
                                                @[simp]

                                                The left fraction in the opposite category corresponding to a right fraction.

                                                Equations
                                                Instances For
                                                  @[simp]
                                                  @[simp]

                                                  The right fraction corresponding to a left fraction in the opposite category.

                                                  Equations
                                                  Instances For

                                                    The left fraction corresponding to a right fraction in the opposite category.

                                                    Equations
                                                    Instances For
                                                      theorem CategoryTheory.MorphismProperty.RightFraction.op_map {C : Type u_1} {D : Type u_2} [Category.{u_3, u_1} C] [Category.{u_4, u_2} D] {W : MorphismProperty C} {X Y : C} (φ : W.RightFraction X Y) (L : Functor C D) (hL : W.IsInvertedBy L) :
                                                      (φ.map L hL).op = φ.op.map L.op
                                                      theorem CategoryTheory.MorphismProperty.LeftFraction.op_map {C : Type u_1} {D : Type u_2} [Category.{u_3, u_1} C] [Category.{u_4, u_2} D] {W : MorphismProperty C} {X Y : C} (φ : W.LeftFraction X Y) (L : Functor C D) (hL : W.IsInvertedBy L) :
                                                      (φ.map L hL).op = φ.op.map L.op

                                                      The equivalence relation on right fractions for a morphism property W.

                                                      Equations
                                                      • One or more equations did not get rendered due to their size.
                                                      Instances For
                                                        theorem CategoryTheory.MorphismProperty.LeftFractionRel.op {C : Type u_1} [Category.{u_3, u_1} C] {W : MorphismProperty C} {X Y : C} {z₁ z₂ : W.LeftFraction X Y} (h : LeftFractionRel z₁ z₂) :
                                                        theorem CategoryTheory.MorphismProperty.RightFractionRel.trans {C : Type u_1} [Category.{u_3, u_1} C] {W : MorphismProperty C} {X Y : C} {z₁ z₂ z₃ : W.RightFraction X Y} [W.HasRightCalculusOfFractions] (h₁₂ : RightFractionRel z₁ z₂) (h₂₃ : RightFractionRel z₂ z₃) :
                                                        theorem CategoryTheory.Localization.exists_rightFraction {C : Type u_1} {D : Type u_2} [Category.{u_4, u_1} C] [Category.{u_3, u_2} D] (L : Functor C D) (W : MorphismProperty C) [L.IsLocalization W] [W.HasRightCalculusOfFractions] {X Y : C} (f : L.obj X L.obj Y) :
                                                        ∃ (φ : W.RightFraction X Y), f = φ.map L
                                                        theorem CategoryTheory.MorphismProperty.map_eq_iff_precomp {C : Type u_1} {D : Type u_2} [Category.{u_3, u_1} C] [Category.{u_4, u_2} D] (L : Functor C D) (W : MorphismProperty C) [L.IsLocalization W] [W.HasRightCalculusOfFractions] {Y Z : C} (f₁ f₂ : Y Z) :
                                                        L.map f₁ = L.map f₂ ∃ (X : C) (s : X Y) (_ : W s), CategoryStruct.comp s f₁ = CategoryStruct.comp s f₂