Documentation

Mathlib.CategoryTheory.DifferentialObject

Differential objects in a category. #

A differential object in a category with zero morphisms and a shift is an object X equipped with a morphism d : obj ⟶ obj⟦1⟧, such that d^2 = 0.

We build the category of differential objects, and some basic constructions such as the forgetful functor, zero morphisms and zero objects, and the shift functor on differential objects.

A differential object in a category with zero morphisms and a shift is an object obj equipped with a morphism d : obj ⟶ obj⟦1⟧, such that d^2 = 0.

Instances For

    A morphism of differential objects is a morphism commuting with the differentials.

    Instances For
      theorem CategoryTheory.DifferentialObject.Hom.ext {S : Type u_1} {inst✝ : AddMonoidWithOne S} {C : Type u} {inst✝¹ : Category.{v, u} C} {inst✝² : Limits.HasZeroMorphisms C} {inst✝³ : HasShift C S} {X Y : DifferentialObject S C} {x y : X.Hom Y} (f : x.f = y.f) :
      x = y

      The identity morphism of a differential object.

      Equations
      Instances For
        def CategoryTheory.DifferentialObject.Hom.comp {S : Type u_1} [AddMonoidWithOne S] {C : Type u} [Category.{v, u} C] [Limits.HasZeroMorphisms C] [HasShift C S] {X Y Z : DifferentialObject S C} (f : X.Hom Y) (g : Y.Hom Z) :
        X.Hom Z

        The composition of morphisms of differential objects.

        Equations
        Instances For
          @[simp]
          theorem CategoryTheory.DifferentialObject.Hom.comp_f {S : Type u_1} [AddMonoidWithOne S] {C : Type u} [Category.{v, u} C] [Limits.HasZeroMorphisms C] [HasShift C S] {X Y Z : DifferentialObject S C} (f : X.Hom Y) (g : Y.Hom Z) :
          (f.comp g).f = CategoryStruct.comp f.f g.f
          theorem CategoryTheory.DifferentialObject.ext {S : Type u_1} [AddMonoidWithOne S] {C : Type u} [Category.{v, u} C] [Limits.HasZeroMorphisms C] [HasShift C S] {A B : DifferentialObject S C} {f g : A B} (w : f.f = g.f := by aesop_cat) :
          f = g

          The forgetful functor taking a differential object to its underlying object.

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

            An isomorphism of differential objects gives an isomorphism of the underlying objects.

            Equations
            Instances For
              @[simp]
              @[simp]

              An isomorphism of differential objects can be constructed from an isomorphism of the underlying objects that commutes with the differentials.

              Equations
              Instances For
                @[simp]
                theorem CategoryTheory.DifferentialObject.mkIso_hom_f {S : Type u_1} [AddMonoidWithOne S] {C : Type u} [Category.{v, u} C] [Limits.HasZeroMorphisms C] [HasShift C S] {X Y : DifferentialObject S C} (f : X.obj Y.obj) (hf : CategoryStruct.comp X.d ((CategoryTheory.shiftFunctor C 1).map f.hom) = CategoryStruct.comp f.hom Y.d) :
                (mkIso f hf).hom.f = f.hom
                @[simp]
                theorem CategoryTheory.DifferentialObject.mkIso_inv_f {S : Type u_1} [AddMonoidWithOne S] {C : Type u} [Category.{v, u} C] [Limits.HasZeroMorphisms C] [HasShift C S] {X Y : DifferentialObject S C} (f : X.obj Y.obj) (hf : CategoryStruct.comp X.d ((CategoryTheory.shiftFunctor C 1).map f.hom) = CategoryStruct.comp f.hom Y.d) :
                (mkIso f hf).inv.f = f.inv
                def CategoryTheory.Functor.mapDifferentialObject {S : Type u_1} [AddMonoidWithOne S] {C : Type u} [Category.{v, u} C] [Limits.HasZeroMorphisms C] [HasShift C S] (D : Type u') [Category.{v', u'} D] [Limits.HasZeroMorphisms D] [HasShift D S] (F : Functor C D) (η : (shiftFunctor C 1).comp F F.comp (shiftFunctor D 1)) (hF : ∀ (c c' : C), F.map 0 = 0) :

                A functor F : C ⥤ D which commutes with shift functors on C and D and preserves zero morphisms can be lifted to a functor DifferentialObject S C ⥤ DifferentialObject S D.

                Equations
                • One or more equations did not get rendered due to their size.
                Instances For
                  @[simp]
                  theorem CategoryTheory.Functor.mapDifferentialObject_obj_obj {S : Type u_1} [AddMonoidWithOne S] {C : Type u} [Category.{v, u} C] [Limits.HasZeroMorphisms C] [HasShift C S] (D : Type u') [Category.{v', u'} D] [Limits.HasZeroMorphisms D] [HasShift D S] (F : Functor C D) (η : (shiftFunctor C 1).comp F F.comp (shiftFunctor D 1)) (hF : ∀ (c c' : C), F.map 0 = 0) (X : DifferentialObject S C) :
                  ((mapDifferentialObject D F η hF).obj X).obj = F.obj X.obj
                  @[simp]
                  theorem CategoryTheory.Functor.mapDifferentialObject_obj_d {S : Type u_1} [AddMonoidWithOne S] {C : Type u} [Category.{v, u} C] [Limits.HasZeroMorphisms C] [HasShift C S] (D : Type u') [Category.{v', u'} D] [Limits.HasZeroMorphisms D] [HasShift D S] (F : Functor C D) (η : (shiftFunctor C 1).comp F F.comp (shiftFunctor D 1)) (hF : ∀ (c c' : C), F.map 0 = 0) (X : DifferentialObject S C) :
                  ((mapDifferentialObject D F η hF).obj X).d = CategoryStruct.comp (F.map X.d) (η.app X.obj)
                  @[simp]
                  theorem CategoryTheory.Functor.mapDifferentialObject_map_f {S : Type u_1} [AddMonoidWithOne S] {C : Type u} [Category.{v, u} C] [Limits.HasZeroMorphisms C] [HasShift C S] (D : Type u') [Category.{v', u'} D] [Limits.HasZeroMorphisms D] [HasShift D S] (F : Functor C D) (η : (shiftFunctor C 1).comp F F.comp (shiftFunctor D 1)) (hF : ∀ (c c' : C), F.map 0 = 0) {X✝ Y✝ : DifferentialObject S C} (f : X✝ Y✝) :
                  ((mapDifferentialObject D F η hF).map f).f = F.map f.f

                  The category of differential objects itself has a shift functor.

                  The shift functor on DifferentialObject S C.

                  Equations
                  • One or more equations did not get rendered due to their size.
                  Instances For
                    @[simp]
                    theorem CategoryTheory.DifferentialObject.shiftFunctor_map_f {S : Type u_1} [AddCommGroupWithOne S] (C : Type u) [Category.{v, u} C] [Limits.HasZeroMorphisms C] [HasShift C S] (n : S) {X✝ Y✝ : DifferentialObject S C} (f : X✝ Y✝) :
                    ((shiftFunctor C n).map f).f = (CategoryTheory.shiftFunctor C n).map f.f

                    The shift functor on DifferentialObject S C is additive.

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

                      The shift by zero is naturally isomorphic to the identity.

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