Documentation

Mathlib.Algebra.Homology.HomotopyCategory.HomComplexSingle

Cochains from or to single complexes #

We introduce constructors Cochain.fromSingleMk and Cocycle.fromSingleMk for cochains and cocycles from a single complex. We also introduce similar definitions for cochains and cocyles to a single complex.

Constructor for cochains from a single complex.

Equations
    Instances For
      theorem CochainComplex.HomComplex.Cochain.fromSingleMk_v_eq_zero {C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Preadditive C] [CategoryTheory.Limits.HasZeroObject C] {X : C} {K : CochainComplex C } {p q : } (f : X K.X q) {n : } (h : p + n = q) (p' q' : ) (hpq' : p' + n = q') (hp' : p' p) :
      (fromSingleMk f h).v p' q' hpq' = 0

      Cochains of degree n from (singleFunctor C p).obj X to K identify to X ⟶ K.X q when p + n = q.

      Equations
        Instances For

          Constructor for cochains to a single complex.

          Equations
            Instances For
              theorem CochainComplex.HomComplex.Cochain.toSingleMk_v_eq_zero {C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Preadditive C] [CategoryTheory.Limits.HasZeroObject C] {X : C} {K : CochainComplex C } {p q : } (f : K.X p X) {n : } (h : p + n = q) (p' q' : ) (hpq' : p' + n = q') (hp' : p' p) :
              (toSingleMk f h).v p' q' hpq' = 0

              Cochains of degree n from (singleFunctor C q).obj X to K identify to K.X p ⟶ X when p + n = q.

              Equations
                Instances For
                  noncomputable def CochainComplex.HomComplex.Cocycle.fromSingleMk {C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Preadditive C] [CategoryTheory.Limits.HasZeroObject C] {X : C} {K : CochainComplex C } {p q : } (f : X K.X q) {n : } (h : p + n = q) (q' : ) (hq' : q + 1 = q') (hf : CategoryTheory.CategoryStruct.comp f (K.d q q') = 0) :
                  Cocycle ((singleFunctor C p).obj X) K n

                  Constructor for cocycles from a single complex.

                  Equations
                    Instances For
                      @[simp]
                      theorem CochainComplex.HomComplex.Cocycle.fromSingleMk_coe {C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Preadditive C] [CategoryTheory.Limits.HasZeroObject C] {X : C} {K : CochainComplex C } {p q : } (f : X K.X q) {n : } (h : p + n = q) (q' : ) (hq' : q + 1 = q') (hf : CategoryTheory.CategoryStruct.comp f (K.d q q') = 0) :
                      (fromSingleMk f h q' hq' hf) = Cochain.fromSingleMk f h
                      theorem CochainComplex.HomComplex.Cocycle.fromSingleMk_precomp {C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Preadditive C] [CategoryTheory.Limits.HasZeroObject C] {X : C} {K : CochainComplex C } {X' : C} (g : X' X) {p q : } (f : X K.X q) {n : } (h : p + n = q) (q' : ) (hq' : q + 1 = q') (hf : CategoryTheory.CategoryStruct.comp f (K.d q q') = 0) :
                      theorem CochainComplex.HomComplex.Cocycle.fromSingleMk_surjective {C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Preadditive C] [CategoryTheory.Limits.HasZeroObject C] {X : C} {K : CochainComplex C } {p n : } (α : Cocycle ((singleFunctor C p).obj X) K n) (q : ) (h : p + n = q) (q' : ) (hq' : q + 1 = q') :
                      ∃ (f : X K.X q) (hf : CategoryTheory.CategoryStruct.comp f (K.d q q') = 0), fromSingleMk f h q' hq' hf = α
                      theorem CochainComplex.HomComplex.Cocycle.fromSingleMk_add {C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Preadditive C] [CategoryTheory.Limits.HasZeroObject C] {X : C} {K : CochainComplex C } {p q : } (f g : X K.X q) {n : } (h : p + n = q) (q' : ) (hq' : q + 1 = q') (hf : CategoryTheory.CategoryStruct.comp f (K.d q q') = 0) (hg : CategoryTheory.CategoryStruct.comp g (K.d q q') = 0) :
                      fromSingleMk (f + g) h q' hq' = fromSingleMk f h q' hq' hf + fromSingleMk g h q' hq' hg
                      theorem CochainComplex.HomComplex.Cocycle.fromSingleMk_sub {C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Preadditive C] [CategoryTheory.Limits.HasZeroObject C] {X : C} {K : CochainComplex C } {p q : } (f g : X K.X q) {n : } (h : p + n = q) (q' : ) (hq' : q + 1 = q') (hf : CategoryTheory.CategoryStruct.comp f (K.d q q') = 0) (hg : CategoryTheory.CategoryStruct.comp g (K.d q q') = 0) :
                      fromSingleMk (f - g) h q' hq' = fromSingleMk f h q' hq' hf - fromSingleMk g h q' hq' hg
                      theorem CochainComplex.HomComplex.Cocycle.fromSingleMk_neg {C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Preadditive C] [CategoryTheory.Limits.HasZeroObject C] {X : C} {K : CochainComplex C } {p q : } (f : X K.X q) {n : } (h : p + n = q) (q' : ) (hq' : q + 1 = q') (hf : CategoryTheory.CategoryStruct.comp f (K.d q q') = 0) :
                      fromSingleMk (-f) h q' hq' = -fromSingleMk f h q' hq' hf
                      theorem CochainComplex.HomComplex.Cocycle.fromSingleMk_mem_coboundaries_iff {C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Preadditive C] [CategoryTheory.Limits.HasZeroObject C] {X : C} {K : CochainComplex C } {p q : } (f : X K.X q) {n : } (h : p + n = q) (q' : ) (hq' : q + 1 = q') (hf : CategoryTheory.CategoryStruct.comp f (K.d q q') = 0) (q'' : ) (hq'' : q'' + 1 = q) :
                      fromSingleMk f h q' hq' hf coboundaries ((singleFunctor C p).obj X) K n ∃ (g : X K.X q''), CategoryTheory.CategoryStruct.comp g (K.d q'' q) = f
                      noncomputable def CochainComplex.HomComplex.Cocycle.toSingleMk {C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Preadditive C] [CategoryTheory.Limits.HasZeroObject C] {X : C} {K : CochainComplex C } {p q : } (f : K.X p X) {n : } (h : p + n = q) (p' : ) (hp' : p' + 1 = p) (hf : CategoryTheory.CategoryStruct.comp (K.d p' p) f = 0) :
                      Cocycle K ((singleFunctor C q).obj X) n

                      Constructor for cocycles to a single complex.

                      Equations
                        Instances For
                          @[simp]
                          theorem CochainComplex.HomComplex.Cocycle.toSingleMk_coe {C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Preadditive C] [CategoryTheory.Limits.HasZeroObject C] {X : C} {K : CochainComplex C } {p q : } (f : K.X p X) {n : } (h : p + n = q) (p' : ) (hp' : p' + 1 = p) (hf : CategoryTheory.CategoryStruct.comp (K.d p' p) f = 0) :
                          (toSingleMk f h p' hp' hf) = Cochain.toSingleMk f h
                          theorem CochainComplex.HomComplex.Cocycle.toSingleMk_postcomp {C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Preadditive C] [CategoryTheory.Limits.HasZeroObject C] {X : C} {K : CochainComplex C } {p q : } (f : K.X p X) {n : } (h : p + n = q) (p' : ) (hp' : p' + 1 = p) (hf : CategoryTheory.CategoryStruct.comp (K.d p' p) f = 0) {X' : C} (g : X X') :
                          theorem CochainComplex.HomComplex.Cocycle.toSingleMk_precomp {C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Preadditive C] [CategoryTheory.Limits.HasZeroObject C] {X : C} {K : CochainComplex C } {p q : } (f : K.X p X) {n : } (h : p + n = q) (p' : ) (hp' : p' + 1 = p) (hf : CategoryTheory.CategoryStruct.comp (K.d p' p) f = 0) {L : CochainComplex C } (g : L K) :
                          toSingleMk (CategoryTheory.CategoryStruct.comp (g.f p) f) h p' hp' = (toSingleMk f h p' hp' hf).precomp g
                          theorem CochainComplex.HomComplex.Cocycle.toSingleMk_surjective {C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Preadditive C] [CategoryTheory.Limits.HasZeroObject C] {X : C} {K : CochainComplex C } {q n : } (α : Cocycle K ((singleFunctor C q).obj X) n) (p : ) (h : p + n = q) (p' : ) (hp' : p' + 1 = p) :
                          ∃ (f : K.X p X) (hf : CategoryTheory.CategoryStruct.comp (K.d p' p) f = 0), toSingleMk f h p' hp' hf = α
                          theorem CochainComplex.HomComplex.Cocycle.toSingleMk_add {C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Preadditive C] [CategoryTheory.Limits.HasZeroObject C] {X : C} {K : CochainComplex C } {p q : } (f g : K.X p X) {n : } (h : p + n = q) (p' : ) (hp' : p' + 1 = p) (hf : CategoryTheory.CategoryStruct.comp (K.d p' p) f = 0) (hg : CategoryTheory.CategoryStruct.comp (K.d p' p) g = 0) :
                          toSingleMk (f + g) h p' hp' = toSingleMk f h p' hp' hf + toSingleMk g h p' hp' hg
                          theorem CochainComplex.HomComplex.Cocycle.toSingleMk_sub {C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Preadditive C] [CategoryTheory.Limits.HasZeroObject C] {X : C} {K : CochainComplex C } {p q : } (f g : K.X p X) {n : } (h : p + n = q) (p' : ) (hp' : p' + 1 = p) (hf : CategoryTheory.CategoryStruct.comp (K.d p' p) f = 0) (hg : CategoryTheory.CategoryStruct.comp (K.d p' p) g = 0) :
                          toSingleMk (f - g) h p' hp' = toSingleMk f h p' hp' hf - toSingleMk g h p' hp' hg
                          theorem CochainComplex.HomComplex.Cocycle.toSingleMk_neg {C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Preadditive C] [CategoryTheory.Limits.HasZeroObject C] {X : C} {K : CochainComplex C } {p q : } (f : K.X p X) {n : } (h : p + n = q) (p' : ) (hp' : p' + 1 = p) (hf : CategoryTheory.CategoryStruct.comp (K.d p' p) f = 0) :
                          toSingleMk (-f) h p' hp' = -toSingleMk f h p' hp' hf
                          theorem CochainComplex.HomComplex.Cocycle.toSingleMk_mem_coboundaries_iff {C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Preadditive C] [CategoryTheory.Limits.HasZeroObject C] {X : C} {K : CochainComplex C } {p q : } (f : K.X p X) {n : } (h : p + n = q) (p' : ) (hp' : p' + 1 = p) (hf : CategoryTheory.CategoryStruct.comp (K.d p' p) f = 0) (p'' : ) (hp'' : p + 1 = p'') :
                          toSingleMk f h p' hp' hf coboundaries K ((singleFunctor C q).obj X) n ∃ (g : K.X p'' X), CategoryTheory.CategoryStruct.comp (K.d p p'') g = f