Documentation

Mathlib.CategoryTheory.Idempotents.Karoubi

The Karoubi envelope of a category #

In this file, we define the Karoubi envelope Karoubi C of a category C.

Main constructions and definitions #

structure CategoryTheory.Idempotents.Karoubi (C : Type u_1) [Category.{u_2, u_1} C] :
Type (max u_1 u_2)

In a preadditive category C, when an object X decomposes as X ≅ P ⨿ Q, one may consider P as a direct factor of X and up to unique isomorphism, it is determined by the obvious idempotent X ⟶ P ⟶ X which is the projection onto P with kernel Q. More generally, one may define a formal direct factor of an object X : C : it consists of an idempotent p : XX which is thought as the "formal image" of p. The type Karoubi C shall be the type of the objects of the karoubi envelope of C. It makes sense for any category C.

  • X : C

    an object of the underlying category

  • p : self.X self.X

    an endomorphism of the object

  • idem : CategoryStruct.comp self.p self.p = self.p

    the condition that the given endomorphism is an idempotent

Instances For

    A morphism P ⟶ Q in the category Karoubi C is a morphism in the underlying category C which satisfies a relation, which in the preadditive case, expresses that it induces a map between the corresponding "formal direct factors" and that it vanishes on the complement formal direct factor.

    Instances For
      theorem CategoryTheory.Idempotents.Karoubi.Hom.ext_iff {C : Type u_1} {inst✝ : Category.{u_2, u_1} C} {P Q : Karoubi C} {x y : P.Hom Q} :
      x = y x.f = y.f
      theorem CategoryTheory.Idempotents.Karoubi.Hom.ext {C : Type u_1} {inst✝ : Category.{u_2, u_1} C} {P Q : Karoubi C} {x y : P.Hom Q} (f : x.f = y.f) :
      x = y

      The category structure on the karoubi envelope of a category.

      Equations
        @[simp]
        theorem CategoryTheory.Idempotents.Karoubi.hom_ext_iff {C : Type u_1} [Category.{u_2, u_1} C] {P Q : Karoubi C} {f g : P Q} :
        f = g f.f = g.f
        theorem CategoryTheory.Idempotents.Karoubi.hom_ext {C : Type u_1} [Category.{u_2, u_1} C] {P Q : Karoubi C} (f g : P Q) (h : f.f = g.f) :
        f = g
        @[simp]

        It is possible to coerce an object of C into an object of Karoubi C. See also the functor toKaroubi.

        Equations
          theorem CategoryTheory.Idempotents.Karoubi.coe_X {C : Type u_1} [Category.{u_2, u_1} C] (X : C) :
          { X := X, p := CategoryStruct.id X, idem := }.X = X
          @[simp]
          theorem CategoryTheory.Idempotents.Karoubi.coe_p {C : Type u_1} [Category.{u_2, u_1} C] (X : C) :
          { X := X, p := CategoryStruct.id X, idem := }.p = CategoryStruct.id X

          The obvious fully faithful functor toKaroubi sends an object X : C to the obvious formal direct factor of X given by 𝟙 X.

          Equations
            Instances For
              @[simp]
              theorem CategoryTheory.Idempotents.toKaroubi_map_f (C : Type u_1) [Category.{u_2, u_1} C] {X✝ Y✝ : C} (f : X✝ Y✝) :
              ((toKaroubi C).map f).f = f
              Equations
                @[simp]
                theorem CategoryTheory.Idempotents.add_def {C : Type u_1} [Category.{u_2, u_1} C] [Preadditive C] {P Q : Karoubi C} (f g : P Q) :
                f + g = { f := f.f + g.f, comm := }
                Equations
                  @[simp]
                  theorem CategoryTheory.Idempotents.neg_def {C : Type u_1} [Category.{u_2, u_1} C] [Preadditive C] {P Q : Karoubi C} (f : P Q) :
                  -f = { f := -f.f, comm := }
                  @[simp]
                  theorem CategoryTheory.Idempotents.zero_def {C : Type u_1} [Category.{u_2, u_1} C] [Preadditive C] {P Q : Karoubi C} :
                  0 = { f := 0, comm := }

                  The map sending f : P ⟶ Q to f.f : P.X ⟶ Q.X is additive.

                  Equations
                    Instances For
                      @[simp]
                      theorem CategoryTheory.Idempotents.Karoubi.sum_hom {C : Type u_1} [Category.{u_3, u_1} C] [Preadditive C] {P Q : Karoubi C} {α : Type u_2} (s : Finset α) (f : α → (P Q)) :
                      (∑ xs, f x).f = xs, (f x).f

                      The category Karoubi C is preadditive if C is.

                      Equations

                        If C is idempotent complete, the functor toKaroubi : C ⥤ Karoubi C is an equivalence.

                        The equivalence C ≅ Karoubi C when C is idempotent complete.

                        Equations
                          Instances For
                            def CategoryTheory.Idempotents.Karoubi.decompId_i {C : Type u_1} [Category.{u_2, u_1} C] (P : Karoubi C) :
                            P { X := P.X, p := CategoryStruct.id P.X, idem := }

                            The split mono which appears in the factorisation decompId P.

                            Equations
                              Instances For
                                def CategoryTheory.Idempotents.Karoubi.decompId_p {C : Type u_1} [Category.{u_2, u_1} C] (P : Karoubi C) :
                                { X := P.X, p := CategoryStruct.id P.X, idem := } P

                                The split epi which appears in the factorisation decompId P.

                                Equations
                                  Instances For

                                    The formal direct factor of P.X given by the idempotent P.p in the category C is actually a direct factor in the category Karoubi C.

                                    @[simp]
                                    theorem CategoryTheory.Idempotents.Karoubi.zsmul_hom {C : Type u_1} [Category.{u_2, u_1} C] [Preadditive C] {P Q : Karoubi C} (n : ) (f : P Q) :
                                    (n f).f = n f.f