Loogle!
Result
Found 86 declarations mentioning CategoryTheory.Functor.shift.
- CategoryTheory.Functor.shift 📋 Mathlib.CategoryTheory.Shift.ShiftSequence
{C : Type u_1} {A : Type u_3} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_3, u_3} A] (F : CategoryTheory.Functor C A) {M : Type u_4} [AddMonoid M] [CategoryTheory.HasShift C M] [F.ShiftSequence M] (n : M) : CategoryTheory.Functor C A - CategoryTheory.Functor.isoShiftZero 📋 Mathlib.CategoryTheory.Shift.ShiftSequence
{C : Type u_1} {A : Type u_3} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_3, u_3} A] (F : CategoryTheory.Functor C A) (M : Type u_4) [AddMonoid M] [CategoryTheory.HasShift C M] [F.ShiftSequence M] : F.shift 0 ≅ F - CategoryTheory.Functor.isoShift 📋 Mathlib.CategoryTheory.Shift.ShiftSequence
{C : Type u_1} {A : Type u_3} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_3, u_3} A] (F : CategoryTheory.Functor C A) {M : Type u_4} [AddMonoid M] [CategoryTheory.HasShift C M] [F.ShiftSequence M] (n : M) : (CategoryTheory.shiftFunctor C n).comp F ≅ F.shift n - CategoryTheory.Functor.instAdditiveShift 📋 Mathlib.CategoryTheory.Shift.ShiftSequence
{C : Type u_1} {A : Type u_3} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_3, u_3} A] (F : CategoryTheory.Functor C A) {M : Type u_4} [AddMonoid M] [CategoryTheory.HasShift C M] [F.ShiftSequence M] [CategoryTheory.Preadditive C] [CategoryTheory.Preadditive A] [F.Additive] [∀ (n : M), (CategoryTheory.shiftFunctor C n).Additive] (n : M) : (F.shift n).Additive - CategoryTheory.Functor.instPreservesZeroMorphismsShift 📋 Mathlib.CategoryTheory.Shift.ShiftSequence
{C : Type u_1} {A : Type u_3} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_3, u_3} A] (F : CategoryTheory.Functor C A) {M : Type u_4} [AddMonoid M] [CategoryTheory.HasShift C M] [F.ShiftSequence M] [CategoryTheory.Limits.HasZeroMorphisms C] [CategoryTheory.Limits.HasZeroMorphisms A] [F.PreservesZeroMorphisms] [∀ (n : M), (CategoryTheory.shiftFunctor C n).PreservesZeroMorphisms] (n : M) : (F.shift n).PreservesZeroMorphisms - CategoryTheory.Functor.shiftIso 📋 Mathlib.CategoryTheory.Shift.ShiftSequence
{C : Type u_1} {A : Type u_3} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_3, u_3} A] (F : CategoryTheory.Functor C A) {M : Type u_4} [AddMonoid M] [CategoryTheory.HasShift C M] [F.ShiftSequence M] (n a a' : M) (ha' : n + a = a') : (CategoryTheory.shiftFunctor C n).comp (F.shift a) ≅ F.shift a' - CategoryTheory.Functor.shiftMap 📋 Mathlib.CategoryTheory.Shift.ShiftSequence
{C : Type u_1} {A : Type u_3} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_3, u_3} A] (F : CategoryTheory.Functor C A) {M : Type u_4} [AddMonoid M] [CategoryTheory.HasShift C M] [F.ShiftSequence M] {X Y : C} {n : M} (f : X ⟶ (CategoryTheory.shiftFunctor C n).obj Y) (a a' : M) (ha' : n + a = a') : (F.shift a).obj X ⟶ (F.shift a').obj Y - CategoryTheory.Functor.ShiftSequence.leftComp_sequence 📋 Mathlib.CategoryTheory.Shift.ShiftSequence
{C : Type u_1} {D : Type u_2} {A : Type u_3} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] [CategoryTheory.Category.{v_3, u_3} A] {F : CategoryTheory.Functor C A} {π : CategoryTheory.Functor C D} {H : CategoryTheory.Functor D A} (e : π.comp H ≅ F) (M : Type u_4) [AddMonoid M] [CategoryTheory.HasShift C M] [CategoryTheory.HasShift D M] [π.CommShift M] [H.ShiftSequence M] (n : M) : CategoryTheory.Functor.ShiftSequence.sequence F n = π.comp (H.shift n) - CategoryTheory.Functor.ShiftSequence.leftComp_isoZero 📋 Mathlib.CategoryTheory.Shift.ShiftSequence
{C : Type u_1} {D : Type u_2} {A : Type u_3} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] [CategoryTheory.Category.{v_3, u_3} A] {F : CategoryTheory.Functor C A} {π : CategoryTheory.Functor C D} {H : CategoryTheory.Functor D A} (e : π.comp H ≅ F) (M : Type u_4) [AddMonoid M] [CategoryTheory.HasShift C M] [CategoryTheory.HasShift D M] [π.CommShift M] [H.ShiftSequence M] : CategoryTheory.Functor.ShiftSequence.isoZero = π.isoWhiskerLeft (H.isoShiftZero M) ≪≫ e - CategoryTheory.Functor.shiftMap_comp' 📋 Mathlib.CategoryTheory.Shift.ShiftSequence
{C : Type u_1} {A : Type u_3} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_3, u_3} A] (F : CategoryTheory.Functor C A) {M : Type u_4} [AddMonoid M] [CategoryTheory.HasShift C M] [F.ShiftSequence M] {X Y Z : C} {n : M} (f : X ⟶ Y) (g : Y ⟶ (CategoryTheory.shiftFunctor C n).obj Z) (a a' : M) (ha' : n + a = a') : F.shiftMap (CategoryTheory.CategoryStruct.comp f g) a a' ha' = CategoryTheory.CategoryStruct.comp ((F.shift a).map f) (F.shiftMap g a a' ha') - CategoryTheory.Functor.shiftIso_zero 📋 Mathlib.CategoryTheory.Shift.ShiftSequence
{C : Type u_1} {A : Type u_3} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_3, u_3} A] (F : CategoryTheory.Functor C A) {M : Type u_4} [AddMonoid M] [CategoryTheory.HasShift C M] [F.ShiftSequence M] (a : M) : F.shiftIso 0 a a ⋯ = CategoryTheory.Functor.isoWhiskerRight (CategoryTheory.shiftFunctorZero C M) (F.shift a) ≪≫ (F.shift a).leftUnitor - CategoryTheory.Functor.shiftMap_comp 📋 Mathlib.CategoryTheory.Shift.ShiftSequence
{C : Type u_1} {A : Type u_3} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_3, u_3} A] (F : CategoryTheory.Functor C A) {M : Type u_4} [AddMonoid M] [CategoryTheory.HasShift C M] [F.ShiftSequence M] {X Y Z : C} {n : M} (f : X ⟶ (CategoryTheory.shiftFunctor C n).obj Y) (g : Y ⟶ Z) (a a' : M) (ha' : n + a = a') : F.shiftMap (CategoryTheory.CategoryStruct.comp f ((CategoryTheory.shiftFunctor C n).map g)) a a' ha' = CategoryTheory.CategoryStruct.comp (F.shiftMap f a a' ha') ((F.shift a').map g) - CategoryTheory.Functor.shiftMap_zero 📋 Mathlib.CategoryTheory.Shift.ShiftSequence
{C : Type u_1} {A : Type u_3} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_3, u_3} A] (F : CategoryTheory.Functor C A) {M : Type u_4} [AddMonoid M] [CategoryTheory.HasShift C M] [F.ShiftSequence M] [CategoryTheory.Limits.HasZeroMorphisms C] [CategoryTheory.Limits.HasZeroMorphisms A] [F.PreservesZeroMorphisms] [∀ (n : M), (CategoryTheory.shiftFunctor C n).PreservesZeroMorphisms] (X Y : C) (n a a' : M) (ha' : n + a = a') : F.shiftMap 0 a a' ha' = 0 - CategoryTheory.Functor.shiftMap_comp'_assoc 📋 Mathlib.CategoryTheory.Shift.ShiftSequence
{C : Type u_1} {A : Type u_3} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_3, u_3} A] (F : CategoryTheory.Functor C A) {M : Type u_4} [AddMonoid M] [CategoryTheory.HasShift C M] [F.ShiftSequence M] {X Y Z : C} {n : M} (f : X ⟶ Y) (g : Y ⟶ (CategoryTheory.shiftFunctor C n).obj Z) (a a' : M) (ha' : n + a = a') {Z✝ : A} (h : (F.shift a').obj Z ⟶ Z✝) : CategoryTheory.CategoryStruct.comp (F.shiftMap (CategoryTheory.CategoryStruct.comp f g) a a' ha') h = CategoryTheory.CategoryStruct.comp ((F.shift a).map f) (CategoryTheory.CategoryStruct.comp (F.shiftMap g a a' ha') h) - CategoryTheory.Functor.shiftIso_zero_hom_app 📋 Mathlib.CategoryTheory.Shift.ShiftSequence
{C : Type u_1} {A : Type u_3} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_3, u_3} A] (F : CategoryTheory.Functor C A) {M : Type u_4} [AddMonoid M] [CategoryTheory.HasShift C M] [F.ShiftSequence M] (a : M) (X : C) : (F.shiftIso 0 a a ⋯).hom.app X = (F.shift a).map ((CategoryTheory.shiftFunctorZero C M).hom.app X) - CategoryTheory.Functor.shiftIso_zero_inv_app 📋 Mathlib.CategoryTheory.Shift.ShiftSequence
{C : Type u_1} {A : Type u_3} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_3, u_3} A] (F : CategoryTheory.Functor C A) {M : Type u_4} [AddMonoid M] [CategoryTheory.HasShift C M] [F.ShiftSequence M] (a : M) (X : C) : (F.shiftIso 0 a a ⋯).inv.app X = (F.shift a).map ((CategoryTheory.shiftFunctorZero C M).inv.app X) - CategoryTheory.Functor.shiftMap_comp_assoc 📋 Mathlib.CategoryTheory.Shift.ShiftSequence
{C : Type u_1} {A : Type u_3} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_3, u_3} A] (F : CategoryTheory.Functor C A) {M : Type u_4} [AddMonoid M] [CategoryTheory.HasShift C M] [F.ShiftSequence M] {X Y Z : C} {n : M} (f : X ⟶ (CategoryTheory.shiftFunctor C n).obj Y) (g : Y ⟶ Z) (a a' : M) (ha' : n + a = a') {Z✝ : A} (h : (F.shift a').obj Z ⟶ Z✝) : CategoryTheory.CategoryStruct.comp (F.shiftMap (CategoryTheory.CategoryStruct.comp f ((CategoryTheory.shiftFunctor C n).map g)) a a' ha') h = CategoryTheory.CategoryStruct.comp (F.shiftMap f a a' ha') (CategoryTheory.CategoryStruct.comp ((F.shift a').map g) h) - CategoryTheory.Functor.isoShift_hom_naturality 📋 Mathlib.CategoryTheory.Shift.ShiftSequence
{C : Type u_1} {A : Type u_3} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_3, u_3} A] (F : CategoryTheory.Functor C A) {M : Type u_4} [AddMonoid M] [CategoryTheory.HasShift C M] [F.ShiftSequence M] (n : M) {X Y : C} (f : X ⟶ Y) : CategoryTheory.CategoryStruct.comp (F.map ((CategoryTheory.shiftFunctor C n).map f)) ((F.isoShift n).hom.app Y) = CategoryTheory.CategoryStruct.comp ((F.isoShift n).hom.app X) ((F.shift n).map f) - CategoryTheory.Functor.isoShift_inv_naturality 📋 Mathlib.CategoryTheory.Shift.ShiftSequence
{C : Type u_1} {A : Type u_3} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_3, u_3} A] (F : CategoryTheory.Functor C A) {M : Type u_4} [AddMonoid M] [CategoryTheory.HasShift C M] [F.ShiftSequence M] (n : M) {X Y : C} (f : X ⟶ Y) : CategoryTheory.CategoryStruct.comp ((F.shift n).map f) ((F.isoShift n).inv.app Y) = CategoryTheory.CategoryStruct.comp ((F.isoShift n).inv.app X) (F.map ((CategoryTheory.shiftFunctor C n).map f)) - CategoryTheory.Functor.isoShift_hom_naturality_assoc 📋 Mathlib.CategoryTheory.Shift.ShiftSequence
{C : Type u_1} {A : Type u_3} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_3, u_3} A] (F : CategoryTheory.Functor C A) {M : Type u_4} [AddMonoid M] [CategoryTheory.HasShift C M] [F.ShiftSequence M] (n : M) {X Y : C} (f : X ⟶ Y) {Z : A} (h : (F.shift n).obj Y ⟶ Z) : CategoryTheory.CategoryStruct.comp (F.map ((CategoryTheory.shiftFunctor C n).map f)) (CategoryTheory.CategoryStruct.comp ((F.isoShift n).hom.app Y) h) = CategoryTheory.CategoryStruct.comp ((F.isoShift n).hom.app X) (CategoryTheory.CategoryStruct.comp ((F.shift n).map f) h) - CategoryTheory.Functor.isoShift_inv_naturality_assoc 📋 Mathlib.CategoryTheory.Shift.ShiftSequence
{C : Type u_1} {A : Type u_3} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_3, u_3} A] (F : CategoryTheory.Functor C A) {M : Type u_4} [AddMonoid M] [CategoryTheory.HasShift C M] [F.ShiftSequence M] (n : M) {X Y : C} (f : X ⟶ Y) {Z : A} (h : F.obj ((CategoryTheory.shiftFunctor C n).obj Y) ⟶ Z) : CategoryTheory.CategoryStruct.comp ((F.shift n).map f) (CategoryTheory.CategoryStruct.comp ((F.isoShift n).inv.app Y) h) = CategoryTheory.CategoryStruct.comp ((F.isoShift n).inv.app X) (CategoryTheory.CategoryStruct.comp (F.map ((CategoryTheory.shiftFunctor C n).map f)) h) - CategoryTheory.Functor.shiftIso_hom_naturality 📋 Mathlib.CategoryTheory.Shift.ShiftSequence
{C : Type u_1} {A : Type u_3} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_3, u_3} A] (F : CategoryTheory.Functor C A) {M : Type u_4} [AddMonoid M] [CategoryTheory.HasShift C M] [F.ShiftSequence M] {X Y : C} (n a a' : M) (ha' : n + a = a') (f : X ⟶ Y) : CategoryTheory.CategoryStruct.comp ((F.shift a).map ((CategoryTheory.shiftFunctor C n).map f)) ((F.shiftIso n a a' ha').hom.app Y) = CategoryTheory.CategoryStruct.comp ((F.shiftIso n a a' ha').hom.app X) ((F.shift a').map f) - CategoryTheory.Functor.shiftIso_inv_naturality 📋 Mathlib.CategoryTheory.Shift.ShiftSequence
{C : Type u_1} {A : Type u_3} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_3, u_3} A] (F : CategoryTheory.Functor C A) {M : Type u_4} [AddMonoid M] [CategoryTheory.HasShift C M] [F.ShiftSequence M] {X Y : C} (n a a' : M) (ha' : n + a = a') (f : X ⟶ Y) : CategoryTheory.CategoryStruct.comp ((F.shift a').map f) ((F.shiftIso n a a' ha').inv.app Y) = CategoryTheory.CategoryStruct.comp ((F.shiftIso n a a' ha').inv.app X) ((F.shift a).map ((CategoryTheory.shiftFunctor C n).map f)) - CategoryTheory.Functor.shiftIso_add' 📋 Mathlib.CategoryTheory.Shift.ShiftSequence
{C : Type u_1} {A : Type u_3} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_3, u_3} A] (F : CategoryTheory.Functor C A) {M : Type u_4} [AddMonoid M] [CategoryTheory.HasShift C M] [F.ShiftSequence M] (n m mn : M) (hnm : m + n = mn) (a a' a'' : M) (ha' : n + a = a') (ha'' : m + a' = a'') : F.shiftIso mn a a'' ⋯ = CategoryTheory.Functor.isoWhiskerRight (CategoryTheory.shiftFunctorAdd' C m n mn hnm) (F.shift a) ≪≫ (CategoryTheory.shiftFunctor C m).associator (CategoryTheory.shiftFunctor C n) (F.shift a) ≪≫ (CategoryTheory.shiftFunctor C m).isoWhiskerLeft (F.shiftIso n a a' ha') ≪≫ F.shiftIso m a' a'' ha'' - CategoryTheory.Functor.shiftIso_hom_naturality_assoc 📋 Mathlib.CategoryTheory.Shift.ShiftSequence
{C : Type u_1} {A : Type u_3} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_3, u_3} A] (F : CategoryTheory.Functor C A) {M : Type u_4} [AddMonoid M] [CategoryTheory.HasShift C M] [F.ShiftSequence M] {X Y : C} (n a a' : M) (ha' : n + a = a') (f : X ⟶ Y) {Z : A} (h : (F.shift a').obj Y ⟶ Z) : CategoryTheory.CategoryStruct.comp ((F.shift a).map ((CategoryTheory.shiftFunctor C n).map f)) (CategoryTheory.CategoryStruct.comp ((F.shiftIso n a a' ha').hom.app Y) h) = CategoryTheory.CategoryStruct.comp ((F.shiftIso n a a' ha').hom.app X) (CategoryTheory.CategoryStruct.comp ((F.shift a').map f) h) - CategoryTheory.Functor.shiftIso_inv_naturality_assoc 📋 Mathlib.CategoryTheory.Shift.ShiftSequence
{C : Type u_1} {A : Type u_3} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_3, u_3} A] (F : CategoryTheory.Functor C A) {M : Type u_4} [AddMonoid M] [CategoryTheory.HasShift C M] [F.ShiftSequence M] {X Y : C} (n a a' : M) (ha' : n + a = a') (f : X ⟶ Y) {Z : A} (h : (F.shift a).obj ((CategoryTheory.shiftFunctor C n).obj Y) ⟶ Z) : CategoryTheory.CategoryStruct.comp ((F.shift a').map f) (CategoryTheory.CategoryStruct.comp ((F.shiftIso n a a' ha').inv.app Y) h) = CategoryTheory.CategoryStruct.comp ((F.shiftIso n a a' ha').inv.app X) (CategoryTheory.CategoryStruct.comp ((F.shift a).map ((CategoryTheory.shiftFunctor C n).map f)) h) - CategoryTheory.Functor.shiftIso_add 📋 Mathlib.CategoryTheory.Shift.ShiftSequence
{C : Type u_1} {A : Type u_3} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_3, u_3} A] (F : CategoryTheory.Functor C A) {M : Type u_4} [AddMonoid M] [CategoryTheory.HasShift C M] [F.ShiftSequence M] (n m a a' a'' : M) (ha' : n + a = a') (ha'' : m + a' = a'') : F.shiftIso (m + n) a a'' ⋯ = CategoryTheory.Functor.isoWhiskerRight (CategoryTheory.shiftFunctorAdd C m n) (F.shift a) ≪≫ (CategoryTheory.shiftFunctor C m).associator (CategoryTheory.shiftFunctor C n) (F.shift a) ≪≫ (CategoryTheory.shiftFunctor C m).isoWhiskerLeft (F.shiftIso n a a' ha') ≪≫ F.shiftIso m a' a'' ha'' - CategoryTheory.Functor.shiftIso_hom_app_comp_shiftMap_of_add_eq_zero 📋 Mathlib.CategoryTheory.Shift.ShiftSequence
{C : Type u_1} {A : Type u_3} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_3, u_3} A] (F : CategoryTheory.Functor C A) {G : Type u_5} [AddGroup G] [CategoryTheory.HasShift C G] [F.ShiftSequence G] {X Y : C} {m : G} (f : X ⟶ (CategoryTheory.shiftFunctor C m).obj Y) (n : G) (hnm : n + m = 0) (a a' : G) (ha' : m + a = a') : CategoryTheory.CategoryStruct.comp ((F.shiftIso n a' a ⋯).hom.app X) (F.shiftMap f a a' ha') = (F.shift a').map (CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctor C n).map f) ((CategoryTheory.shiftFunctorCompIsoId C m n ⋯).hom.app Y)) - CategoryTheory.Functor.ShiftSequence.leftComp_shiftIso 📋 Mathlib.CategoryTheory.Shift.ShiftSequence
{C : Type u_1} {D : Type u_2} {A : Type u_3} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] [CategoryTheory.Category.{v_3, u_3} A] {F : CategoryTheory.Functor C A} {π : CategoryTheory.Functor C D} {H : CategoryTheory.Functor D A} (e : π.comp H ≅ F) (M : Type u_4) [AddMonoid M] [CategoryTheory.HasShift C M] [CategoryTheory.HasShift D M] [π.CommShift M] [H.ShiftSequence M] (n a a' : M) (ha' : n + a = a') : CategoryTheory.Functor.ShiftSequence.shiftIso n a a' ha' = ((CategoryTheory.shiftFunctor C n).associator π (H.shift a)).symm ≪≫ CategoryTheory.Functor.isoWhiskerRight (CategoryTheory.Functor.commShiftIso π n) (H.shift a) ≪≫ π.associator (CategoryTheory.shiftFunctor D n) (H.shift a) ≪≫ π.isoWhiskerLeft (H.shiftIso n a a' ha') - CategoryTheory.Functor.shiftIso_add'_hom_app 📋 Mathlib.CategoryTheory.Shift.ShiftSequence
{C : Type u_1} {A : Type u_3} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_3, u_3} A] (F : CategoryTheory.Functor C A) {M : Type u_4} [AddMonoid M] [CategoryTheory.HasShift C M] [F.ShiftSequence M] (n m mn : M) (hnm : m + n = mn) (a a' a'' : M) (ha' : n + a = a') (ha'' : m + a' = a'') (X : C) : (F.shiftIso mn a a'' ⋯).hom.app X = CategoryTheory.CategoryStruct.comp ((F.shift a).map ((CategoryTheory.shiftFunctorAdd' C m n mn hnm).hom.app X)) (CategoryTheory.CategoryStruct.comp ((F.shiftIso n a a' ha').hom.app ((CategoryTheory.shiftFunctor C m).obj X)) ((F.shiftIso m a' a'' ha'').hom.app X)) - CategoryTheory.Functor.shiftIso_add'_inv_app 📋 Mathlib.CategoryTheory.Shift.ShiftSequence
{C : Type u_1} {A : Type u_3} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_3, u_3} A] (F : CategoryTheory.Functor C A) {M : Type u_4} [AddMonoid M] [CategoryTheory.HasShift C M] [F.ShiftSequence M] (n m mn : M) (hnm : m + n = mn) (a a' a'' : M) (ha' : n + a = a') (ha'' : m + a' = a'') (X : C) : (F.shiftIso mn a a'' ⋯).inv.app X = CategoryTheory.CategoryStruct.comp ((F.shiftIso m a' a'' ha'').inv.app X) (CategoryTheory.CategoryStruct.comp ((F.shiftIso n a a' ha').inv.app ((CategoryTheory.shiftFunctor C m).obj X)) ((F.shift a).map ((CategoryTheory.shiftFunctorAdd' C m n mn hnm).inv.app X))) - CategoryTheory.Functor.shiftIso_hom_app_comp 📋 Mathlib.CategoryTheory.Shift.ShiftSequence
{C : Type u_1} {A : Type u_3} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_3, u_3} A] (F : CategoryTheory.Functor C A) {M : Type u_4} [AddMonoid M] [CategoryTheory.HasShift C M] [F.ShiftSequence M] (n m mn : M) (hnm : m + n = mn) (a a' a'' : M) (ha' : n + a = a') (ha'' : m + a' = a'') (X : C) : CategoryTheory.CategoryStruct.comp ((F.shiftIso n a a' ha').hom.app ((CategoryTheory.shiftFunctor C m).obj X)) ((F.shiftIso m a' a'' ha'').hom.app X) = CategoryTheory.CategoryStruct.comp ((F.shift a).map ((CategoryTheory.shiftFunctorAdd' C m n mn hnm).inv.app X)) ((F.shiftIso mn a a'' ⋯).hom.app X) - CategoryTheory.Functor.shiftIso_hom_app_comp_shiftMap 📋 Mathlib.CategoryTheory.Shift.ShiftSequence
{C : Type u_1} {A : Type u_3} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_3, u_3} A] (F : CategoryTheory.Functor C A) {M : Type u_4} [AddMonoid M] [CategoryTheory.HasShift C M] [F.ShiftSequence M] {X Y : C} {m : M} (f : X ⟶ (CategoryTheory.shiftFunctor C m).obj Y) (n mn : M) (hnm : m + n = mn) (a a' a'' : M) (ha' : n + a = a') (ha'' : m + a' = a'') : CategoryTheory.CategoryStruct.comp ((F.shiftIso n a a' ha').hom.app X) (F.shiftMap f a' a'' ha'') = CategoryTheory.CategoryStruct.comp ((F.shift a).map ((CategoryTheory.shiftFunctor C n).map f)) (CategoryTheory.CategoryStruct.comp ((F.shift a).map ((CategoryTheory.shiftFunctorAdd' C m n mn hnm).inv.app Y)) ((F.shiftIso mn a a'' ⋯).hom.app Y)) - CategoryTheory.Functor.shiftIso_add_hom_app 📋 Mathlib.CategoryTheory.Shift.ShiftSequence
{C : Type u_1} {A : Type u_3} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_3, u_3} A] (F : CategoryTheory.Functor C A) {M : Type u_4} [AddMonoid M] [CategoryTheory.HasShift C M] [F.ShiftSequence M] (n m a a' a'' : M) (ha' : n + a = a') (ha'' : m + a' = a'') (X : C) : (F.shiftIso (m + n) a a'' ⋯).hom.app X = CategoryTheory.CategoryStruct.comp ((F.shift a).map ((CategoryTheory.shiftFunctorAdd C m n).hom.app X)) (CategoryTheory.CategoryStruct.comp ((F.shiftIso n a a' ha').hom.app ((CategoryTheory.shiftFunctor C m).obj X)) ((F.shiftIso m a' a'' ha'').hom.app X)) - CategoryTheory.Functor.shiftIso_add_inv_app 📋 Mathlib.CategoryTheory.Shift.ShiftSequence
{C : Type u_1} {A : Type u_3} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_3, u_3} A] (F : CategoryTheory.Functor C A) {M : Type u_4} [AddMonoid M] [CategoryTheory.HasShift C M] [F.ShiftSequence M] (n m a a' a'' : M) (ha' : n + a = a') (ha'' : m + a' = a'') (X : C) : (F.shiftIso (m + n) a a'' ⋯).inv.app X = CategoryTheory.CategoryStruct.comp ((F.shiftIso m a' a'' ha'').inv.app X) (CategoryTheory.CategoryStruct.comp ((F.shiftIso n a a' ha').inv.app ((CategoryTheory.shiftFunctor C m).obj X)) ((F.shift a).map ((CategoryTheory.shiftFunctorAdd C m n).inv.app X))) - CategoryTheory.Functor.shiftIso_hom_app_comp_assoc 📋 Mathlib.CategoryTheory.Shift.ShiftSequence
{C : Type u_1} {A : Type u_3} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_3, u_3} A] (F : CategoryTheory.Functor C A) {M : Type u_4} [AddMonoid M] [CategoryTheory.HasShift C M] [F.ShiftSequence M] (n m mn : M) (hnm : m + n = mn) (a a' a'' : M) (ha' : n + a = a') (ha'' : m + a' = a'') (X : C) {Z : A} (h : (F.shift a'').obj X ⟶ Z) : CategoryTheory.CategoryStruct.comp ((F.shiftIso n a a' ha').hom.app ((CategoryTheory.shiftFunctor C m).obj X)) (CategoryTheory.CategoryStruct.comp ((F.shiftIso m a' a'' ha'').hom.app X) h) = CategoryTheory.CategoryStruct.comp ((F.shift a).map ((CategoryTheory.shiftFunctorAdd' C m n mn hnm).inv.app X)) (CategoryTheory.CategoryStruct.comp ((F.shiftIso mn a a'' ⋯).hom.app X) h) - CategoryTheory.Functor.mem_homologicalKernel_iff 📋 Mathlib.CategoryTheory.Triangulated.HomologicalFunctor
{C : Type u_1} {A : Type u_3} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.HasShift C ℤ] [CategoryTheory.Category.{v_3, u_3} A] (F : CategoryTheory.Functor C A) [F.ShiftSequence ℤ] (X : C) : F.homologicalKernel X ↔ ∀ (n : ℤ), CategoryTheory.Limits.IsZero ((F.shift n).obj X) - CategoryTheory.Functor.homologySequenceδ 📋 Mathlib.CategoryTheory.Triangulated.HomologicalFunctor
{C : Type u_1} {A : Type u_3} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.HasShift C ℤ] [CategoryTheory.Category.{v_3, u_3} A] (F : CategoryTheory.Functor C A) [F.ShiftSequence ℤ] (T : CategoryTheory.Pretriangulated.Triangle C) (n₀ n₁ : ℤ) (h : n₀ + 1 = n₁) : (F.shift n₀).obj T.obj₃ ⟶ (F.shift n₁).obj T.obj₁ - CategoryTheory.Functor.mem_homologicalKernel_trW_iff 📋 Mathlib.CategoryTheory.Triangulated.HomologicalFunctor
{C : Type u_1} {A : Type u_3} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.HasShift C ℤ] [CategoryTheory.Category.{v_3, u_3} A] (F : CategoryTheory.Functor C A) [CategoryTheory.Limits.HasZeroObject C] [CategoryTheory.Preadditive C] [∀ (n : ℤ), (CategoryTheory.shiftFunctor C n).Additive] [CategoryTheory.Pretriangulated C] [CategoryTheory.Abelian A] [F.IsHomological] [F.ShiftSequence ℤ] {X Y : C} (f : X ⟶ Y) : F.homologicalKernel.trW f ↔ ∀ (n : ℤ), CategoryTheory.IsIso ((F.shift n).map f) - CategoryTheory.Functor.homologySequence_exact₁ 📋 Mathlib.CategoryTheory.Triangulated.HomologicalFunctor
{C : Type u_1} {A : Type u_3} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.HasShift C ℤ] [CategoryTheory.Category.{v_3, u_3} A] (F : CategoryTheory.Functor C A) [CategoryTheory.Limits.HasZeroObject C] [CategoryTheory.Preadditive C] [∀ (n : ℤ), (CategoryTheory.shiftFunctor C n).Additive] [CategoryTheory.Pretriangulated C] [CategoryTheory.Abelian A] [F.IsHomological] [F.ShiftSequence ℤ] (T : CategoryTheory.Pretriangulated.Triangle C) (hT : T ∈ CategoryTheory.Pretriangulated.distinguishedTriangles) (n₀ n₁ : ℤ) (h : n₀ + 1 = n₁) : { X₁ := (F.shift n₀).obj T.obj₃, X₂ := (F.shift n₁).obj T.obj₁, X₃ := (F.shift n₁).obj T.obj₂, f := F.homologySequenceδ T n₀ n₁ h, g := (F.shift n₁).map T.mor₁, zero := ⋯ }.Exact - CategoryTheory.Functor.homologySequence_exact₂ 📋 Mathlib.CategoryTheory.Triangulated.HomologicalFunctor
{C : Type u_1} {A : Type u_3} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.HasShift C ℤ] [CategoryTheory.Category.{v_3, u_3} A] (F : CategoryTheory.Functor C A) [CategoryTheory.Limits.HasZeroObject C] [CategoryTheory.Preadditive C] [∀ (n : ℤ), (CategoryTheory.shiftFunctor C n).Additive] [CategoryTheory.Pretriangulated C] [CategoryTheory.Abelian A] [F.IsHomological] [F.ShiftSequence ℤ] (T : CategoryTheory.Pretriangulated.Triangle C) (hT : T ∈ CategoryTheory.Pretriangulated.distinguishedTriangles) (n₀ : ℤ) : { X₁ := (F.shift n₀).obj T.obj₁, X₂ := (F.shift n₀).obj T.obj₂, X₃ := (F.shift n₀).obj T.obj₃, f := (F.shift n₀).map T.mor₁, g := (F.shift n₀).map T.mor₂, zero := ⋯ }.Exact - CategoryTheory.Functor.homologySequence_exact₃ 📋 Mathlib.CategoryTheory.Triangulated.HomologicalFunctor
{C : Type u_1} {A : Type u_3} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.HasShift C ℤ] [CategoryTheory.Category.{v_3, u_3} A] (F : CategoryTheory.Functor C A) [CategoryTheory.Limits.HasZeroObject C] [CategoryTheory.Preadditive C] [∀ (n : ℤ), (CategoryTheory.shiftFunctor C n).Additive] [CategoryTheory.Pretriangulated C] [CategoryTheory.Abelian A] [F.IsHomological] [F.ShiftSequence ℤ] (T : CategoryTheory.Pretriangulated.Triangle C) (hT : T ∈ CategoryTheory.Pretriangulated.distinguishedTriangles) (n₀ n₁ : ℤ) (h : n₀ + 1 = n₁) : { X₁ := (F.shift n₀).obj T.obj₂, X₂ := (F.shift n₀).obj T.obj₃, X₃ := (F.shift n₁).obj T.obj₁, f := (F.shift n₀).map T.mor₂, g := F.homologySequenceδ T n₀ n₁ h, zero := ⋯ }.Exact - CategoryTheory.Functor.homologySequenceδ_naturality 📋 Mathlib.CategoryTheory.Triangulated.HomologicalFunctor
{C : Type u_1} {A : Type u_3} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.HasShift C ℤ] [CategoryTheory.Category.{v_3, u_3} A] (F : CategoryTheory.Functor C A) [F.ShiftSequence ℤ] {T T' : CategoryTheory.Pretriangulated.Triangle C} (φ : T ⟶ T') (n₀ n₁ : ℤ) (h : n₀ + 1 = n₁) : CategoryTheory.CategoryStruct.comp ((F.shift n₀).map φ.hom₃) (F.homologySequenceδ T' n₀ n₁ h) = CategoryTheory.CategoryStruct.comp (F.homologySequenceδ T n₀ n₁ h) ((F.shift n₁).map φ.hom₁) - CategoryTheory.Functor.homologySequence_epi_shift_map_mor₂_iff 📋 Mathlib.CategoryTheory.Triangulated.HomologicalFunctor
{C : Type u_1} {A : Type u_3} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.HasShift C ℤ] [CategoryTheory.Category.{v_3, u_3} A] (F : CategoryTheory.Functor C A) [CategoryTheory.Limits.HasZeroObject C] [CategoryTheory.Preadditive C] [∀ (n : ℤ), (CategoryTheory.shiftFunctor C n).Additive] [CategoryTheory.Pretriangulated C] [CategoryTheory.Abelian A] [F.IsHomological] [F.ShiftSequence ℤ] (T : CategoryTheory.Pretriangulated.Triangle C) (hT : T ∈ CategoryTheory.Pretriangulated.distinguishedTriangles) (n₀ n₁ : ℤ) (h : n₀ + 1 = n₁) : CategoryTheory.Epi ((F.shift n₀).map T.mor₂) ↔ F.homologySequenceδ T n₀ n₁ h = 0 - CategoryTheory.Functor.homologySequence_mono_shift_map_mor₁_iff 📋 Mathlib.CategoryTheory.Triangulated.HomologicalFunctor
{C : Type u_1} {A : Type u_3} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.HasShift C ℤ] [CategoryTheory.Category.{v_3, u_3} A] (F : CategoryTheory.Functor C A) [CategoryTheory.Limits.HasZeroObject C] [CategoryTheory.Preadditive C] [∀ (n : ℤ), (CategoryTheory.shiftFunctor C n).Additive] [CategoryTheory.Pretriangulated C] [CategoryTheory.Abelian A] [F.IsHomological] [F.ShiftSequence ℤ] (T : CategoryTheory.Pretriangulated.Triangle C) (hT : T ∈ CategoryTheory.Pretriangulated.distinguishedTriangles) (n₀ n₁ : ℤ) (h : n₀ + 1 = n₁) : CategoryTheory.Mono ((F.shift n₁).map T.mor₁) ↔ F.homologySequenceδ T n₀ n₁ h = 0 - CategoryTheory.Functor.homologySequence_epi_shift_map_mor₁_iff 📋 Mathlib.CategoryTheory.Triangulated.HomologicalFunctor
{C : Type u_1} {A : Type u_3} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.HasShift C ℤ] [CategoryTheory.Category.{v_3, u_3} A] (F : CategoryTheory.Functor C A) [CategoryTheory.Limits.HasZeroObject C] [CategoryTheory.Preadditive C] [∀ (n : ℤ), (CategoryTheory.shiftFunctor C n).Additive] [CategoryTheory.Pretriangulated C] [CategoryTheory.Abelian A] [F.IsHomological] [F.ShiftSequence ℤ] (T : CategoryTheory.Pretriangulated.Triangle C) (hT : T ∈ CategoryTheory.Pretriangulated.distinguishedTriangles) (n₀ : ℤ) : CategoryTheory.Epi ((F.shift n₀).map T.mor₁) ↔ (F.shift n₀).map T.mor₂ = 0 - CategoryTheory.Functor.homologySequence_mono_shift_map_mor₂_iff 📋 Mathlib.CategoryTheory.Triangulated.HomologicalFunctor
{C : Type u_1} {A : Type u_3} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.HasShift C ℤ] [CategoryTheory.Category.{v_3, u_3} A] (F : CategoryTheory.Functor C A) [CategoryTheory.Limits.HasZeroObject C] [CategoryTheory.Preadditive C] [∀ (n : ℤ), (CategoryTheory.shiftFunctor C n).Additive] [CategoryTheory.Pretriangulated C] [CategoryTheory.Abelian A] [F.IsHomological] [F.ShiftSequence ℤ] (T : CategoryTheory.Pretriangulated.Triangle C) (hT : T ∈ CategoryTheory.Pretriangulated.distinguishedTriangles) (n₀ : ℤ) : CategoryTheory.Mono ((F.shift n₀).map T.mor₂) ↔ (F.shift n₀).map T.mor₁ = 0 - CategoryTheory.Functor.homologySequenceδ_naturality_assoc 📋 Mathlib.CategoryTheory.Triangulated.HomologicalFunctor
{C : Type u_1} {A : Type u_3} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.HasShift C ℤ] [CategoryTheory.Category.{v_3, u_3} A] (F : CategoryTheory.Functor C A) [F.ShiftSequence ℤ] {T T' : CategoryTheory.Pretriangulated.Triangle C} (φ : T ⟶ T') (n₀ n₁ : ℤ) (h : n₀ + 1 = n₁) {Z : A} (h✝ : (F.shift n₁).obj T'.obj₁ ⟶ Z) : CategoryTheory.CategoryStruct.comp ((F.shift n₀).map φ.hom₃) (CategoryTheory.CategoryStruct.comp (F.homologySequenceδ T' n₀ n₁ h) h✝) = CategoryTheory.CategoryStruct.comp (F.homologySequenceδ T n₀ n₁ h) (CategoryTheory.CategoryStruct.comp ((F.shift n₁).map φ.hom₁) h✝) - CategoryTheory.Functor.comp_homologySequenceδ 📋 Mathlib.CategoryTheory.Triangulated.HomologicalFunctor
{C : Type u_1} {A : Type u_3} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.HasShift C ℤ] [CategoryTheory.Category.{v_3, u_3} A] (F : CategoryTheory.Functor C A) [CategoryTheory.Limits.HasZeroObject C] [CategoryTheory.Preadditive C] [∀ (n : ℤ), (CategoryTheory.shiftFunctor C n).Additive] [CategoryTheory.Pretriangulated C] [CategoryTheory.Abelian A] [F.IsHomological] [F.ShiftSequence ℤ] (T : CategoryTheory.Pretriangulated.Triangle C) (hT : T ∈ CategoryTheory.Pretriangulated.distinguishedTriangles) (n₀ n₁ : ℤ) (h : n₀ + 1 = n₁) : CategoryTheory.CategoryStruct.comp ((F.shift n₀).map T.mor₂) (F.homologySequenceδ T n₀ n₁ h) = 0 - CategoryTheory.Functor.homologySequenceδ_comp 📋 Mathlib.CategoryTheory.Triangulated.HomologicalFunctor
{C : Type u_1} {A : Type u_3} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.HasShift C ℤ] [CategoryTheory.Category.{v_3, u_3} A] (F : CategoryTheory.Functor C A) [CategoryTheory.Limits.HasZeroObject C] [CategoryTheory.Preadditive C] [∀ (n : ℤ), (CategoryTheory.shiftFunctor C n).Additive] [CategoryTheory.Pretriangulated C] [CategoryTheory.Abelian A] [F.IsHomological] [F.ShiftSequence ℤ] (T : CategoryTheory.Pretriangulated.Triangle C) (hT : T ∈ CategoryTheory.Pretriangulated.distinguishedTriangles) (n₀ n₁ : ℤ) (h : n₀ + 1 = n₁) : CategoryTheory.CategoryStruct.comp (F.homologySequenceδ T n₀ n₁ h) ((F.shift n₁).map T.mor₁) = 0 - CategoryTheory.Functor.homologySequence_comp 📋 Mathlib.CategoryTheory.Triangulated.HomologicalFunctor
{C : Type u_1} {A : Type u_3} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.HasShift C ℤ] [CategoryTheory.Category.{v_3, u_3} A] (F : CategoryTheory.Functor C A) [CategoryTheory.Limits.HasZeroObject C] [CategoryTheory.Preadditive C] [∀ (n : ℤ), (CategoryTheory.shiftFunctor C n).Additive] [CategoryTheory.Pretriangulated C] [CategoryTheory.Abelian A] [F.IsHomological] [F.ShiftSequence ℤ] (T : CategoryTheory.Pretriangulated.Triangle C) (hT : T ∈ CategoryTheory.Pretriangulated.distinguishedTriangles) (n₀ : ℤ) : CategoryTheory.CategoryStruct.comp ((F.shift n₀).map T.mor₁) ((F.shift n₀).map T.mor₂) = 0 - CategoryTheory.Functor.comp_homologySequenceδ_assoc 📋 Mathlib.CategoryTheory.Triangulated.HomologicalFunctor
{C : Type u_1} {A : Type u_3} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.HasShift C ℤ] [CategoryTheory.Category.{v_3, u_3} A] (F : CategoryTheory.Functor C A) [CategoryTheory.Limits.HasZeroObject C] [CategoryTheory.Preadditive C] [∀ (n : ℤ), (CategoryTheory.shiftFunctor C n).Additive] [CategoryTheory.Pretriangulated C] [CategoryTheory.Abelian A] [F.IsHomological] [F.ShiftSequence ℤ] (T : CategoryTheory.Pretriangulated.Triangle C) (hT : T ∈ CategoryTheory.Pretriangulated.distinguishedTriangles) (n₀ n₁ : ℤ) (h : n₀ + 1 = n₁) {Z : A} (h✝ : (F.shift n₁).obj T.obj₁ ⟶ Z) : CategoryTheory.CategoryStruct.comp ((F.shift n₀).map T.mor₂) (CategoryTheory.CategoryStruct.comp (F.homologySequenceδ T n₀ n₁ h) h✝) = CategoryTheory.CategoryStruct.comp 0 h✝ - CategoryTheory.Functor.homologySequenceδ_comp_assoc 📋 Mathlib.CategoryTheory.Triangulated.HomologicalFunctor
{C : Type u_1} {A : Type u_3} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.HasShift C ℤ] [CategoryTheory.Category.{v_3, u_3} A] (F : CategoryTheory.Functor C A) [CategoryTheory.Limits.HasZeroObject C] [CategoryTheory.Preadditive C] [∀ (n : ℤ), (CategoryTheory.shiftFunctor C n).Additive] [CategoryTheory.Pretriangulated C] [CategoryTheory.Abelian A] [F.IsHomological] [F.ShiftSequence ℤ] (T : CategoryTheory.Pretriangulated.Triangle C) (hT : T ∈ CategoryTheory.Pretriangulated.distinguishedTriangles) (n₀ n₁ : ℤ) (h : n₀ + 1 = n₁) {Z : A} (h✝ : (F.shift n₁).obj T.obj₂ ⟶ Z) : CategoryTheory.CategoryStruct.comp (F.homologySequenceδ T n₀ n₁ h) (CategoryTheory.CategoryStruct.comp ((F.shift n₁).map T.mor₁) h✝) = CategoryTheory.CategoryStruct.comp 0 h✝ - CategoryTheory.Functor.homologySequence_comp_assoc 📋 Mathlib.CategoryTheory.Triangulated.HomologicalFunctor
{C : Type u_1} {A : Type u_3} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.HasShift C ℤ] [CategoryTheory.Category.{v_3, u_3} A] (F : CategoryTheory.Functor C A) [CategoryTheory.Limits.HasZeroObject C] [CategoryTheory.Preadditive C] [∀ (n : ℤ), (CategoryTheory.shiftFunctor C n).Additive] [CategoryTheory.Pretriangulated C] [CategoryTheory.Abelian A] [F.IsHomological] [F.ShiftSequence ℤ] (T : CategoryTheory.Pretriangulated.Triangle C) (hT : T ∈ CategoryTheory.Pretriangulated.distinguishedTriangles) (n₀ : ℤ) {Z : A} (h : (F.shift n₀).obj T.obj₃ ⟶ Z) : CategoryTheory.CategoryStruct.comp ((F.shift n₀).map T.mor₁) (CategoryTheory.CategoryStruct.comp ((F.shift n₀).map T.mor₂) h) = CategoryTheory.CategoryStruct.comp 0 h - CategoryTheory.Functor.ShiftSequence.induced 📋 Mathlib.CategoryTheory.Shift.InducedShiftSequence
{C : Type u_1} {D : Type u_2} {A : Type u_3} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] [CategoryTheory.Category.{v_3, u_3} A] {L : CategoryTheory.Functor C D} {F : CategoryTheory.Functor D A} {G : CategoryTheory.Functor C A} (e : L.comp F ≅ G) (M : Type u_4) [AddMonoid M] [CategoryTheory.HasShift C M] [G.ShiftSequence M] (F' : M → CategoryTheory.Functor D A) (e' : (m : M) → L.comp (F' m) ≅ G.shift m) [((CategoryTheory.Functor.whiskeringLeft C D A).obj L).Full] [((CategoryTheory.Functor.whiskeringLeft C D A).obj L).Faithful] [CategoryTheory.HasShift D M] [L.CommShift M] : F.ShiftSequence M - CategoryTheory.Functor.ShiftSequence.induced.isoZero 📋 Mathlib.CategoryTheory.Shift.InducedShiftSequence
{C : Type u_1} {D : Type u_2} {A : Type u_3} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] [CategoryTheory.Category.{v_3, u_3} A] {L : CategoryTheory.Functor C D} {F : CategoryTheory.Functor D A} {G : CategoryTheory.Functor C A} (e : L.comp F ≅ G) (M : Type u_4) [AddMonoid M] [CategoryTheory.HasShift C M] [G.ShiftSequence M] (F' : M → CategoryTheory.Functor D A) (e' : (m : M) → L.comp (F' m) ≅ G.shift m) [((CategoryTheory.Functor.whiskeringLeft C D A).obj L).Full] [((CategoryTheory.Functor.whiskeringLeft C D A).obj L).Faithful] : F' 0 ≅ F - CategoryTheory.Functor.ShiftSequence.induced.shiftIso 📋 Mathlib.CategoryTheory.Shift.InducedShiftSequence
{C : Type u_1} {D : Type u_2} {A : Type u_3} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] [CategoryTheory.Category.{v_3, u_3} A] (L : CategoryTheory.Functor C D) (G : CategoryTheory.Functor C A) (M : Type u_4) [AddMonoid M] [CategoryTheory.HasShift C M] [G.ShiftSequence M] (F' : M → CategoryTheory.Functor D A) (e' : (m : M) → L.comp (F' m) ≅ G.shift m) [((CategoryTheory.Functor.whiskeringLeft C D A).obj L).Full] [((CategoryTheory.Functor.whiskeringLeft C D A).obj L).Faithful] [CategoryTheory.HasShift D M] [L.CommShift M] (n a a' : M) (ha' : n + a = a') : (CategoryTheory.shiftFunctor D n).comp (F' a) ≅ F' a' - CategoryTheory.Functor.ShiftSequence.induced.isoZero_hom_app_obj 📋 Mathlib.CategoryTheory.Shift.InducedShiftSequence
{C : Type u_1} {D : Type u_2} {A : Type u_3} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] [CategoryTheory.Category.{v_3, u_3} A] {L : CategoryTheory.Functor C D} {F : CategoryTheory.Functor D A} {G : CategoryTheory.Functor C A} (e : L.comp F ≅ G) (M : Type u_4) [AddMonoid M] [CategoryTheory.HasShift C M] [G.ShiftSequence M] (F' : M → CategoryTheory.Functor D A) (e' : (m : M) → L.comp (F' m) ≅ G.shift m) [((CategoryTheory.Functor.whiskeringLeft C D A).obj L).Full] [((CategoryTheory.Functor.whiskeringLeft C D A).obj L).Faithful] (X : C) : (CategoryTheory.Functor.ShiftSequence.induced.isoZero e M F' e').hom.app (L.obj X) = CategoryTheory.CategoryStruct.comp ((e' 0).hom.app X) (CategoryTheory.CategoryStruct.comp ((G.isoShiftZero M).hom.app X) (e.inv.app X)) - CategoryTheory.Functor.ShiftSequence.induced_isoShiftZero_hom_app_obj 📋 Mathlib.CategoryTheory.Shift.InducedShiftSequence
{C : Type u_1} {D : Type u_2} {A : Type u_3} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] [CategoryTheory.Category.{v_3, u_3} A] {L : CategoryTheory.Functor C D} {F : CategoryTheory.Functor D A} {G : CategoryTheory.Functor C A} (e : L.comp F ≅ G) (M : Type u_4) [AddMonoid M] [CategoryTheory.HasShift C M] [G.ShiftSequence M] (F' : M → CategoryTheory.Functor D A) (e' : (m : M) → L.comp (F' m) ≅ G.shift m) [((CategoryTheory.Functor.whiskeringLeft C D A).obj L).Full] [((CategoryTheory.Functor.whiskeringLeft C D A).obj L).Faithful] [CategoryTheory.HasShift D M] [L.CommShift M] (X : C) : (F.isoShiftZero M).hom.app (L.obj X) = CategoryTheory.CategoryStruct.comp ((e' 0).hom.app X) (CategoryTheory.CategoryStruct.comp ((G.isoShiftZero M).hom.app X) (e.inv.app X)) - CategoryTheory.Functor.ShiftSequence.induced_shiftMap 📋 Mathlib.CategoryTheory.Shift.InducedShiftSequence
{C : Type u_1} {D : Type u_2} {A : Type u_3} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] [CategoryTheory.Category.{v_3, u_3} A] {L : CategoryTheory.Functor C D} {F : CategoryTheory.Functor D A} {G : CategoryTheory.Functor C A} (e : L.comp F ≅ G) (M : Type u_4) [AddMonoid M] [CategoryTheory.HasShift C M] [G.ShiftSequence M] (F' : M → CategoryTheory.Functor D A) (e' : (m : M) → L.comp (F' m) ≅ G.shift m) [((CategoryTheory.Functor.whiskeringLeft C D A).obj L).Full] [((CategoryTheory.Functor.whiskeringLeft C D A).obj L).Faithful] [CategoryTheory.HasShift D M] [L.CommShift M] {n : M} {X Y : C} (f : X ⟶ (CategoryTheory.shiftFunctor C n).obj Y) (a a' : M) (h : n + a = a') : F.shiftMap (CategoryTheory.CategoryStruct.comp (L.map f) ((CategoryTheory.Functor.commShiftIso L n).hom.app Y)) a a' h = CategoryTheory.CategoryStruct.comp ((e' a).hom.app X) (CategoryTheory.CategoryStruct.comp (G.shiftMap f a a' h) ((e' a').inv.app Y)) - CategoryTheory.Functor.ShiftSequence.induced.shiftIso_hom_app_obj 📋 Mathlib.CategoryTheory.Shift.InducedShiftSequence
{C : Type u_1} {D : Type u_2} {A : Type u_3} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] [CategoryTheory.Category.{v_3, u_3} A] (L : CategoryTheory.Functor C D) (G : CategoryTheory.Functor C A) (M : Type u_4) [AddMonoid M] [CategoryTheory.HasShift C M] [G.ShiftSequence M] (F' : M → CategoryTheory.Functor D A) (e' : (m : M) → L.comp (F' m) ≅ G.shift m) [((CategoryTheory.Functor.whiskeringLeft C D A).obj L).Full] [((CategoryTheory.Functor.whiskeringLeft C D A).obj L).Faithful] [CategoryTheory.HasShift D M] [L.CommShift M] (n a a' : M) (ha' : n + a = a') (X : C) : (CategoryTheory.Functor.ShiftSequence.induced.shiftIso L G M F' e' n a a' ha').hom.app (L.obj X) = CategoryTheory.CategoryStruct.comp ((F' a).map ((CategoryTheory.Functor.commShiftIso L n).inv.app X)) (CategoryTheory.CategoryStruct.comp ((e' a).hom.app ((CategoryTheory.shiftFunctor C n).obj X)) (CategoryTheory.CategoryStruct.comp ((G.shiftIso n a a' ha').hom.app X) ((e' a').inv.app X))) - CategoryTheory.Functor.ShiftSequence.induced_isoShiftZero_hom_app_obj_assoc 📋 Mathlib.CategoryTheory.Shift.InducedShiftSequence
{C : Type u_1} {D : Type u_2} {A : Type u_3} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] [CategoryTheory.Category.{v_3, u_3} A] {L : CategoryTheory.Functor C D} {F : CategoryTheory.Functor D A} {G : CategoryTheory.Functor C A} (e : L.comp F ≅ G) (M : Type u_4) [AddMonoid M] [CategoryTheory.HasShift C M] [G.ShiftSequence M] (F' : M → CategoryTheory.Functor D A) (e' : (m : M) → L.comp (F' m) ≅ G.shift m) [((CategoryTheory.Functor.whiskeringLeft C D A).obj L).Full] [((CategoryTheory.Functor.whiskeringLeft C D A).obj L).Faithful] [CategoryTheory.HasShift D M] [L.CommShift M] (X : C) {Z : A} (h : F.obj (L.obj X) ⟶ Z) : CategoryTheory.CategoryStruct.comp ((F.isoShiftZero M).hom.app (L.obj X)) h = CategoryTheory.CategoryStruct.comp (CategoryTheory.CategoryStruct.comp ((e' 0).hom.app X) (CategoryTheory.CategoryStruct.comp ((G.isoShiftZero M).hom.app X) (e.inv.app X))) h - CategoryTheory.Functor.ShiftSequence.induced_shiftMap_assoc 📋 Mathlib.CategoryTheory.Shift.InducedShiftSequence
{C : Type u_1} {D : Type u_2} {A : Type u_3} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] [CategoryTheory.Category.{v_3, u_3} A] {L : CategoryTheory.Functor C D} {F : CategoryTheory.Functor D A} {G : CategoryTheory.Functor C A} (e : L.comp F ≅ G) (M : Type u_4) [AddMonoid M] [CategoryTheory.HasShift C M] [G.ShiftSequence M] (F' : M → CategoryTheory.Functor D A) (e' : (m : M) → L.comp (F' m) ≅ G.shift m) [((CategoryTheory.Functor.whiskeringLeft C D A).obj L).Full] [((CategoryTheory.Functor.whiskeringLeft C D A).obj L).Faithful] [CategoryTheory.HasShift D M] [L.CommShift M] {n : M} {X Y : C} (f : X ⟶ (CategoryTheory.shiftFunctor C n).obj Y) (a a' : M) (h : n + a = a') {Z : A} (h✝ : (F.shift a').obj (L.obj Y) ⟶ Z) : CategoryTheory.CategoryStruct.comp (F.shiftMap (CategoryTheory.CategoryStruct.comp (L.map f) ((CategoryTheory.Functor.commShiftIso L n).hom.app Y)) a a' h) h✝ = CategoryTheory.CategoryStruct.comp ((e' a).hom.app X) (CategoryTheory.CategoryStruct.comp (G.shiftMap f a a' h) (CategoryTheory.CategoryStruct.comp ((e' a').inv.app Y) h✝)) - CategoryTheory.Functor.ShiftSequence.induced_shiftIso_hom_app_obj 📋 Mathlib.CategoryTheory.Shift.InducedShiftSequence
{C : Type u_1} {D : Type u_2} {A : Type u_3} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] [CategoryTheory.Category.{v_3, u_3} A] {L : CategoryTheory.Functor C D} {F : CategoryTheory.Functor D A} {G : CategoryTheory.Functor C A} (e : L.comp F ≅ G) (M : Type u_4) [AddMonoid M] [CategoryTheory.HasShift C M] [G.ShiftSequence M] (F' : M → CategoryTheory.Functor D A) (e' : (m : M) → L.comp (F' m) ≅ G.shift m) [((CategoryTheory.Functor.whiskeringLeft C D A).obj L).Full] [((CategoryTheory.Functor.whiskeringLeft C D A).obj L).Faithful] [CategoryTheory.HasShift D M] [L.CommShift M] (n a a' : M) (ha' : n + a = a') (X : C) : (F.shiftIso n a a' ha').hom.app (L.obj X) = CategoryTheory.CategoryStruct.comp ((F.shift a).map ((CategoryTheory.Functor.commShiftIso L n).inv.app X)) (CategoryTheory.CategoryStruct.comp ((e' a).hom.app ((CategoryTheory.shiftFunctor C n).obj X)) (CategoryTheory.CategoryStruct.comp ((G.shiftIso n a a' ha').hom.app X) ((e' a').inv.app X))) - CategoryTheory.Functor.ShiftSequence.induced_shiftIso_hom_app_obj_assoc 📋 Mathlib.CategoryTheory.Shift.InducedShiftSequence
{C : Type u_1} {D : Type u_2} {A : Type u_3} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] [CategoryTheory.Category.{v_3, u_3} A] {L : CategoryTheory.Functor C D} {F : CategoryTheory.Functor D A} {G : CategoryTheory.Functor C A} (e : L.comp F ≅ G) (M : Type u_4) [AddMonoid M] [CategoryTheory.HasShift C M] [G.ShiftSequence M] (F' : M → CategoryTheory.Functor D A) (e' : (m : M) → L.comp (F' m) ≅ G.shift m) [((CategoryTheory.Functor.whiskeringLeft C D A).obj L).Full] [((CategoryTheory.Functor.whiskeringLeft C D A).obj L).Faithful] [CategoryTheory.HasShift D M] [L.CommShift M] (n a a' : M) (ha' : n + a = a') (X : C) {Z : A} (h : (F.shift a').obj (L.obj X) ⟶ Z) : CategoryTheory.CategoryStruct.comp ((F.shiftIso n a a' ha').hom.app (L.obj X)) h = CategoryTheory.CategoryStruct.comp (CategoryTheory.CategoryStruct.comp ((F.shift a).map ((CategoryTheory.Functor.commShiftIso L n).inv.app X)) (CategoryTheory.CategoryStruct.comp ((e' a).hom.app ((CategoryTheory.shiftFunctor C n).obj X)) (CategoryTheory.CategoryStruct.comp ((G.shiftIso n a a' ha').hom.app X) ((e' a').inv.app X)))) h - CochainComplex.homologyFunctor_shift 📋 Mathlib.Algebra.Homology.HomotopyCategory.ShiftSequence
(C : Type u_1) [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] [CategoryTheory.CategoryWithHomology C] (n : ℤ) : (HomologicalComplex.homologyFunctor C (ComplexShape.up ℤ) 0).shift n = HomologicalComplex.homologyFunctor C (ComplexShape.up ℤ) n - HomotopyCategory.homologyFunctor_shiftMap 📋 Mathlib.Algebra.Homology.HomotopyCategory.ShiftSequence
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] [CategoryTheory.CategoryWithHomology C] {K L : CochainComplex C ℤ} {n : ℤ} (f : K ⟶ (CategoryTheory.shiftFunctor (CochainComplex C ℤ) n).obj L) (a a' : ℤ) (h : n + a = a') : (HomotopyCategory.homologyFunctor C (ComplexShape.up ℤ) 0).shiftMap (CategoryTheory.ShiftedHom.map f (HomotopyCategory.quotient C (ComplexShape.up ℤ))) a a' h = CategoryTheory.CategoryStruct.comp ((HomotopyCategory.homologyFunctorFactors C (ComplexShape.up ℤ) a).hom.app K) (CategoryTheory.CategoryStruct.comp ((HomologicalComplex.homologyFunctor C (ComplexShape.up ℤ) 0).shiftMap f a a' h) ((HomotopyCategory.homologyFunctorFactors C (ComplexShape.up ℤ) a').inv.app L)) - HomotopyCategory.homologyFunctor_shiftMap_assoc 📋 Mathlib.Algebra.Homology.HomotopyCategory.ShiftSequence
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] [CategoryTheory.CategoryWithHomology C] {K L : CochainComplex C ℤ} {n : ℤ} (f : K ⟶ (CategoryTheory.shiftFunctor (CochainComplex C ℤ) n).obj L) (a a' : ℤ) (h : n + a = a') {Z : C} (h✝ : ((HomotopyCategory.homologyFunctor C (ComplexShape.up ℤ) 0).shift a').obj ((HomotopyCategory.quotient C (ComplexShape.up ℤ)).obj L) ⟶ Z) : CategoryTheory.CategoryStruct.comp ((HomotopyCategory.homologyFunctor C (ComplexShape.up ℤ) 0).shiftMap (CategoryTheory.ShiftedHom.map f (HomotopyCategory.quotient C (ComplexShape.up ℤ))) a a' h) h✝ = CategoryTheory.CategoryStruct.comp (CategoryTheory.CategoryStruct.comp ((HomotopyCategory.homologyFunctorFactors C (ComplexShape.up ℤ) a).hom.app K) (CategoryTheory.CategoryStruct.comp ((HomologicalComplex.homologyFunctor C (ComplexShape.up ℤ) 0).shiftMap f a a' h) ((HomotopyCategory.homologyFunctorFactors C (ComplexShape.up ℤ) a').inv.app L))) h✝ - CochainComplex.liftCycles_shift_homologyπ_assoc 📋 Mathlib.Algebra.Homology.HomotopyCategory.ShiftSequence
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] [CategoryTheory.CategoryWithHomology C] (K : CochainComplex C ℤ) {A : C} {n i : ℤ} (f : A ⟶ ((CategoryTheory.shiftFunctor (CochainComplex C ℤ) n).obj K).X i) (j : ℤ) (hj : (ComplexShape.up ℤ).next i = j) (hf : CategoryTheory.CategoryStruct.comp f (((CategoryTheory.shiftFunctor (CochainComplex C ℤ) n).obj K).d i j) = 0) (i' : ℤ) (hi' : n + i = i') (j' : ℤ) (hj' : (ComplexShape.up ℤ).next i' = j') {Z : C} (h : HomologicalComplex.homology ((CategoryTheory.shiftFunctor (CochainComplex C ℤ) n).obj K) i ⟶ Z) : CategoryTheory.CategoryStruct.comp (HomologicalComplex.liftCycles ((CategoryTheory.shiftFunctor (CochainComplex C ℤ) n).obj K) f j hj hf) (CategoryTheory.CategoryStruct.comp (HomologicalComplex.homologyπ ((CategoryTheory.shiftFunctor (CochainComplex C ℤ) n).obj K) i) h) = CategoryTheory.CategoryStruct.comp (HomologicalComplex.liftCycles K (CategoryTheory.CategoryStruct.comp f (K.shiftFunctorObjXIso n i i' ⋯).hom) j' hj' ⋯) (CategoryTheory.CategoryStruct.comp (HomologicalComplex.homologyπ K i') (CategoryTheory.CategoryStruct.comp (((HomologicalComplex.homologyFunctor C (ComplexShape.up ℤ) 0).shiftIso n i i' hi').inv.app K) h)) - CochainComplex.liftCycles_shift_homologyπ 📋 Mathlib.Algebra.Homology.HomotopyCategory.ShiftSequence
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] [CategoryTheory.CategoryWithHomology C] (K : CochainComplex C ℤ) {A : C} {n i : ℤ} (f : A ⟶ ((CategoryTheory.shiftFunctor (CochainComplex C ℤ) n).obj K).X i) (j : ℤ) (hj : (ComplexShape.up ℤ).next i = j) (hf : CategoryTheory.CategoryStruct.comp f (((CategoryTheory.shiftFunctor (CochainComplex C ℤ) n).obj K).d i j) = 0) (i' : ℤ) (hi' : n + i = i') (j' : ℤ) (hj' : (ComplexShape.up ℤ).next i' = j') : CategoryTheory.CategoryStruct.comp (HomologicalComplex.liftCycles ((CategoryTheory.shiftFunctor (CochainComplex C ℤ) n).obj K) f j hj hf) (HomologicalComplex.homologyπ ((CategoryTheory.shiftFunctor (CochainComplex C ℤ) n).obj K) i) = CategoryTheory.CategoryStruct.comp (HomologicalComplex.liftCycles K (CategoryTheory.CategoryStruct.comp f (K.shiftFunctorObjXIso n i i' ⋯).hom) j' hj' ⋯) (CategoryTheory.CategoryStruct.comp (HomologicalComplex.homologyπ K i') (((HomologicalComplex.homologyFunctor C (ComplexShape.up ℤ) 0).shiftIso n i i' hi').inv.app K)) - HomotopyCategory.homologyShiftIso_hom_app 📋 Mathlib.Algebra.Homology.HomotopyCategory.ShiftSequence
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] [CategoryTheory.CategoryWithHomology C] (n a a' : ℤ) (ha' : n + a = a') (K : CochainComplex C ℤ) : ((HomotopyCategory.homologyFunctor C (ComplexShape.up ℤ) 0).shiftIso n a a' ha').hom.app ((HomotopyCategory.quotient C (ComplexShape.up ℤ)).obj K) = CategoryTheory.CategoryStruct.comp ((HomotopyCategory.homologyFunctor C (ComplexShape.up ℤ) a).map ((CategoryTheory.Functor.commShiftIso (HomotopyCategory.quotient C (ComplexShape.up ℤ)) n).inv.app K)) (CategoryTheory.CategoryStruct.comp ((HomotopyCategory.homologyFunctorFactors C (ComplexShape.up ℤ) a).hom.app ((CategoryTheory.shiftFunctor (HomologicalComplex C (ComplexShape.up ℤ)) n).obj K)) (CategoryTheory.CategoryStruct.comp (((HomologicalComplex.homologyFunctor C (ComplexShape.up ℤ) 0).shiftIso n a a' ha').hom.app K) ((HomotopyCategory.homologyFunctorFactors C (ComplexShape.up ℤ) a').inv.app K))) - DerivedCategory.shift_homologyFunctor 📋 Mathlib.Algebra.Homology.DerivedCategory.HomologySequence
(C : Type u) [CategoryTheory.Category.{v, u} C] [CategoryTheory.Abelian C] [HasDerivedCategory C] (n : ℤ) : (DerivedCategory.homologyFunctor C 0).shift n = DerivedCategory.homologyFunctor C n - DerivedCategory.shiftMap_homologyFunctor_map_Q 📋 Mathlib.Algebra.Homology.DerivedCategory.HomologySequence
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Abelian C] [HasDerivedCategory C] {K L : CochainComplex C ℤ} {n : ℤ} (f : K ⟶ (CategoryTheory.shiftFunctor (CochainComplex C ℤ) n).obj L) (a a' : ℤ) (h : n + a = a' := by lia) : (DerivedCategory.homologyFunctor C 0).shiftMap (CategoryTheory.ShiftedHom.map f DerivedCategory.Q) a a' h = CategoryTheory.CategoryStruct.comp ((DerivedCategory.homologyFunctorFactors C a).hom.app K) (CategoryTheory.CategoryStruct.comp ((HomologicalComplex.homologyFunctor C (ComplexShape.up ℤ) 0).shiftMap f a a' h) ((DerivedCategory.homologyFunctorFactors C a').inv.app L)) - DerivedCategory.shiftMap_homologyFunctor_map_Q_assoc 📋 Mathlib.Algebra.Homology.DerivedCategory.HomologySequence
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Abelian C] [HasDerivedCategory C] {K L : CochainComplex C ℤ} {n : ℤ} (f : K ⟶ (CategoryTheory.shiftFunctor (CochainComplex C ℤ) n).obj L) (a a' : ℤ) (h : n + a = a' := by lia) {Z : C} (h✝ : ((DerivedCategory.homologyFunctor C 0).shift a').obj (DerivedCategory.Q.obj L) ⟶ Z) : CategoryTheory.CategoryStruct.comp ((DerivedCategory.homologyFunctor C 0).shiftMap (CategoryTheory.ShiftedHom.map f DerivedCategory.Q) a a' h) h✝ = CategoryTheory.CategoryStruct.comp ((DerivedCategory.homologyFunctorFactors C a).hom.app K) (CategoryTheory.CategoryStruct.comp ((HomologicalComplex.homologyFunctor C (ComplexShape.up ℤ) 0).shiftMap f a a' h) (CategoryTheory.CategoryStruct.comp ((DerivedCategory.homologyFunctorFactors C a').inv.app L) h✝)) - DerivedCategory.shiftMap_homologyFunctor_map_Qh 📋 Mathlib.Algebra.Homology.DerivedCategory.HomologySequence
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Abelian C] [HasDerivedCategory C] {K L : HomotopyCategory C (ComplexShape.up ℤ)} {n : ℤ} (f : K ⟶ (CategoryTheory.shiftFunctor (HomotopyCategory C (ComplexShape.up ℤ)) n).obj L) (a a' : ℤ) (h : n + a = a' := by lia) : (DerivedCategory.homologyFunctor C 0).shiftMap (CategoryTheory.ShiftedHom.map f DerivedCategory.Qh) a a' h = CategoryTheory.CategoryStruct.comp ((DerivedCategory.homologyFunctorFactorsh C a).hom.app K) (CategoryTheory.CategoryStruct.comp ((HomotopyCategory.homologyFunctor C (ComplexShape.up ℤ) 0).shiftMap f a a' h) ((DerivedCategory.homologyFunctorFactorsh C a').inv.app L)) - DerivedCategory.shiftMap_homologyFunctor_map_Qh_assoc 📋 Mathlib.Algebra.Homology.DerivedCategory.HomologySequence
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Abelian C] [HasDerivedCategory C] {K L : HomotopyCategory C (ComplexShape.up ℤ)} {n : ℤ} (f : K ⟶ (CategoryTheory.shiftFunctor (HomotopyCategory C (ComplexShape.up ℤ)) n).obj L) (a a' : ℤ) (h : n + a = a' := by lia) {Z : C} (h✝ : ((DerivedCategory.homologyFunctor C 0).shift a').obj (DerivedCategory.Qh.obj L) ⟶ Z) : CategoryTheory.CategoryStruct.comp ((DerivedCategory.homologyFunctor C 0).shiftMap (CategoryTheory.ShiftedHom.map f DerivedCategory.Qh) a a' h) h✝ = CategoryTheory.CategoryStruct.comp (CategoryTheory.CategoryStruct.comp ((DerivedCategory.homologyFunctorFactorsh C a).hom.app K) (CategoryTheory.CategoryStruct.comp ((HomotopyCategory.homologyFunctor C (ComplexShape.up ℤ) 0).shiftMap f a a' h) ((DerivedCategory.homologyFunctorFactorsh C a').inv.app L))) h✝ - CochainComplex.homologySequenceδ_quotient_mapTriangle_obj 📋 Mathlib.Algebra.Homology.HomotopyCategory.ShortExact
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Abelian C] (T : CategoryTheory.Pretriangulated.Triangle (CochainComplex C ℤ)) (n₀ n₁ : ℤ) (h : n₀ + 1 = n₁) : (HomotopyCategory.homologyFunctor C (ComplexShape.up ℤ) 0).homologySequenceδ ((HomotopyCategory.quotient C (ComplexShape.up ℤ)).mapTriangle.obj T) n₀ n₁ h = CategoryTheory.CategoryStruct.comp ((HomotopyCategory.homologyFunctorFactors C (ComplexShape.up ℤ) n₀).hom.app T.obj₃) (CategoryTheory.CategoryStruct.comp ((HomologicalComplex.homologyFunctor C (ComplexShape.up ℤ) 0).shiftMap T.mor₃ n₀ n₁ ⋯) ((HomotopyCategory.homologyFunctorFactors C (ComplexShape.up ℤ) n₁).inv.app T.obj₁)) - CochainComplex.homologySequenceδ_quotient_mapTriangle_obj_assoc 📋 Mathlib.Algebra.Homology.HomotopyCategory.ShortExact
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Abelian C] (T : CategoryTheory.Pretriangulated.Triangle (CochainComplex C ℤ)) (n₀ n₁ : ℤ) (h : n₀ + 1 = n₁) {Z : C} (h✝ : ((HomotopyCategory.homologyFunctor C (ComplexShape.up ℤ) 0).shift n₁).obj ((HomotopyCategory.quotient C (ComplexShape.up ℤ)).mapTriangle.obj T).obj₁ ⟶ Z) : CategoryTheory.CategoryStruct.comp ((HomotopyCategory.homologyFunctor C (ComplexShape.up ℤ) 0).homologySequenceδ ((HomotopyCategory.quotient C (ComplexShape.up ℤ)).mapTriangle.obj T) n₀ n₁ h) h✝ = CategoryTheory.CategoryStruct.comp ((HomotopyCategory.homologyFunctorFactors C (ComplexShape.up ℤ) n₀).hom.app T.obj₃) (CategoryTheory.CategoryStruct.comp ((HomologicalComplex.homologyFunctor C (ComplexShape.up ℤ) 0).shiftMap T.mor₃ n₀ n₁ ⋯) (CategoryTheory.CategoryStruct.comp ((HomotopyCategory.homologyFunctorFactors C (ComplexShape.up ℤ) n₁).inv.app T.obj₁) h✝)) - CochainComplex.mappingCone.homologySequenceδ_triangleh 📋 Mathlib.Algebra.Homology.HomotopyCategory.ShortExact
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Abelian C] {S : CategoryTheory.ShortComplex (CochainComplex C ℤ)} (hS : S.ShortExact) (n₀ n₁ : ℤ) (h : n₀ + 1 = n₁) : (HomotopyCategory.homologyFunctor C (ComplexShape.up ℤ) 0).homologySequenceδ (CochainComplex.mappingCone.triangleh S.f) n₀ n₁ h = CategoryTheory.CategoryStruct.comp ((HomotopyCategory.homologyFunctorFactors C (ComplexShape.up ℤ) n₀).hom.app (CochainComplex.mappingCone S.f)) (CategoryTheory.CategoryStruct.comp (HomologicalComplex.homologyMap (CochainComplex.mappingCone.descShortComplex S) n₀) (CategoryTheory.CategoryStruct.comp (hS.δ n₀ n₁ h) ((HomotopyCategory.homologyFunctorFactors C (ComplexShape.up ℤ) n₁).inv.app S.X₁))) - CategoryTheory.Pretriangulated.preadditiveCoyoneda_homologySequenceδ_apply 📋 Mathlib.CategoryTheory.Triangulated.Yoneda
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] [CategoryTheory.HasShift C ℤ] (T : CategoryTheory.Pretriangulated.Triangle C) (n₀ n₁ : ℤ) (h : n₀ + 1 = n₁) {A : Cᵒᵖ} (x : Opposite.unop A ⟶ (CategoryTheory.shiftFunctor C n₀).obj T.obj₃) : (CategoryTheory.ConcreteCategory.hom ((CategoryTheory.preadditiveCoyoneda.obj A).homologySequenceδ T n₀ n₁ h)) x = CategoryTheory.CategoryStruct.comp x (CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctor C n₀).map T.mor₃) ((CategoryTheory.shiftFunctorAdd' C 1 n₀ n₁ ⋯).inv.app T.obj₁)) - CategoryTheory.Pretriangulated.preadditiveYoneda_shiftMap_apply 📋 Mathlib.CategoryTheory.Triangulated.Yoneda
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] [CategoryTheory.HasShift C ℤ] [∀ (n : ℤ), (CategoryTheory.shiftFunctor C n).Additive] (B : C) {X Y : Cᵒᵖ} (n : ℤ) (f : X ⟶ (CategoryTheory.shiftFunctor Cᵒᵖ n).obj Y) (a a' : ℤ) (h : n + a = a') (z : Opposite.unop X ⟶ (CategoryTheory.shiftFunctor C a).obj B) : (CategoryTheory.ConcreteCategory.hom ((CategoryTheory.preadditiveYoneda.obj B).shiftMap f a a' h)) z = ((CategoryTheory.ShiftedHom.opEquiv n).symm f).comp z ⋯ - CategoryTheory.Pretriangulated.preadditiveYoneda_homologySequenceδ_apply 📋 Mathlib.CategoryTheory.Triangulated.Yoneda
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] [CategoryTheory.HasShift C ℤ] [∀ (n : ℤ), (CategoryTheory.shiftFunctor C n).Additive] (T : CategoryTheory.Pretriangulated.Triangle C) (n₀ n₁ : ℤ) (h : n₀ + 1 = n₁) {B : C} (x : T.obj₁ ⟶ (CategoryTheory.shiftFunctor C n₀).obj B) : (CategoryTheory.ConcreteCategory.hom ((CategoryTheory.preadditiveYoneda.obj B).homologySequenceδ ((CategoryTheory.Pretriangulated.triangleOpEquivalence C).functor.obj (Opposite.op T)) n₀ n₁ h)) x = CategoryTheory.CategoryStruct.comp T.mor₃ (CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctor C 1).map x) ((CategoryTheory.shiftFunctorAdd' C n₀ 1 n₁ h).inv.app B)) - CategoryTheory.Abelian.Ext.preadditiveCoyoneda_homologySequenceδ_singleTriangle_apply 📋 Mathlib.Algebra.Homology.DerivedCategory.Ext.ExactSequences
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Abelian C] [CategoryTheory.HasExt C] {S : CategoryTheory.ShortComplex C} (hS : S.ShortExact) [HasDerivedCategory C] {X : C} {n₀ : ℕ} (x : CategoryTheory.Abelian.Ext X S.X₃ n₀) {n₁ : ℕ} (h : n₀ + 1 = n₁) : (CategoryTheory.ConcreteCategory.hom ((CategoryTheory.preadditiveCoyoneda.obj (Opposite.op ((DerivedCategory.singleFunctor C 0).obj X))).homologySequenceδ hS.singleTriangle ↑n₀ ↑n₁ ⋯)) x.hom = (x.comp hS.extClass h).hom - CategoryTheory.Abelian.Ext.preadditiveYoneda_homologySequenceδ_singleTriangle_apply 📋 Mathlib.Algebra.Homology.DerivedCategory.Ext.ExactSequences
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Abelian C] [CategoryTheory.HasExt C] {S : CategoryTheory.ShortComplex C} (hS : S.ShortExact) [HasDerivedCategory C] {Y : C} {n₀ : ℕ} (x : CategoryTheory.Abelian.Ext S.X₁ Y n₀) {n₁ : ℕ} (h : 1 + n₀ = n₁) : (CategoryTheory.ConcreteCategory.hom ((CategoryTheory.preadditiveYoneda.obj ((DerivedCategory.singleFunctor C 0).obj Y)).homologySequenceδ ((CategoryTheory.Pretriangulated.triangleOpEquivalence (DerivedCategory C)).functor.obj (Opposite.op hS.singleTriangle)) ↑n₀ ↑n₁ ⋯)) x.hom = (hS.extClass.comp x h).hom - CategoryTheory.Triangulated.SpectralObject.mapHomologicalFunctor_H 📋 Mathlib.CategoryTheory.Triangulated.SpectralObject
{C : Type u_1} {ι : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} ι] [CategoryTheory.Limits.HasZeroObject C] [CategoryTheory.HasShift C ℤ] [CategoryTheory.Preadditive C] [∀ (n : ℤ), (CategoryTheory.shiftFunctor C n).Additive] [CategoryTheory.Pretriangulated C] (X : CategoryTheory.Triangulated.SpectralObject C ι) {A : Type u_4} [CategoryTheory.Category.{v_4, u_4} A] [CategoryTheory.Abelian A] (F : CategoryTheory.Functor C A) [F.IsHomological] [F.ShiftSequence ℤ] (n : ℤ) : (X.mapHomologicalFunctor F).H n = X.ω₁.comp (F.shift n) - CategoryTheory.Triangulated.SpectralObject.mapHomologicalFunctorFunctor_map_hom 📋 Mathlib.CategoryTheory.Triangulated.SpectralObject
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroObject C] [CategoryTheory.HasShift C ℤ] [CategoryTheory.Preadditive C] [∀ (n : ℤ), (CategoryTheory.shiftFunctor C n).Additive] [CategoryTheory.Pretriangulated C] {A : Type u_4} [CategoryTheory.Category.{v_4, u_4} A] [CategoryTheory.Abelian A] (F : CategoryTheory.Functor C A) [F.IsHomological] [F.ShiftSequence ℤ] (ι : Type u_5) [CategoryTheory.Category.{v_5, u_5} ι] {X✝ Y✝ : CategoryTheory.Triangulated.SpectralObject C ι} (φ : X✝ ⟶ Y✝) (n : ℤ) : ((CategoryTheory.Triangulated.SpectralObject.mapHomologicalFunctorFunctor F ι).map φ).hom n = CategoryTheory.Functor.whiskerRight φ.hom (F.shift n)
About
Loogle searches Lean and Mathlib definitions and theorems.
You can use Loogle from within the Lean4 VSCode language extension
using the Loogle command from the command palette. You can also try the
#loogle command from LeanSearchClient,
the CLI version, the Loogle
VS Code extension, the lean.nvim
integration or the Zulip bot.
Usage
Loogle finds definitions and lemmas in various ways:
By constant:
🔍Real.sin
finds all lemmas whose statement somehow mentions the sine function.By lemma name substring:
🔍"differ"
finds all lemmas that have"differ"somewhere in their lemma name.By subexpression:
🔍_ * (_ ^ _)
finds all lemmas whose statements somewhere include a product where the second argument is raised to some power.The pattern can also be non-linear, as in
🔍Real.sqrt ?a * Real.sqrt ?aIf the pattern has parameters, they are matched in any order. Both of these will find
List.map:
🔍(?a -> ?b) -> List ?a -> List ?b
🔍List ?a -> (?a -> ?b) -> List ?bBy main conclusion:
🔍|- tsum _ = _ * tsum _
finds all lemmas where the conclusion (the subexpression to the right of all→and∀) has the given shape.As before, if the pattern has parameters, they are matched against the hypotheses of the lemma in any order; for example,
🔍|- _ < _ → tsum _ < tsum _
will findtsum_lt_tsumeven though the hypothesisf i < g iis not the last.You can filter for definitions vs theorems: Using
⊢ (_ : Type _)finds all definitions which provide data while⊢ (_ : Prop)finds all theorems (and definitions of proofs).
If you pass more than one such search filter, separated by commas
Loogle will return lemmas which match all of them. The
search
🔍 Real.sin, "two", tsum, _ * _, _ ^ _, |- _ < _ → _
would find all lemmas which mention the constants Real.sin
and tsum, have "two" as a substring of the
lemma name, include a product and a power somewhere in the type,
and have a hypothesis of the form _ < _ (if
there were any such lemmas). Metavariables (?a) are
assigned independently in each filter.
The #lucky button will directly send you to the
documentation of the first hit.
Source code
You can find the source code for this service at https://github.com/nomeata/loogle. The https://loogle.lean-lang.org/ service is provided by the Lean FRO. Please review the Lean FRO Terms of Use and Privacy Policy.
This is Loogle revision 9f11169 serving mathlib revision 69fae59