Loogle!
Result
Found 167 declarations mentioning CategoryTheory.Functor.CommShift.commShiftIso.
- CategoryTheory.Functor.CommShift.commShiftIso 📋 Mathlib.CategoryTheory.Shift.CommShift
{C : Type u_1} {D : Type u_2} {inst✝ : CategoryTheory.Category.{v_1, u_1} C} {inst✝¹ : CategoryTheory.Category.{v_2, u_2} D} (F : CategoryTheory.Functor C D) {A : Type u_6} {inst✝² : AddMonoid A} {inst✝³ : CategoryTheory.HasShift C A} {inst✝⁴ : CategoryTheory.HasShift D A} [self : F.CommShift A] (a : A) : (CategoryTheory.shiftFunctor C a).comp F ≅ F.comp (CategoryTheory.shiftFunctor D a) - CategoryTheory.Functor.commShiftIso_zero' 📋 Mathlib.CategoryTheory.Shift.CommShift
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] (F : CategoryTheory.Functor C D) (A : Type u_4) [AddMonoid A] [CategoryTheory.HasShift C A] [CategoryTheory.HasShift D A] [F.CommShift A] (a : A) (h : a = 0) : CategoryTheory.Functor.commShiftIso F a = CategoryTheory.Functor.CommShift.isoZero' F A a h - CategoryTheory.Functor.CommShift.commShiftIso_zero 📋 Mathlib.CategoryTheory.Shift.CommShift
{C : Type u_1} {D : Type u_2} {inst✝ : CategoryTheory.Category.{v_1, u_1} C} {inst✝¹ : CategoryTheory.Category.{v_2, u_2} D} (F : CategoryTheory.Functor C D) (A : Type u_6) {inst✝² : AddMonoid A} {inst✝³ : CategoryTheory.HasShift C A} {inst✝⁴ : CategoryTheory.HasShift D A} [self : F.CommShift A] : CategoryTheory.Functor.commShiftIso F 0 = CategoryTheory.Functor.CommShift.isoZero F A - CategoryTheory.Functor.commShiftIso_add' 📋 Mathlib.CategoryTheory.Shift.CommShift
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] (F : CategoryTheory.Functor C D) {A : Type u_4} [AddMonoid A] [CategoryTheory.HasShift C A] [CategoryTheory.HasShift D A] [F.CommShift A] {a b c : A} (h : a + b = c) : CategoryTheory.Functor.commShiftIso F c = CategoryTheory.Functor.CommShift.isoAdd' h (CategoryTheory.Functor.commShiftIso F a) (CategoryTheory.Functor.commShiftIso F b) - CategoryTheory.Functor.shiftFunctorIso_ofHasShiftOfFullyFaithful 📋 Mathlib.CategoryTheory.Shift.CommShift
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] {A : Type u_4} [AddMonoid A] [CategoryTheory.HasShift D A] {F : CategoryTheory.Functor C D} (hF : F.FullyFaithful) (s : A → CategoryTheory.Functor C C) (i : (i : A) → (s i).comp F ≅ F.comp (CategoryTheory.shiftFunctor D i)) (a : A) : CategoryTheory.Functor.commShiftIso F a = i a - CategoryTheory.Functor.CommShift.commShiftIso_add 📋 Mathlib.CategoryTheory.Shift.CommShift
{C : Type u_1} {D : Type u_2} {inst✝ : CategoryTheory.Category.{v_1, u_1} C} {inst✝¹ : CategoryTheory.Category.{v_2, u_2} D} (F : CategoryTheory.Functor C D) {A : Type u_6} {inst✝² : AddMonoid A} {inst✝³ : CategoryTheory.HasShift C A} {inst✝⁴ : CategoryTheory.HasShift D A} [self : F.CommShift A] (a b : A) : CategoryTheory.Functor.commShiftIso F (a + b) = CategoryTheory.Functor.CommShift.isoAdd (CategoryTheory.Functor.commShiftIso F a) (CategoryTheory.Functor.commShiftIso F b) - CategoryTheory.Functor.commShiftIso_id_hom_app 📋 Mathlib.CategoryTheory.Shift.CommShift
(C : Type u_1) [CategoryTheory.Category.{v_1, u_1} C] {A : Type u_4} [AddMonoid A] [CategoryTheory.HasShift C A] (x✝ : A) (X : C) : (CategoryTheory.Functor.commShiftIso (CategoryTheory.Functor.id C) x✝).hom.app X = CategoryTheory.CategoryStruct.id ((CategoryTheory.shiftFunctor C x✝).obj X) - CategoryTheory.Functor.commShiftIso_id_inv_app 📋 Mathlib.CategoryTheory.Shift.CommShift
(C : Type u_1) [CategoryTheory.Category.{v_1, u_1} C] {A : Type u_4} [AddMonoid A] [CategoryTheory.HasShift C A] (x✝ : A) (X : C) : (CategoryTheory.Functor.commShiftIso (CategoryTheory.Functor.id C) x✝).inv.app X = CategoryTheory.CategoryStruct.id ((CategoryTheory.shiftFunctor C x✝).obj X) - CategoryTheory.Functor.CommShift.id_commShiftIso_hom_app 📋 Mathlib.CategoryTheory.Shift.CommShift
(C : Type u_1) [CategoryTheory.Category.{v_1, u_1} C] {A : Type u_4} [AddMonoid A] [CategoryTheory.HasShift C A] (x✝ : A) (X : C) : (CategoryTheory.Functor.commShiftIso (CategoryTheory.Functor.id C) x✝).hom.app X = CategoryTheory.CategoryStruct.id ((CategoryTheory.shiftFunctor C x✝).obj X) - CategoryTheory.Functor.CommShift.id_commShiftIso_inv_app 📋 Mathlib.CategoryTheory.Shift.CommShift
(C : Type u_1) [CategoryTheory.Category.{v_1, u_1} C] {A : Type u_4} [AddMonoid A] [CategoryTheory.HasShift C A] (x✝ : A) (X : C) : (CategoryTheory.Functor.commShiftIso (CategoryTheory.Functor.id C) x✝).inv.app X = CategoryTheory.CategoryStruct.id ((CategoryTheory.shiftFunctor C x✝).obj X) - CategoryTheory.NatTrans.shift_comm 📋 Mathlib.CategoryTheory.Shift.CommShift
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] {F₁ F₂ : CategoryTheory.Functor C D} (τ : F₁ ⟶ F₂) {A : Type u_5} [AddMonoid A] [CategoryTheory.HasShift C A] [CategoryTheory.HasShift D A] [F₁.CommShift A] [F₂.CommShift A] [CategoryTheory.NatTrans.CommShift τ A] (a : A) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Functor.commShiftIso F₁ a).hom (CategoryTheory.Functor.whiskerRight τ (CategoryTheory.shiftFunctor D a)) = CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctor C a).whiskerLeft τ) (CategoryTheory.Functor.commShiftIso F₂ a).hom - CategoryTheory.NatTrans.CommShift.shift_comm 📋 Mathlib.CategoryTheory.Shift.CommShift
{C : Type u_1} {D : Type u_2} {inst✝ : CategoryTheory.Category.{v_1, u_1} C} {inst✝¹ : CategoryTheory.Category.{v_2, u_2} D} {F₁ F₂ : CategoryTheory.Functor C D} {τ : F₁ ⟶ F₂} {A : Type u_5} {inst✝² : AddMonoid A} {inst✝³ : CategoryTheory.HasShift C A} {inst✝⁴ : CategoryTheory.HasShift D A} {inst✝⁵ : F₁.CommShift A} {inst✝⁶ : F₂.CommShift A} [self : CategoryTheory.NatTrans.CommShift τ A] (a : A) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Functor.commShiftIso F₁ a).hom (CategoryTheory.Functor.whiskerRight τ (CategoryTheory.shiftFunctor D a)) = CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctor C a).whiskerLeft τ) (CategoryTheory.Functor.commShiftIso F₂ a).hom - CategoryTheory.NatTrans.CommShiftCore.mk 📋 Mathlib.CategoryTheory.Shift.CommShift
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] {F₁ F₂ : CategoryTheory.Functor C D} {τ : F₁ ⟶ F₂} {A : Type u_5} [AddMonoid A] [CategoryTheory.HasShift C A] [CategoryTheory.HasShift D A] [F₁.CommShift A] [F₂.CommShift A] {a : A} (shift_comm : CategoryTheory.CategoryStruct.comp (CategoryTheory.Functor.commShiftIso F₁ a).hom (CategoryTheory.Functor.whiskerRight τ (CategoryTheory.shiftFunctor D a)) = CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctor C a).whiskerLeft τ) (CategoryTheory.Functor.commShiftIso F₂ a).hom) : CategoryTheory.NatTrans.CommShiftCore τ a - CategoryTheory.NatTrans.CommShiftCore.shift_comm 📋 Mathlib.CategoryTheory.Shift.CommShift
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] {F₁ F₂ : CategoryTheory.Functor C D} {τ : F₁ ⟶ F₂} {A : Type u_5} [AddMonoid A] [CategoryTheory.HasShift C A] [CategoryTheory.HasShift D A] [F₁.CommShift A] [F₂.CommShift A] {a : A} (self : CategoryTheory.NatTrans.CommShiftCore τ a) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Functor.commShiftIso F₁ a).hom (CategoryTheory.Functor.whiskerRight τ (CategoryTheory.shiftFunctor D a)) = CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctor C a).whiskerLeft τ) (CategoryTheory.Functor.commShiftIso F₂ a).hom - CategoryTheory.NatTrans.CommShift.mk 📋 Mathlib.CategoryTheory.Shift.CommShift
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] {F₁ F₂ : CategoryTheory.Functor C D} {τ : F₁ ⟶ F₂} {A : Type u_5} [AddMonoid A] [CategoryTheory.HasShift C A] [CategoryTheory.HasShift D A] [F₁.CommShift A] [F₂.CommShift A] (shift_comm : ∀ (a : A), CategoryTheory.CategoryStruct.comp (CategoryTheory.Functor.commShiftIso F₁ a).hom (CategoryTheory.Functor.whiskerRight τ (CategoryTheory.shiftFunctor D a)) = CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctor C a).whiskerLeft τ) (CategoryTheory.Functor.commShiftIso F₂ a).hom := by cat_disch) : CategoryTheory.NatTrans.CommShift τ A - CategoryTheory.Functor.commShiftIso_hom_naturality 📋 Mathlib.CategoryTheory.Shift.CommShift
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] (F : CategoryTheory.Functor C D) {A : Type u_4} [AddMonoid A] [CategoryTheory.HasShift C A] [CategoryTheory.HasShift D A] [F.CommShift A] {X Y : C} (f : X ⟶ Y) (a : A) : CategoryTheory.CategoryStruct.comp (F.map ((CategoryTheory.shiftFunctor C a).map f)) ((CategoryTheory.Functor.commShiftIso F a).hom.app Y) = CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso F a).hom.app X) ((CategoryTheory.shiftFunctor D a).map (F.map f)) - CategoryTheory.Functor.commShiftIso_inv_naturality 📋 Mathlib.CategoryTheory.Shift.CommShift
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] (F : CategoryTheory.Functor C D) {A : Type u_4} [AddMonoid A] [CategoryTheory.HasShift C A] [CategoryTheory.HasShift D A] [F.CommShift A] {X Y : C} (f : X ⟶ Y) (a : A) : CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctor D a).map (F.map f)) ((CategoryTheory.Functor.commShiftIso F a).inv.app Y) = CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso F a).inv.app X) (F.map ((CategoryTheory.shiftFunctor C a).map f)) - CategoryTheory.Functor.CommShift.ofIso_commShiftIso_hom_app 📋 Mathlib.CategoryTheory.Shift.CommShift
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] {F G : CategoryTheory.Functor C D} (e : F ≅ G) (A : Type u_3) [AddMonoid A] [CategoryTheory.HasShift C A] [CategoryTheory.HasShift D A] [F.CommShift A] (a : A) (X : C) : (CategoryTheory.Functor.commShiftIso G a).hom.app X = CategoryTheory.CategoryStruct.comp (e.inv.app ((CategoryTheory.shiftFunctor C a).obj X)) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso F a).hom.app X) ((CategoryTheory.shiftFunctor D a).map (e.hom.app X))) - CategoryTheory.Functor.CommShift.ofIso_commShiftIso_inv_app 📋 Mathlib.CategoryTheory.Shift.CommShift
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] {F G : CategoryTheory.Functor C D} (e : F ≅ G) (A : Type u_3) [AddMonoid A] [CategoryTheory.HasShift C A] [CategoryTheory.HasShift D A] [F.CommShift A] (a : A) (X : C) : (CategoryTheory.Functor.commShiftIso G a).inv.app X = CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctor D a).map (e.inv.app X)) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso F a).inv.app X) (e.hom.app ((CategoryTheory.shiftFunctor C a).obj X))) - CategoryTheory.NatTrans.shift_app_comm 📋 Mathlib.CategoryTheory.Shift.CommShift
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] {F₁ F₂ : CategoryTheory.Functor C D} (τ : F₁ ⟶ F₂) {A : Type u_5} [AddMonoid A] [CategoryTheory.HasShift C A] [CategoryTheory.HasShift D A] [F₁.CommShift A] [F₂.CommShift A] [CategoryTheory.NatTrans.CommShift τ A] (a : A) (X : C) : CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso F₁ a).hom.app X) ((CategoryTheory.shiftFunctor D a).map (τ.app X)) = CategoryTheory.CategoryStruct.comp (τ.app ((CategoryTheory.shiftFunctor C a).obj X)) ((CategoryTheory.Functor.commShiftIso F₂ a).hom.app X) - CategoryTheory.NatTrans.CommShiftCore.shift_app_comm 📋 Mathlib.CategoryTheory.Shift.CommShift
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] {F₁ F₂ : CategoryTheory.Functor C D} (τ : F₁ ⟶ F₂) {A : Type u_5} [AddMonoid A] [CategoryTheory.HasShift C A] [CategoryTheory.HasShift D A] [F₁.CommShift A] [F₂.CommShift A] {a : A} (hτ : CategoryTheory.NatTrans.CommShiftCore τ a) (X : C) : CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso F₁ a).hom.app X) ((CategoryTheory.shiftFunctor D a).map (τ.app X)) = CategoryTheory.CategoryStruct.comp (τ.app ((CategoryTheory.shiftFunctor C a).obj X)) ((CategoryTheory.Functor.commShiftIso F₂ a).hom.app X) - CategoryTheory.NatTrans.app_shift 📋 Mathlib.CategoryTheory.Shift.CommShift
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] {F₁ F₂ : CategoryTheory.Functor C D} (τ : F₁ ⟶ F₂) {A : Type u_5} [AddMonoid A] [CategoryTheory.HasShift C A] [CategoryTheory.HasShift D A] [F₁.CommShift A] [F₂.CommShift A] [CategoryTheory.NatTrans.CommShift τ A] (a : A) (X : C) : τ.app ((CategoryTheory.shiftFunctor C a).obj X) = CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso F₁ a).hom.app X) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctor D a).map (τ.app X)) ((CategoryTheory.Functor.commShiftIso F₂ a).inv.app X)) - CategoryTheory.NatTrans.shift_app 📋 Mathlib.CategoryTheory.Shift.CommShift
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] {F₁ F₂ : CategoryTheory.Functor C D} (τ : F₁ ⟶ F₂) {A : Type u_5} [AddMonoid A] [CategoryTheory.HasShift C A] [CategoryTheory.HasShift D A] [F₁.CommShift A] [F₂.CommShift A] [CategoryTheory.NatTrans.CommShift τ A] (a : A) (X : C) : (CategoryTheory.shiftFunctor D a).map (τ.app X) = CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso F₁ a).inv.app X) (CategoryTheory.CategoryStruct.comp (τ.app ((CategoryTheory.shiftFunctor C a).obj X)) ((CategoryTheory.Functor.commShiftIso F₂ a).hom.app X)) - CategoryTheory.NatTrans.CommShiftCore.app_shift 📋 Mathlib.CategoryTheory.Shift.CommShift
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] {F₁ F₂ : CategoryTheory.Functor C D} (τ : F₁ ⟶ F₂) {A : Type u_5} [AddMonoid A] [CategoryTheory.HasShift C A] [CategoryTheory.HasShift D A] [F₁.CommShift A] [F₂.CommShift A] {a : A} (hτ : CategoryTheory.NatTrans.CommShiftCore τ a) (X : C) : τ.app ((CategoryTheory.shiftFunctor C a).obj X) = CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso F₁ a).hom.app X) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctor D a).map (τ.app X)) ((CategoryTheory.Functor.commShiftIso F₂ a).inv.app X)) - CategoryTheory.NatTrans.CommShiftCore.shift_app 📋 Mathlib.CategoryTheory.Shift.CommShift
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] {F₁ F₂ : CategoryTheory.Functor C D} (τ : F₁ ⟶ F₂) {A : Type u_5} [AddMonoid A] [CategoryTheory.HasShift C A] [CategoryTheory.HasShift D A] [F₁.CommShift A] [F₂.CommShift A] {a : A} (hτ : CategoryTheory.NatTrans.CommShiftCore τ a) (X : C) : (CategoryTheory.shiftFunctor D a).map (τ.app X) = CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso F₁ a).inv.app X) (CategoryTheory.CategoryStruct.comp (τ.app ((CategoryTheory.shiftFunctor C a).obj X)) ((CategoryTheory.Functor.commShiftIso F₂ a).hom.app X)) - CategoryTheory.NatTrans.shift_comm_assoc 📋 Mathlib.CategoryTheory.Shift.CommShift
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] {F₁ F₂ : CategoryTheory.Functor C D} (τ : F₁ ⟶ F₂) {A : Type u_5} [AddMonoid A] [CategoryTheory.HasShift C A] [CategoryTheory.HasShift D A] [F₁.CommShift A] [F₂.CommShift A] [CategoryTheory.NatTrans.CommShift τ A] (a : A) {Z : CategoryTheory.Functor C D} (h : F₂.comp (CategoryTheory.shiftFunctor D a) ⟶ Z) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Functor.commShiftIso F₁ a).hom (CategoryTheory.CategoryStruct.comp (CategoryTheory.Functor.whiskerRight τ (CategoryTheory.shiftFunctor D a)) h) = CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctor C a).whiskerLeft τ) (CategoryTheory.CategoryStruct.comp (CategoryTheory.Functor.commShiftIso F₂ a).hom h) - CategoryTheory.NatTrans.CommShiftCore.shift_comm_assoc 📋 Mathlib.CategoryTheory.Shift.CommShift
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] {F₁ F₂ : CategoryTheory.Functor C D} {τ : F₁ ⟶ F₂} {A : Type u_5} [AddMonoid A] [CategoryTheory.HasShift C A] [CategoryTheory.HasShift D A] [F₁.CommShift A] [F₂.CommShift A] {a : A} (self : CategoryTheory.NatTrans.CommShiftCore τ a) {Z : CategoryTheory.Functor C D} (h : F₂.comp (CategoryTheory.shiftFunctor D a) ⟶ Z) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Functor.commShiftIso F₁ a).hom (CategoryTheory.CategoryStruct.comp (CategoryTheory.Functor.whiskerRight τ (CategoryTheory.shiftFunctor D a)) h) = CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctor C a).whiskerLeft τ) (CategoryTheory.CategoryStruct.comp (CategoryTheory.Functor.commShiftIso F₂ a).hom h) - CategoryTheory.Functor.commShiftIso_hom_naturality_assoc 📋 Mathlib.CategoryTheory.Shift.CommShift
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] (F : CategoryTheory.Functor C D) {A : Type u_4} [AddMonoid A] [CategoryTheory.HasShift C A] [CategoryTheory.HasShift D A] [F.CommShift A] {X Y : C} (f : X ⟶ Y) (a : A) {Z : D} (h : (CategoryTheory.shiftFunctor D a).obj (F.obj Y) ⟶ Z) : CategoryTheory.CategoryStruct.comp (F.map ((CategoryTheory.shiftFunctor C a).map f)) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso F a).hom.app Y) h) = CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso F a).hom.app X) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctor D a).map (F.map f)) h) - CategoryTheory.Functor.commShiftIso_inv_naturality_assoc 📋 Mathlib.CategoryTheory.Shift.CommShift
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] (F : CategoryTheory.Functor C D) {A : Type u_4} [AddMonoid A] [CategoryTheory.HasShift C A] [CategoryTheory.HasShift D A] [F.CommShift A] {X Y : C} (f : X ⟶ Y) (a : A) {Z : D} (h : F.obj ((CategoryTheory.shiftFunctor C a).obj Y) ⟶ Z) : CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctor D a).map (F.map f)) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso F a).inv.app Y) h) = CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso F a).inv.app X) (CategoryTheory.CategoryStruct.comp (F.map ((CategoryTheory.shiftFunctor C a).map f)) h) - CategoryTheory.NatTrans.app_shift_assoc 📋 Mathlib.CategoryTheory.Shift.CommShift
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] {F₁ F₂ : CategoryTheory.Functor C D} (τ : F₁ ⟶ F₂) {A : Type u_5} [AddMonoid A] [CategoryTheory.HasShift C A] [CategoryTheory.HasShift D A] [F₁.CommShift A] [F₂.CommShift A] [CategoryTheory.NatTrans.CommShift τ A] (a : A) (X : C) {Z : D} (h : F₂.obj ((CategoryTheory.shiftFunctor C a).obj X) ⟶ Z) : CategoryTheory.CategoryStruct.comp (τ.app ((CategoryTheory.shiftFunctor C a).obj X)) h = CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso F₁ a).hom.app X) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctor D a).map (τ.app X)) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso F₂ a).inv.app X) h)) - CategoryTheory.NatTrans.shift_app_assoc 📋 Mathlib.CategoryTheory.Shift.CommShift
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] {F₁ F₂ : CategoryTheory.Functor C D} (τ : F₁ ⟶ F₂) {A : Type u_5} [AddMonoid A] [CategoryTheory.HasShift C A] [CategoryTheory.HasShift D A] [F₁.CommShift A] [F₂.CommShift A] [CategoryTheory.NatTrans.CommShift τ A] (a : A) (X : C) {Z : D} (h : (CategoryTheory.shiftFunctor D a).obj (F₂.obj X) ⟶ Z) : CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctor D a).map (τ.app X)) h = CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso F₁ a).inv.app X) (CategoryTheory.CategoryStruct.comp (τ.app ((CategoryTheory.shiftFunctor C a).obj X)) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso F₂ a).hom.app X) h)) - CategoryTheory.NatTrans.shift_app_comm_assoc 📋 Mathlib.CategoryTheory.Shift.CommShift
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] {F₁ F₂ : CategoryTheory.Functor C D} (τ : F₁ ⟶ F₂) {A : Type u_5} [AddMonoid A] [CategoryTheory.HasShift C A] [CategoryTheory.HasShift D A] [F₁.CommShift A] [F₂.CommShift A] [CategoryTheory.NatTrans.CommShift τ A] (a : A) (X : C) {Z : D} (h : (CategoryTheory.shiftFunctor D a).obj (F₂.obj X) ⟶ Z) : CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso F₁ a).hom.app X) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctor D a).map (τ.app X)) h) = CategoryTheory.CategoryStruct.comp (τ.app ((CategoryTheory.shiftFunctor C a).obj X)) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso F₂ a).hom.app X) h) - CategoryTheory.NatTrans.CommShiftCore.app_shift_assoc 📋 Mathlib.CategoryTheory.Shift.CommShift
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] {F₁ F₂ : CategoryTheory.Functor C D} (τ : F₁ ⟶ F₂) {A : Type u_5} [AddMonoid A] [CategoryTheory.HasShift C A] [CategoryTheory.HasShift D A] [F₁.CommShift A] [F₂.CommShift A] {a : A} (hτ : CategoryTheory.NatTrans.CommShiftCore τ a) (X : C) {Z : D} (h : F₂.obj ((CategoryTheory.shiftFunctor C a).obj X) ⟶ Z) : CategoryTheory.CategoryStruct.comp (τ.app ((CategoryTheory.shiftFunctor C a).obj X)) h = CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso F₁ a).hom.app X) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctor D a).map (τ.app X)) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso F₂ a).inv.app X) h)) - CategoryTheory.NatTrans.CommShiftCore.shift_app_assoc 📋 Mathlib.CategoryTheory.Shift.CommShift
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] {F₁ F₂ : CategoryTheory.Functor C D} (τ : F₁ ⟶ F₂) {A : Type u_5} [AddMonoid A] [CategoryTheory.HasShift C A] [CategoryTheory.HasShift D A] [F₁.CommShift A] [F₂.CommShift A] {a : A} (hτ : CategoryTheory.NatTrans.CommShiftCore τ a) (X : C) {Z : D} (h : (CategoryTheory.shiftFunctor D a).obj (F₂.obj X) ⟶ Z) : CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctor D a).map (τ.app X)) h = CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso F₁ a).inv.app X) (CategoryTheory.CategoryStruct.comp (τ.app ((CategoryTheory.shiftFunctor C a).obj X)) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso F₂ a).hom.app X) h)) - CategoryTheory.NatTrans.CommShiftCore.shift_app_comm_assoc 📋 Mathlib.CategoryTheory.Shift.CommShift
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] {F₁ F₂ : CategoryTheory.Functor C D} (τ : F₁ ⟶ F₂) {A : Type u_5} [AddMonoid A] [CategoryTheory.HasShift C A] [CategoryTheory.HasShift D A] [F₁.CommShift A] [F₂.CommShift A] {a : A} (hτ : CategoryTheory.NatTrans.CommShiftCore τ a) (X : C) {Z : D} (h : (CategoryTheory.shiftFunctor D a).obj (F₂.obj X) ⟶ Z) : CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso F₁ a).hom.app X) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctor D a).map (τ.app X)) h) = CategoryTheory.CategoryStruct.comp (τ.app ((CategoryTheory.shiftFunctor C a).obj X)) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso F₂ a).hom.app X) h) - CategoryTheory.Functor.commShiftIso_comp_hom_app 📋 Mathlib.CategoryTheory.Shift.CommShift
{C : Type u_1} {D : Type u_2} {E : Type u_3} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] [CategoryTheory.Category.{v_3, u_3} E] (F : CategoryTheory.Functor C D) (G : CategoryTheory.Functor D E) {A : Type u_4} [AddMonoid A] [CategoryTheory.HasShift C A] [CategoryTheory.HasShift D A] [CategoryTheory.HasShift E A] [F.CommShift A] [G.CommShift A] (a : A) (X : C) : (CategoryTheory.Functor.commShiftIso (F.comp G) a).hom.app X = CategoryTheory.CategoryStruct.comp (G.map ((CategoryTheory.Functor.commShiftIso F a).hom.app X)) ((CategoryTheory.Functor.commShiftIso G a).hom.app (F.obj X)) - CategoryTheory.Functor.commShiftIso_comp_inv_app 📋 Mathlib.CategoryTheory.Shift.CommShift
{C : Type u_1} {D : Type u_2} {E : Type u_3} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] [CategoryTheory.Category.{v_3, u_3} E] (F : CategoryTheory.Functor C D) (G : CategoryTheory.Functor D E) {A : Type u_4} [AddMonoid A] [CategoryTheory.HasShift C A] [CategoryTheory.HasShift D A] [CategoryTheory.HasShift E A] [F.CommShift A] [G.CommShift A] (a : A) (X : C) : (CategoryTheory.Functor.commShiftIso (F.comp G) a).inv.app X = CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso G a).inv.app (F.obj X)) (G.map ((CategoryTheory.Functor.commShiftIso F a).inv.app X)) - CategoryTheory.Functor.CommShift.comp_commShiftIso_hom_app 📋 Mathlib.CategoryTheory.Shift.CommShift
{C : Type u_1} {D : Type u_2} {E : Type u_3} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] [CategoryTheory.Category.{v_3, u_3} E] (F : CategoryTheory.Functor C D) (G : CategoryTheory.Functor D E) {A : Type u_4} [AddMonoid A] [CategoryTheory.HasShift C A] [CategoryTheory.HasShift D A] [CategoryTheory.HasShift E A] [F.CommShift A] [G.CommShift A] (a : A) (X : C) : (CategoryTheory.Functor.commShiftIso (F.comp G) a).hom.app X = CategoryTheory.CategoryStruct.comp (G.map ((CategoryTheory.Functor.commShiftIso F a).hom.app X)) ((CategoryTheory.Functor.commShiftIso G a).hom.app (F.obj X)) - CategoryTheory.Functor.CommShift.comp_commShiftIso_inv_app 📋 Mathlib.CategoryTheory.Shift.CommShift
{C : Type u_1} {D : Type u_2} {E : Type u_3} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] [CategoryTheory.Category.{v_3, u_3} E] (F : CategoryTheory.Functor C D) (G : CategoryTheory.Functor D E) {A : Type u_4} [AddMonoid A] [CategoryTheory.HasShift C A] [CategoryTheory.HasShift D A] [CategoryTheory.HasShift E A] [F.CommShift A] [G.CommShift A] (a : A) (X : C) : (CategoryTheory.Functor.commShiftIso (F.comp G) a).inv.app X = CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso G a).inv.app (F.obj X)) (G.map ((CategoryTheory.Functor.commShiftIso F a).inv.app X)) - CategoryTheory.Functor.map_shiftFunctorCompIsoId_hom_app 📋 Mathlib.CategoryTheory.Shift.CommShift
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] (F : CategoryTheory.Functor C D) {A : Type u_4} [AddMonoid A] [CategoryTheory.HasShift C A] [CategoryTheory.HasShift D A] [F.CommShift A] (X : C) (a b : A) (h : a + b = 0) : F.map ((CategoryTheory.shiftFunctorCompIsoId C a b h).hom.app X) = CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso F b).hom.app ((CategoryTheory.shiftFunctor C a).obj X)) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctor D b).map ((CategoryTheory.Functor.commShiftIso F a).hom.app X)) ((CategoryTheory.shiftFunctorCompIsoId D a b h).hom.app (F.obj X))) - CategoryTheory.Functor.map_shiftFunctorCompIsoId_inv_app 📋 Mathlib.CategoryTheory.Shift.CommShift
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] (F : CategoryTheory.Functor C D) {A : Type u_4} [AddMonoid A] [CategoryTheory.HasShift C A] [CategoryTheory.HasShift D A] [F.CommShift A] (X : C) (a b : A) (h : a + b = 0) : F.map ((CategoryTheory.shiftFunctorCompIsoId C a b h).inv.app X) = CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctorCompIsoId D a b h).inv.app (F.obj X)) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctor D b).map ((CategoryTheory.Functor.commShiftIso F a).inv.app X)) ((CategoryTheory.Functor.commShiftIso F b).inv.app ((CategoryTheory.shiftFunctor C a).obj X))) - CategoryTheory.Functor.map_shiftFunctorCompIsoId_hom_app_assoc 📋 Mathlib.CategoryTheory.Shift.CommShift
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] (F : CategoryTheory.Functor C D) {A : Type u_4} [AddMonoid A] [CategoryTheory.HasShift C A] [CategoryTheory.HasShift D A] [F.CommShift A] (X : C) (a b : A) (h : a + b = 0) {Z : D} (h✝ : F.obj X ⟶ Z) : CategoryTheory.CategoryStruct.comp (F.map ((CategoryTheory.shiftFunctorCompIsoId C a b h).hom.app X)) h✝ = CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso F b).hom.app ((CategoryTheory.shiftFunctor C a).obj X)) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctor D b).map ((CategoryTheory.Functor.commShiftIso F a).hom.app X)) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctorCompIsoId D a b h).hom.app (F.obj X)) h✝)) - CategoryTheory.Functor.map_shiftFunctorCompIsoId_inv_app_assoc 📋 Mathlib.CategoryTheory.Shift.CommShift
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] (F : CategoryTheory.Functor C D) {A : Type u_4} [AddMonoid A] [CategoryTheory.HasShift C A] [CategoryTheory.HasShift D A] [F.CommShift A] (X : C) (a b : A) (h : a + b = 0) {Z : D} (h✝ : F.obj ((CategoryTheory.shiftFunctor C b).obj ((CategoryTheory.shiftFunctor C a).obj X)) ⟶ Z) : CategoryTheory.CategoryStruct.comp (F.map ((CategoryTheory.shiftFunctorCompIsoId C a b h).inv.app X)) h✝ = CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctorCompIsoId D a b h).inv.app (F.obj X)) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctor D b).map ((CategoryTheory.Functor.commShiftIso F a).inv.app X)) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso F b).inv.app ((CategoryTheory.shiftFunctor C a).obj X)) h✝)) - CategoryTheory.Functor.CommShift.OfComp.map_iso_hom_app 📋 Mathlib.CategoryTheory.Shift.CommShift
{C : Type u_1} {D : Type u_2} {E : Type u_3} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] [CategoryTheory.Category.{v_3, u_3} E] {F : CategoryTheory.Functor C D} {G : CategoryTheory.Functor D E} {H : CategoryTheory.Functor C E} (e : F.comp G ≅ H) [G.Full] [G.Faithful] {A : Type u_5} [AddMonoid A] [CategoryTheory.HasShift C A] [CategoryTheory.HasShift D A] [CategoryTheory.HasShift E A] [G.CommShift A] [H.CommShift A] (a : A) (X : C) : G.map ((CategoryTheory.Functor.CommShift.OfComp.iso e a).hom.app X) = CategoryTheory.CategoryStruct.comp (e.hom.app ((CategoryTheory.shiftFunctor C a).obj X)) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso H a).hom.app X) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctor E a).map (e.inv.app X)) ((CategoryTheory.Functor.commShiftIso G a).inv.app (F.obj X)))) - CategoryTheory.Functor.CommShift.OfComp.map_iso_inv_app 📋 Mathlib.CategoryTheory.Shift.CommShift
{C : Type u_1} {D : Type u_2} {E : Type u_3} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] [CategoryTheory.Category.{v_3, u_3} E] {F : CategoryTheory.Functor C D} {G : CategoryTheory.Functor D E} {H : CategoryTheory.Functor C E} (e : F.comp G ≅ H) [G.Full] [G.Faithful] {A : Type u_5} [AddMonoid A] [CategoryTheory.HasShift C A] [CategoryTheory.HasShift D A] [CategoryTheory.HasShift E A] [G.CommShift A] [H.CommShift A] (a : A) (X : C) : G.map ((CategoryTheory.Functor.CommShift.OfComp.iso e a).inv.app X) = CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso G a).hom.app (F.obj X)) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctor E a).map (e.hom.app X)) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso H a).inv.app X) (e.inv.app ((CategoryTheory.shiftFunctor C a).obj X)))) - CategoryTheory.Functor.CommShift.OfComp.map_iso_hom_app_assoc 📋 Mathlib.CategoryTheory.Shift.CommShift
{C : Type u_1} {D : Type u_2} {E : Type u_3} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] [CategoryTheory.Category.{v_3, u_3} E] {F : CategoryTheory.Functor C D} {G : CategoryTheory.Functor D E} {H : CategoryTheory.Functor C E} (e : F.comp G ≅ H) [G.Full] [G.Faithful] {A : Type u_5} [AddMonoid A] [CategoryTheory.HasShift C A] [CategoryTheory.HasShift D A] [CategoryTheory.HasShift E A] [G.CommShift A] [H.CommShift A] (a : A) (X : C) {Z : E} (h : G.obj ((CategoryTheory.shiftFunctor D a).obj (F.obj X)) ⟶ Z) : CategoryTheory.CategoryStruct.comp (G.map ((CategoryTheory.Functor.CommShift.OfComp.iso e a).hom.app X)) h = CategoryTheory.CategoryStruct.comp (e.hom.app ((CategoryTheory.shiftFunctor C a).obj X)) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso H a).hom.app X) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctor E a).map (e.inv.app X)) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso G a).inv.app (F.obj X)) h))) - CategoryTheory.Functor.CommShift.OfComp.map_iso_inv_app_assoc 📋 Mathlib.CategoryTheory.Shift.CommShift
{C : Type u_1} {D : Type u_2} {E : Type u_3} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] [CategoryTheory.Category.{v_3, u_3} E] {F : CategoryTheory.Functor C D} {G : CategoryTheory.Functor D E} {H : CategoryTheory.Functor C E} (e : F.comp G ≅ H) [G.Full] [G.Faithful] {A : Type u_5} [AddMonoid A] [CategoryTheory.HasShift C A] [CategoryTheory.HasShift D A] [CategoryTheory.HasShift E A] [G.CommShift A] [H.CommShift A] (a : A) (X : C) {Z : E} (h : G.obj (F.obj ((CategoryTheory.shiftFunctor C a).obj X)) ⟶ Z) : CategoryTheory.CategoryStruct.comp (G.map ((CategoryTheory.Functor.CommShift.OfComp.iso e a).inv.app X)) h = CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso G a).hom.app (F.obj X)) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctor E a).map (e.hom.app X)) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso H a).inv.app X) (CategoryTheory.CategoryStruct.comp (e.inv.app ((CategoryTheory.shiftFunctor C a).obj X)) h))) - CategoryTheory.Functor.map_shiftFunctorComm_assoc 📋 Mathlib.CategoryTheory.Shift.CommShift
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] {A : Type u_4} [AddCommMonoid A] [CategoryTheory.HasShift C A] [CategoryTheory.HasShift D A] (F : CategoryTheory.Functor C D) [F.CommShift A] (X : C) (a b : A) {Z : D} (h : F.obj ((CategoryTheory.shiftFunctor C a).obj ((CategoryTheory.shiftFunctor C b).obj X)) ⟶ Z) : CategoryTheory.CategoryStruct.comp (F.map ((CategoryTheory.shiftFunctorComm C a b).hom.app X)) h = CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso F b).hom.app ((CategoryTheory.shiftFunctor C a).obj X)) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctor D b).map ((CategoryTheory.Functor.commShiftIso F a).hom.app X)) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctorComm D a b).hom.app (F.obj X)) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctor D a).map ((CategoryTheory.Functor.commShiftIso F b).inv.app X)) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso F a).inv.app ((CategoryTheory.shiftFunctor C b).obj X)) h)))) - CategoryTheory.Functor.map_shiftFunctorComm 📋 Mathlib.CategoryTheory.Shift.CommShift
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] {A : Type u_4} [AddCommMonoid A] [CategoryTheory.HasShift C A] [CategoryTheory.HasShift D A] (F : CategoryTheory.Functor C D) [F.CommShift A] (X : C) (a b : A) : F.map ((CategoryTheory.shiftFunctorComm C a b).hom.app X) = CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso F b).hom.app ((CategoryTheory.shiftFunctor C a).obj X)) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctor D b).map ((CategoryTheory.Functor.commShiftIso F a).hom.app X)) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctorComm D a b).hom.app (F.obj X)) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctor D a).map ((CategoryTheory.Functor.commShiftIso F b).inv.app X)) ((CategoryTheory.Functor.commShiftIso F a).inv.app ((CategoryTheory.shiftFunctor C b).obj X))))) - CategoryTheory.Functor.map_shiftFunctorComm_hom_app 📋 Mathlib.CategoryTheory.Shift.CommShift
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] (F : CategoryTheory.Functor C D) {B : Type u_5} [AddCommMonoid B] [CategoryTheory.HasShift C B] [CategoryTheory.HasShift D B] [F.CommShift B] (X : C) (a b : B) : F.map ((CategoryTheory.shiftFunctorComm C a b).hom.app X) = CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso F b).hom.app ((CategoryTheory.shiftFunctor C a).obj X)) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctor D b).map ((CategoryTheory.Functor.commShiftIso F a).hom.app X)) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctorComm D a b).hom.app (F.obj X)) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctor D a).map ((CategoryTheory.Functor.commShiftIso F b).inv.app X)) ((CategoryTheory.Functor.commShiftIso F a).inv.app ((CategoryTheory.shiftFunctor C b).obj X))))) - CategoryTheory.Functor.commShiftIso_eq_ofInduced 📋 Mathlib.CategoryTheory.Shift.Induced
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] (F : CategoryTheory.Functor C D) (A : Type u_3) [AddMonoid A] [CategoryTheory.HasShift C A] (s : A → CategoryTheory.Functor D D) (i : (a : A) → F.comp (s a) ≅ (CategoryTheory.shiftFunctor C a).comp F) [((CategoryTheory.Functor.whiskeringLeft C D D).obj F).Full] [((CategoryTheory.Functor.whiskeringLeft C D D).obj F).Faithful] (a : A) : CategoryTheory.Functor.commShiftIso F a = (i a).symm - CategoryTheory.Quotient.liftCommShift_commShiftIso 📋 Mathlib.CategoryTheory.Shift.Quotient
{C : Type u} [CategoryTheory.Category.{v, u} C] {D : Type u'} [CategoryTheory.Category.{v', u'} D] (F : CategoryTheory.Functor C D) (r : HomRel C) (A : Type w) [AddMonoid A] [CategoryTheory.HasShift C A] [CategoryTheory.HasShift D A] [r.IsCompatibleWithShift A] [F.CommShift A] (hF : ∀ (x y : C) (f₁ f₂ : x ⟶ y), r f₁ f₂ → F.map f₁ = F.map f₂) (a : A) : CategoryTheory.Functor.commShiftIso (CategoryTheory.Quotient.lift r F hF) a = CategoryTheory.Quotient.LiftCommShift.iso F r hF a - CategoryTheory.Quotient.LiftCommShift.iso_inv_app 📋 Mathlib.CategoryTheory.Shift.Quotient
{C : Type u} [CategoryTheory.Category.{v, u} C] {D : Type u'} [CategoryTheory.Category.{v', u'} D] (F : CategoryTheory.Functor C D) (r : HomRel C) {A : Type w} [AddMonoid A] [CategoryTheory.HasShift C A] [CategoryTheory.HasShift D A] [r.IsCompatibleWithShift A] [F.CommShift A] (hF : ∀ (x y : C) (f₁ f₂ : x ⟶ y), r f₁ f₂ → F.map f₁ = F.map f₂) (a : A) (X : C) : (CategoryTheory.Quotient.LiftCommShift.iso F r hF a).inv.app ((CategoryTheory.Quotient.functor r).obj X) = CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso F a).inv.app X) ((CategoryTheory.Quotient.lift r F hF).map ((CategoryTheory.Functor.commShiftIso (CategoryTheory.Quotient.functor r) a).hom.app X)) - CategoryTheory.Quotient.LiftCommShift.iso_hom_app 📋 Mathlib.CategoryTheory.Shift.Quotient
{C : Type u} [CategoryTheory.Category.{v, u} C] {D : Type u'} [CategoryTheory.Category.{v', u'} D] (F : CategoryTheory.Functor C D) (r : HomRel C) {A : Type w} [AddMonoid A] [CategoryTheory.HasShift C A] [CategoryTheory.HasShift D A] [r.IsCompatibleWithShift A] [F.CommShift A] (hF : ∀ (x y : C) (f₁ f₂ : x ⟶ y), r f₁ f₂ → F.map f₁ = F.map f₂) (a : A) (X : C) : (CategoryTheory.Quotient.LiftCommShift.iso F r hF a).hom.app ((CategoryTheory.Quotient.functor r).obj X) = CategoryTheory.CategoryStruct.comp ((CategoryTheory.Quotient.lift r F hF).map ((CategoryTheory.Functor.commShiftIso (CategoryTheory.Quotient.functor r) a).inv.app X)) ((CategoryTheory.Functor.commShiftIso F a).hom.app X) - CategoryTheory.Functor.mapHomologicalComplex_commShiftIso_eq 📋 Mathlib.Algebra.Homology.HomotopyCategory.Shift
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Preadditive C] {D : Type u'} [CategoryTheory.Category.{v', u'} D] [CategoryTheory.Preadditive D] (F : CategoryTheory.Functor C D) [F.Additive] (n : ℤ) : CategoryTheory.Functor.commShiftIso (F.mapHomologicalComplex (ComplexShape.up ℤ)) n = F.mapCochainComplexShiftIso n - CategoryTheory.Functor.mapHomologicalComplex_commShiftIso_hom_app_f 📋 Mathlib.Algebra.Homology.HomotopyCategory.Shift
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Preadditive C] {D : Type u'} [CategoryTheory.Category.{v', u'} D] [CategoryTheory.Preadditive D] (F : CategoryTheory.Functor C D) [F.Additive] (K : CochainComplex C ℤ) (n i : ℤ) : ((CategoryTheory.Functor.commShiftIso (F.mapHomologicalComplex (ComplexShape.up ℤ)) n).hom.app K).f i = CategoryTheory.CategoryStruct.id ((((CategoryTheory.shiftFunctor (HomologicalComplex C (ComplexShape.up ℤ)) n).comp (F.mapHomologicalComplex (ComplexShape.up ℤ))).obj K).X i) - CategoryTheory.Functor.mapHomologicalComplex_commShiftIso_inv_app_f 📋 Mathlib.Algebra.Homology.HomotopyCategory.Shift
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Preadditive C] {D : Type u'} [CategoryTheory.Category.{v', u'} D] [CategoryTheory.Preadditive D] (F : CategoryTheory.Functor C D) [F.Additive] (K : CochainComplex C ℤ) (n i : ℤ) : ((CategoryTheory.Functor.commShiftIso (F.mapHomologicalComplex (ComplexShape.up ℤ)) n).inv.app K).f i = CategoryTheory.CategoryStruct.id ((((F.mapHomologicalComplex (ComplexShape.up ℤ)).comp (CategoryTheory.shiftFunctor (HomologicalComplex D (ComplexShape.up ℤ)) n)).obj K).X i) - CategoryTheory.Functor.mapTriangle_obj 📋 Mathlib.CategoryTheory.Triangulated.Functor
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] [CategoryTheory.HasShift C ℤ] [CategoryTheory.HasShift D ℤ] (F : CategoryTheory.Functor C D) [F.CommShift ℤ] (T : CategoryTheory.Pretriangulated.Triangle C) : F.mapTriangle.obj T = CategoryTheory.Pretriangulated.Triangle.mk (F.map T.mor₁) (F.map T.mor₂) (CategoryTheory.CategoryStruct.comp (F.map T.mor₃) ((CategoryTheory.Functor.commShiftIso F 1).hom.app T.obj₁)) - CategoryTheory.Functor.mapTriangleCommShiftIso_hom_app_hom₁ 📋 Mathlib.CategoryTheory.Triangulated.Functor
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] [CategoryTheory.HasShift C ℤ] [CategoryTheory.HasShift D ℤ] (F : CategoryTheory.Functor C D) [F.CommShift ℤ] [CategoryTheory.Preadditive C] [CategoryTheory.Preadditive D] [F.Additive] (n : ℤ) (X : CategoryTheory.Pretriangulated.Triangle C) : ((F.mapTriangleCommShiftIso n).hom.app X).hom₁ = (CategoryTheory.Functor.commShiftIso F n).hom.app X.obj₁ - CategoryTheory.Functor.mapTriangleCommShiftIso_hom_app_hom₂ 📋 Mathlib.CategoryTheory.Triangulated.Functor
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] [CategoryTheory.HasShift C ℤ] [CategoryTheory.HasShift D ℤ] (F : CategoryTheory.Functor C D) [F.CommShift ℤ] [CategoryTheory.Preadditive C] [CategoryTheory.Preadditive D] [F.Additive] (n : ℤ) (X : CategoryTheory.Pretriangulated.Triangle C) : ((F.mapTriangleCommShiftIso n).hom.app X).hom₂ = (CategoryTheory.Functor.commShiftIso F n).hom.app X.obj₂ - CategoryTheory.Functor.mapTriangleCommShiftIso_hom_app_hom₃ 📋 Mathlib.CategoryTheory.Triangulated.Functor
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] [CategoryTheory.HasShift C ℤ] [CategoryTheory.HasShift D ℤ] (F : CategoryTheory.Functor C D) [F.CommShift ℤ] [CategoryTheory.Preadditive C] [CategoryTheory.Preadditive D] [F.Additive] (n : ℤ) (X : CategoryTheory.Pretriangulated.Triangle C) : ((F.mapTriangleCommShiftIso n).hom.app X).hom₃ = (CategoryTheory.Functor.commShiftIso F n).hom.app X.obj₃ - CategoryTheory.Functor.mapTriangleCommShiftIso_inv_app_hom₁ 📋 Mathlib.CategoryTheory.Triangulated.Functor
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] [CategoryTheory.HasShift C ℤ] [CategoryTheory.HasShift D ℤ] (F : CategoryTheory.Functor C D) [F.CommShift ℤ] [CategoryTheory.Preadditive C] [CategoryTheory.Preadditive D] [F.Additive] (n : ℤ) (X : CategoryTheory.Pretriangulated.Triangle C) : ((F.mapTriangleCommShiftIso n).inv.app X).hom₁ = (CategoryTheory.Functor.commShiftIso F n).inv.app X.obj₁ - CategoryTheory.Functor.mapTriangleCommShiftIso_inv_app_hom₂ 📋 Mathlib.CategoryTheory.Triangulated.Functor
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] [CategoryTheory.HasShift C ℤ] [CategoryTheory.HasShift D ℤ] (F : CategoryTheory.Functor C D) [F.CommShift ℤ] [CategoryTheory.Preadditive C] [CategoryTheory.Preadditive D] [F.Additive] (n : ℤ) (X : CategoryTheory.Pretriangulated.Triangle C) : ((F.mapTriangleCommShiftIso n).inv.app X).hom₂ = (CategoryTheory.Functor.commShiftIso F n).inv.app X.obj₂ - CategoryTheory.Functor.mapTriangleCommShiftIso_inv_app_hom₃ 📋 Mathlib.CategoryTheory.Triangulated.Functor
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] [CategoryTheory.HasShift C ℤ] [CategoryTheory.HasShift D ℤ] (F : CategoryTheory.Functor C D) [F.CommShift ℤ] [CategoryTheory.Preadditive C] [CategoryTheory.Preadditive D] [F.Additive] (n : ℤ) (X : CategoryTheory.Pretriangulated.Triangle C) : ((F.mapTriangleCommShiftIso n).inv.app X).hom₃ = (CategoryTheory.Functor.commShiftIso F n).inv.app X.obj₃ - CategoryTheory.Functor.mapTriangleRotateIso_hom_app_hom₃ 📋 Mathlib.CategoryTheory.Triangulated.Functor
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] [CategoryTheory.HasShift C ℤ] [CategoryTheory.HasShift D ℤ] (F : CategoryTheory.Functor C D) [F.CommShift ℤ] [CategoryTheory.Preadditive C] [CategoryTheory.Preadditive D] [F.Additive] (X : CategoryTheory.Pretriangulated.Triangle C) : (F.mapTriangleRotateIso.hom.app X).hom₃ = (CategoryTheory.Functor.commShiftIso F 1).inv.app X.obj₁ - CategoryTheory.Functor.mapTriangleRotateIso_inv_app_hom₃ 📋 Mathlib.CategoryTheory.Triangulated.Functor
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] [CategoryTheory.HasShift C ℤ] [CategoryTheory.HasShift D ℤ] (F : CategoryTheory.Functor C D) [F.CommShift ℤ] [CategoryTheory.Preadditive C] [CategoryTheory.Preadditive D] [F.Additive] (X : CategoryTheory.Pretriangulated.Triangle C) : (F.mapTriangleRotateIso.inv.app X).hom₃ = (CategoryTheory.Functor.commShiftIso F 1).hom.app X.obj₁ - CategoryTheory.Functor.mapTriangleInvRotateIso_hom_app_hom₁ 📋 Mathlib.CategoryTheory.Triangulated.Functor
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] [CategoryTheory.HasShift C ℤ] [CategoryTheory.HasShift D ℤ] (F : CategoryTheory.Functor C D) [F.CommShift ℤ] [CategoryTheory.Preadditive C] [CategoryTheory.Preadditive D] [F.Additive] (X : CategoryTheory.Pretriangulated.Triangle C) : (F.mapTriangleInvRotateIso.hom.app X).hom₁ = (CategoryTheory.Functor.commShiftIso F (-1)).inv.app X.obj₃ - CategoryTheory.Functor.mapTriangleInvRotateIso_inv_app_hom₁ 📋 Mathlib.CategoryTheory.Triangulated.Functor
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] [CategoryTheory.HasShift C ℤ] [CategoryTheory.HasShift D ℤ] (F : CategoryTheory.Functor C D) [F.CommShift ℤ] [CategoryTheory.Preadditive C] [CategoryTheory.Preadditive D] [F.Additive] (X : CategoryTheory.Pretriangulated.Triangle C) : (F.mapTriangleInvRotateIso.inv.app X).hom₁ = (CategoryTheory.Functor.commShiftIso F (-1)).hom.app X.obj₃ - CategoryTheory.Functor.mapTriangle_map_hom₁ 📋 Mathlib.CategoryTheory.Triangulated.Functor
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] [CategoryTheory.HasShift C ℤ] [CategoryTheory.HasShift D ℤ] (F : CategoryTheory.Functor C D) [F.CommShift ℤ] {X✝ Y✝ : CategoryTheory.Pretriangulated.Triangle C} (f : X✝ ⟶ Y✝) : (F.mapTriangle.map f).hom₁ = F.map f.hom₁ - CategoryTheory.Functor.mapTriangle_map_hom₂ 📋 Mathlib.CategoryTheory.Triangulated.Functor
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] [CategoryTheory.HasShift C ℤ] [CategoryTheory.HasShift D ℤ] (F : CategoryTheory.Functor C D) [F.CommShift ℤ] {X✝ Y✝ : CategoryTheory.Pretriangulated.Triangle C} (f : X✝ ⟶ Y✝) : (F.mapTriangle.map f).hom₂ = F.map f.hom₂ - CategoryTheory.Functor.mapTriangle_map_hom₃ 📋 Mathlib.CategoryTheory.Triangulated.Functor
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] [CategoryTheory.HasShift C ℤ] [CategoryTheory.HasShift D ℤ] (F : CategoryTheory.Functor C D) [F.CommShift ℤ] {X✝ Y✝ : CategoryTheory.Pretriangulated.Triangle C} (f : X✝ ⟶ Y✝) : (F.mapTriangle.map f).hom₃ = F.map f.hom₃ - CategoryTheory.Triangulated.Octahedron.map 📋 Mathlib.CategoryTheory.Triangulated.Functor
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] [CategoryTheory.HasShift C ℤ] [CategoryTheory.HasShift D ℤ] [CategoryTheory.Limits.HasZeroObject C] [CategoryTheory.Limits.HasZeroObject D] [CategoryTheory.Preadditive C] [CategoryTheory.Preadditive D] [∀ (n : ℤ), (CategoryTheory.shiftFunctor C n).Additive] [∀ (n : ℤ), (CategoryTheory.shiftFunctor D n).Additive] [CategoryTheory.Pretriangulated C] [CategoryTheory.Pretriangulated D] {X₁ X₂ X₃ Z₁₂ Z₂₃ Z₁₃ : C} {u₁₂ : X₁ ⟶ X₂} {u₂₃ : X₂ ⟶ X₃} {u₁₃ : X₁ ⟶ X₃} {comm : CategoryTheory.CategoryStruct.comp u₁₂ u₂₃ = u₁₃} {v₁₂ : X₂ ⟶ Z₁₂} {w₁₂ : Z₁₂ ⟶ (CategoryTheory.shiftFunctor C 1).obj X₁} {h₁₂ : CategoryTheory.Pretriangulated.Triangle.mk u₁₂ v₁₂ w₁₂ ∈ CategoryTheory.Pretriangulated.distinguishedTriangles} {v₂₃ : X₃ ⟶ Z₂₃} {w₂₃ : Z₂₃ ⟶ (CategoryTheory.shiftFunctor C 1).obj X₂} {h₂₃ : CategoryTheory.Pretriangulated.Triangle.mk u₂₃ v₂₃ w₂₃ ∈ CategoryTheory.Pretriangulated.distinguishedTriangles} {v₁₃ : X₃ ⟶ Z₁₃} {w₁₃ : Z₁₃ ⟶ (CategoryTheory.shiftFunctor C 1).obj X₁} {h₁₃ : CategoryTheory.Pretriangulated.Triangle.mk u₁₃ v₁₃ w₁₃ ∈ CategoryTheory.Pretriangulated.distinguishedTriangles} (h : CategoryTheory.Triangulated.Octahedron comm h₁₂ h₂₃ h₁₃) (F : CategoryTheory.Functor C D) [F.CommShift ℤ] [F.IsTriangulated] : CategoryTheory.Triangulated.Octahedron ⋯ ⋯ ⋯ ⋯ - CategoryTheory.Triangulated.Octahedron.map_m₁ 📋 Mathlib.CategoryTheory.Triangulated.Functor
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] [CategoryTheory.HasShift C ℤ] [CategoryTheory.HasShift D ℤ] [CategoryTheory.Limits.HasZeroObject C] [CategoryTheory.Limits.HasZeroObject D] [CategoryTheory.Preadditive C] [CategoryTheory.Preadditive D] [∀ (n : ℤ), (CategoryTheory.shiftFunctor C n).Additive] [∀ (n : ℤ), (CategoryTheory.shiftFunctor D n).Additive] [CategoryTheory.Pretriangulated C] [CategoryTheory.Pretriangulated D] {X₁ X₂ X₃ Z₁₂ Z₂₃ Z₁₃ : C} {u₁₂ : X₁ ⟶ X₂} {u₂₃ : X₂ ⟶ X₃} {u₁₃ : X₁ ⟶ X₃} {comm : CategoryTheory.CategoryStruct.comp u₁₂ u₂₃ = u₁₃} {v₁₂ : X₂ ⟶ Z₁₂} {w₁₂ : Z₁₂ ⟶ (CategoryTheory.shiftFunctor C 1).obj X₁} {h₁₂ : CategoryTheory.Pretriangulated.Triangle.mk u₁₂ v₁₂ w₁₂ ∈ CategoryTheory.Pretriangulated.distinguishedTriangles} {v₂₃ : X₃ ⟶ Z₂₃} {w₂₃ : Z₂₃ ⟶ (CategoryTheory.shiftFunctor C 1).obj X₂} {h₂₃ : CategoryTheory.Pretriangulated.Triangle.mk u₂₃ v₂₃ w₂₃ ∈ CategoryTheory.Pretriangulated.distinguishedTriangles} {v₁₃ : X₃ ⟶ Z₁₃} {w₁₃ : Z₁₃ ⟶ (CategoryTheory.shiftFunctor C 1).obj X₁} {h₁₃ : CategoryTheory.Pretriangulated.Triangle.mk u₁₃ v₁₃ w₁₃ ∈ CategoryTheory.Pretriangulated.distinguishedTriangles} (h : CategoryTheory.Triangulated.Octahedron comm h₁₂ h₂₃ h₁₃) (F : CategoryTheory.Functor C D) [F.CommShift ℤ] [F.IsTriangulated] : (h.map F).m₁ = F.map h.m₁ - CategoryTheory.Triangulated.Octahedron.map_m₃ 📋 Mathlib.CategoryTheory.Triangulated.Functor
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] [CategoryTheory.HasShift C ℤ] [CategoryTheory.HasShift D ℤ] [CategoryTheory.Limits.HasZeroObject C] [CategoryTheory.Limits.HasZeroObject D] [CategoryTheory.Preadditive C] [CategoryTheory.Preadditive D] [∀ (n : ℤ), (CategoryTheory.shiftFunctor C n).Additive] [∀ (n : ℤ), (CategoryTheory.shiftFunctor D n).Additive] [CategoryTheory.Pretriangulated C] [CategoryTheory.Pretriangulated D] {X₁ X₂ X₃ Z₁₂ Z₂₃ Z₁₃ : C} {u₁₂ : X₁ ⟶ X₂} {u₂₃ : X₂ ⟶ X₃} {u₁₃ : X₁ ⟶ X₃} {comm : CategoryTheory.CategoryStruct.comp u₁₂ u₂₃ = u₁₃} {v₁₂ : X₂ ⟶ Z₁₂} {w₁₂ : Z₁₂ ⟶ (CategoryTheory.shiftFunctor C 1).obj X₁} {h₁₂ : CategoryTheory.Pretriangulated.Triangle.mk u₁₂ v₁₂ w₁₂ ∈ CategoryTheory.Pretriangulated.distinguishedTriangles} {v₂₃ : X₃ ⟶ Z₂₃} {w₂₃ : Z₂₃ ⟶ (CategoryTheory.shiftFunctor C 1).obj X₂} {h₂₃ : CategoryTheory.Pretriangulated.Triangle.mk u₂₃ v₂₃ w₂₃ ∈ CategoryTheory.Pretriangulated.distinguishedTriangles} {v₁₃ : X₃ ⟶ Z₁₃} {w₁₃ : Z₁₃ ⟶ (CategoryTheory.shiftFunctor C 1).obj X₁} {h₁₃ : CategoryTheory.Pretriangulated.Triangle.mk u₁₃ v₁₃ w₁₃ ∈ CategoryTheory.Pretriangulated.distinguishedTriangles} (h : CategoryTheory.Triangulated.Octahedron comm h₁₂ h₂₃ h₁₃) (F : CategoryTheory.Functor C D) [F.CommShift ℤ] [F.IsTriangulated] : (h.map F).m₃ = F.map h.m₃ - CochainComplex.mappingCone.map_δ 📋 Mathlib.Algebra.Homology.HomotopyCategory.Pretriangulated
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] [CategoryTheory.Preadditive C] [CategoryTheory.Limits.HasBinaryBiproducts C] [CategoryTheory.Preadditive D] [CategoryTheory.Limits.HasBinaryBiproducts D] {K L : CochainComplex C ℤ} (φ : K ⟶ L) (G : CategoryTheory.Functor C D) [G.Additive] : CategoryTheory.CategoryStruct.comp ((G.mapHomologicalComplex (ComplexShape.up ℤ)).map (CochainComplex.mappingCone.triangle φ).mor₃) ((CategoryTheory.Functor.commShiftIso (G.mapHomologicalComplex (ComplexShape.up ℤ)) 1).hom.app K) = CategoryTheory.CategoryStruct.comp (CochainComplex.mappingCone.mapHomologicalComplexIso φ G).hom (CochainComplex.mappingCone.triangle ((G.mapHomologicalComplex (ComplexShape.up ℤ)).map φ)).mor₃ - 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.commShiftOfLocalization.iso_inv_app 📋 Mathlib.CategoryTheory.Shift.Localization
{C : Type u₁} {D : Type u₂} [CategoryTheory.Category.{v₁, u₁} C] [CategoryTheory.Category.{v₂, u₂} D] {E : Type u₃} [CategoryTheory.Category.{v₃, u₃} E] (L : CategoryTheory.Functor C D) (W : CategoryTheory.MorphismProperty C) [L.IsLocalization W] {A : Type w} [AddMonoid A] [CategoryTheory.HasShift C A] (F : CategoryTheory.Functor C E) (F' : CategoryTheory.Functor D E) [CategoryTheory.Localization.Lifting L W F F'] [CategoryTheory.HasShift D A] [CategoryTheory.HasShift E A] [L.CommShift A] [F.CommShift A] (a : A) (X : C) : (CategoryTheory.Functor.commShiftOfLocalization.iso L W F F' a).inv.app (L.obj X) = CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctor E a).map ((CategoryTheory.Localization.Lifting.iso L W F F').hom.app X)) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso F a).inv.app X) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.Localization.Lifting.iso L W F F').inv.app ((CategoryTheory.shiftFunctor C a).obj X)) (F'.map ((CategoryTheory.Functor.commShiftIso L a).hom.app X)))) - CategoryTheory.Functor.commShiftOfLocalization.iso_hom_app 📋 Mathlib.CategoryTheory.Shift.Localization
{C : Type u₁} {D : Type u₂} [CategoryTheory.Category.{v₁, u₁} C] [CategoryTheory.Category.{v₂, u₂} D] {E : Type u₃} [CategoryTheory.Category.{v₃, u₃} E] (L : CategoryTheory.Functor C D) (W : CategoryTheory.MorphismProperty C) [L.IsLocalization W] {A : Type w} [AddMonoid A] [CategoryTheory.HasShift C A] (F : CategoryTheory.Functor C E) (F' : CategoryTheory.Functor D E) [CategoryTheory.Localization.Lifting L W F F'] [CategoryTheory.HasShift D A] [CategoryTheory.HasShift E A] [L.CommShift A] [F.CommShift A] (a : A) (X : C) : (CategoryTheory.Functor.commShiftOfLocalization.iso L W F F' a).hom.app (L.obj X) = CategoryTheory.CategoryStruct.comp (F'.map ((CategoryTheory.Functor.commShiftIso L a).inv.app X)) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.Localization.Lifting.iso L W F F').hom.app ((CategoryTheory.shiftFunctor C a).obj X)) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso F a).hom.app X) ((CategoryTheory.shiftFunctor E a).map ((CategoryTheory.Localization.Lifting.iso L W F F').inv.app X)))) - CategoryTheory.Functor.commShiftOfLocalization_iso_inv_app 📋 Mathlib.CategoryTheory.Shift.Localization
{C : Type u₁} {D : Type u₂} [CategoryTheory.Category.{v₁, u₁} C] [CategoryTheory.Category.{v₂, u₂} D] {E : Type u₃} [CategoryTheory.Category.{v₃, u₃} E] (L : CategoryTheory.Functor C D) (W : CategoryTheory.MorphismProperty C) [L.IsLocalization W] {A : Type w} [AddMonoid A] [CategoryTheory.HasShift C A] (F : CategoryTheory.Functor C E) (F' : CategoryTheory.Functor D E) [CategoryTheory.Localization.Lifting L W F F'] [CategoryTheory.HasShift D A] [CategoryTheory.HasShift E A] [L.CommShift A] [F.CommShift A] (a : A) (X : C) : (CategoryTheory.Functor.commShiftIso F' a).inv.app (L.obj X) = CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctor E a).map ((CategoryTheory.Localization.Lifting.iso L W F F').hom.app X)) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso F a).inv.app X) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.Localization.Lifting.iso L W F F').inv.app ((CategoryTheory.shiftFunctor C a).obj X)) (F'.map ((CategoryTheory.Functor.commShiftIso L a).hom.app X)))) - CategoryTheory.Functor.commShiftOfLocalization_iso_hom_app 📋 Mathlib.CategoryTheory.Shift.Localization
{C : Type u₁} {D : Type u₂} [CategoryTheory.Category.{v₁, u₁} C] [CategoryTheory.Category.{v₂, u₂} D] {E : Type u₃} [CategoryTheory.Category.{v₃, u₃} E] (L : CategoryTheory.Functor C D) (W : CategoryTheory.MorphismProperty C) [L.IsLocalization W] {A : Type w} [AddMonoid A] [CategoryTheory.HasShift C A] (F : CategoryTheory.Functor C E) (F' : CategoryTheory.Functor D E) [CategoryTheory.Localization.Lifting L W F F'] [CategoryTheory.HasShift D A] [CategoryTheory.HasShift E A] [L.CommShift A] [F.CommShift A] (a : A) (X : C) : (CategoryTheory.Functor.commShiftIso F' a).hom.app (L.obj X) = CategoryTheory.CategoryStruct.comp (F'.map ((CategoryTheory.Functor.commShiftIso L a).inv.app X)) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.Localization.Lifting.iso L W F F').hom.app ((CategoryTheory.shiftFunctor C a).obj X)) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso F a).hom.app X) ((CategoryTheory.shiftFunctor E a).map ((CategoryTheory.Localization.Lifting.iso L W F F').inv.app X)))) - CategoryTheory.Functor.commShiftOfLocalization.iso_hom_app_assoc 📋 Mathlib.CategoryTheory.Shift.Localization
{C : Type u₁} {D : Type u₂} [CategoryTheory.Category.{v₁, u₁} C] [CategoryTheory.Category.{v₂, u₂} D] {E : Type u₃} [CategoryTheory.Category.{v₃, u₃} E] (L : CategoryTheory.Functor C D) (W : CategoryTheory.MorphismProperty C) [L.IsLocalization W] {A : Type w} [AddMonoid A] [CategoryTheory.HasShift C A] (F : CategoryTheory.Functor C E) (F' : CategoryTheory.Functor D E) [CategoryTheory.Localization.Lifting L W F F'] [CategoryTheory.HasShift D A] [CategoryTheory.HasShift E A] [L.CommShift A] [F.CommShift A] (a : A) (X : C) {Z : E} (h : (CategoryTheory.shiftFunctor E a).obj (F'.obj (L.obj X)) ⟶ Z) : CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftOfLocalization.iso L W F F' a).hom.app (L.obj X)) h = CategoryTheory.CategoryStruct.comp (F'.map ((CategoryTheory.Functor.commShiftIso L a).inv.app X)) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.Localization.Lifting.iso L W F F').hom.app ((CategoryTheory.shiftFunctor C a).obj X)) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso F a).hom.app X) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctor E a).map ((CategoryTheory.Localization.Lifting.iso L W F F').inv.app X)) h))) - CategoryTheory.Functor.commShiftOfLocalization.iso_inv_app_assoc 📋 Mathlib.CategoryTheory.Shift.Localization
{C : Type u₁} {D : Type u₂} [CategoryTheory.Category.{v₁, u₁} C] [CategoryTheory.Category.{v₂, u₂} D] {E : Type u₃} [CategoryTheory.Category.{v₃, u₃} E] (L : CategoryTheory.Functor C D) (W : CategoryTheory.MorphismProperty C) [L.IsLocalization W] {A : Type w} [AddMonoid A] [CategoryTheory.HasShift C A] (F : CategoryTheory.Functor C E) (F' : CategoryTheory.Functor D E) [CategoryTheory.Localization.Lifting L W F F'] [CategoryTheory.HasShift D A] [CategoryTheory.HasShift E A] [L.CommShift A] [F.CommShift A] (a : A) (X : C) {Z : E} (h : F'.obj ((CategoryTheory.shiftFunctor D a).obj (L.obj X)) ⟶ Z) : CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftOfLocalization.iso L W F F' a).inv.app (L.obj X)) h = CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctor E a).map ((CategoryTheory.Localization.Lifting.iso L W F F').hom.app X)) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso F a).inv.app X) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.Localization.Lifting.iso L W F F').inv.app ((CategoryTheory.shiftFunctor C a).obj X)) (CategoryTheory.CategoryStruct.comp (F'.map ((CategoryTheory.Functor.commShiftIso L a).hom.app X)) h))) - CategoryTheory.LocalizerMorphism.commShift_iso_hom_app_assoc 📋 Mathlib.CategoryTheory.Shift.Localization
{C₁ : Type u_1} {C₂ : Type u_2} [CategoryTheory.Category.{v_1, u_1} C₁] [CategoryTheory.Category.{v_2, u_2} C₂] {W₁ : CategoryTheory.MorphismProperty C₁} {W₂ : CategoryTheory.MorphismProperty C₂} (Φ : CategoryTheory.LocalizerMorphism W₁ W₂) {M : Type u_3} [AddMonoid M] [CategoryTheory.HasShift C₁ M] [CategoryTheory.HasShift C₂ M] [Φ.functor.CommShift M] {D₁ : Type u_4} {D₂ : Type u_5} [CategoryTheory.Category.{v_3, u_4} D₁] [CategoryTheory.Category.{v_4, u_5} D₂] (L₁ : CategoryTheory.Functor C₁ D₁) [L₁.IsLocalization W₁] (L₂ : CategoryTheory.Functor C₂ D₂) [CategoryTheory.HasShift D₁ M] [CategoryTheory.HasShift D₂ M] [L₁.CommShift M] [L₂.CommShift M] (G : CategoryTheory.Functor D₁ D₂) (e : Φ.functor.comp L₂ ≅ L₁.comp G) (m : M) (X : C₁) {Z : D₂} (h : (CategoryTheory.shiftFunctor D₂ m).obj (G.obj (L₁.obj X)) ⟶ Z) : CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso G m).hom.app (L₁.obj X)) h = CategoryTheory.CategoryStruct.comp (G.map ((CategoryTheory.Functor.commShiftIso L₁ m).inv.app X)) (CategoryTheory.CategoryStruct.comp (e.inv.app ((CategoryTheory.shiftFunctor C₁ m).obj X)) (CategoryTheory.CategoryStruct.comp (L₂.map ((CategoryTheory.Functor.commShiftIso Φ.functor m).hom.app X)) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso L₂ m).hom.app (Φ.functor.obj X)) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctor D₂ m).map (e.hom.app X)) h)))) - CategoryTheory.LocalizerMorphism.commShift_iso_inv_app_assoc 📋 Mathlib.CategoryTheory.Shift.Localization
{C₁ : Type u_1} {C₂ : Type u_2} [CategoryTheory.Category.{v_1, u_1} C₁] [CategoryTheory.Category.{v_2, u_2} C₂] {W₁ : CategoryTheory.MorphismProperty C₁} {W₂ : CategoryTheory.MorphismProperty C₂} (Φ : CategoryTheory.LocalizerMorphism W₁ W₂) {M : Type u_3} [AddMonoid M] [CategoryTheory.HasShift C₁ M] [CategoryTheory.HasShift C₂ M] [Φ.functor.CommShift M] {D₁ : Type u_4} {D₂ : Type u_5} [CategoryTheory.Category.{v_3, u_4} D₁] [CategoryTheory.Category.{v_4, u_5} D₂] (L₁ : CategoryTheory.Functor C₁ D₁) [L₁.IsLocalization W₁] (L₂ : CategoryTheory.Functor C₂ D₂) [CategoryTheory.HasShift D₁ M] [CategoryTheory.HasShift D₂ M] [L₁.CommShift M] [L₂.CommShift M] (G : CategoryTheory.Functor D₁ D₂) (e : Φ.functor.comp L₂ ≅ L₁.comp G) (m : M) (X : C₁) {Z : D₂} (h : G.obj ((CategoryTheory.shiftFunctor D₁ m).obj (L₁.obj X)) ⟶ Z) : CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso G m).inv.app (L₁.obj X)) h = CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctor D₂ m).map (e.inv.app X)) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso L₂ m).inv.app (Φ.functor.obj X)) (CategoryTheory.CategoryStruct.comp (L₂.map ((CategoryTheory.Functor.commShiftIso Φ.functor m).inv.app X)) (CategoryTheory.CategoryStruct.comp (e.hom.app ((CategoryTheory.shiftFunctor C₁ m).obj X)) (CategoryTheory.CategoryStruct.comp (G.map ((CategoryTheory.Functor.commShiftIso L₁ m).hom.app X)) h)))) - CategoryTheory.LocalizerMorphism.commShift_iso_hom_app 📋 Mathlib.CategoryTheory.Shift.Localization
{C₁ : Type u_1} {C₂ : Type u_2} [CategoryTheory.Category.{v_1, u_1} C₁] [CategoryTheory.Category.{v_2, u_2} C₂] {W₁ : CategoryTheory.MorphismProperty C₁} {W₂ : CategoryTheory.MorphismProperty C₂} (Φ : CategoryTheory.LocalizerMorphism W₁ W₂) {M : Type u_3} [AddMonoid M] [CategoryTheory.HasShift C₁ M] [CategoryTheory.HasShift C₂ M] [Φ.functor.CommShift M] {D₁ : Type u_4} {D₂ : Type u_5} [CategoryTheory.Category.{v_3, u_4} D₁] [CategoryTheory.Category.{v_4, u_5} D₂] (L₁ : CategoryTheory.Functor C₁ D₁) [L₁.IsLocalization W₁] (L₂ : CategoryTheory.Functor C₂ D₂) [CategoryTheory.HasShift D₁ M] [CategoryTheory.HasShift D₂ M] [L₁.CommShift M] [L₂.CommShift M] (G : CategoryTheory.Functor D₁ D₂) (e : Φ.functor.comp L₂ ≅ L₁.comp G) (m : M) (X : C₁) : (CategoryTheory.Functor.commShiftIso G m).hom.app (L₁.obj X) = CategoryTheory.CategoryStruct.comp (G.map ((CategoryTheory.Functor.commShiftIso L₁ m).inv.app X)) (CategoryTheory.CategoryStruct.comp (e.inv.app ((CategoryTheory.shiftFunctor C₁ m).obj X)) (CategoryTheory.CategoryStruct.comp (L₂.map ((CategoryTheory.Functor.commShiftIso Φ.functor m).hom.app X)) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso L₂ m).hom.app (Φ.functor.obj X)) ((CategoryTheory.shiftFunctor D₂ m).map (e.hom.app X))))) - CategoryTheory.LocalizerMorphism.commShift_iso_inv_app 📋 Mathlib.CategoryTheory.Shift.Localization
{C₁ : Type u_1} {C₂ : Type u_2} [CategoryTheory.Category.{v_1, u_1} C₁] [CategoryTheory.Category.{v_2, u_2} C₂] {W₁ : CategoryTheory.MorphismProperty C₁} {W₂ : CategoryTheory.MorphismProperty C₂} (Φ : CategoryTheory.LocalizerMorphism W₁ W₂) {M : Type u_3} [AddMonoid M] [CategoryTheory.HasShift C₁ M] [CategoryTheory.HasShift C₂ M] [Φ.functor.CommShift M] {D₁ : Type u_4} {D₂ : Type u_5} [CategoryTheory.Category.{v_3, u_4} D₁] [CategoryTheory.Category.{v_4, u_5} D₂] (L₁ : CategoryTheory.Functor C₁ D₁) [L₁.IsLocalization W₁] (L₂ : CategoryTheory.Functor C₂ D₂) [CategoryTheory.HasShift D₁ M] [CategoryTheory.HasShift D₂ M] [L₁.CommShift M] [L₂.CommShift M] (G : CategoryTheory.Functor D₁ D₂) (e : Φ.functor.comp L₂ ≅ L₁.comp G) (m : M) (X : C₁) : (CategoryTheory.Functor.commShiftIso G m).inv.app (L₁.obj X) = CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctor D₂ m).map (e.inv.app X)) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso L₂ m).inv.app (Φ.functor.obj X)) (CategoryTheory.CategoryStruct.comp (L₂.map ((CategoryTheory.Functor.commShiftIso Φ.functor m).inv.app X)) (CategoryTheory.CategoryStruct.comp (e.hom.app ((CategoryTheory.shiftFunctor C₁ m).obj X)) (G.map ((CategoryTheory.Functor.commShiftIso L₁ m).hom.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_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 - 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))) - CategoryTheory.SingleFunctors.postcomp_shiftIso_hom_app 📋 Mathlib.CategoryTheory.Shift.SingleFunctors
{C : Type u_1} {D : Type u_2} {E : Type u_3} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] [CategoryTheory.Category.{v_3, u_3} E] {A : Type u_5} [AddMonoid A] [CategoryTheory.HasShift D A] [CategoryTheory.HasShift E A] (F : CategoryTheory.SingleFunctors C D A) (G : CategoryTheory.Functor D E) [G.CommShift A] (n a a' : A) (ha' : n + a = a') (X : C) : ((F.postcomp G).shiftIso n a a' ha').hom.app X = CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso G n).inv.app ((F.functor a').obj X)) (G.map ((F.shiftIso n a a' ha').hom.app X)) - CategoryTheory.SingleFunctors.postcomp_shiftIso_inv_app 📋 Mathlib.CategoryTheory.Shift.SingleFunctors
{C : Type u_1} {D : Type u_2} {E : Type u_3} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] [CategoryTheory.Category.{v_3, u_3} E] {A : Type u_5} [AddMonoid A] [CategoryTheory.HasShift D A] [CategoryTheory.HasShift E A] (F : CategoryTheory.SingleFunctors C D A) (G : CategoryTheory.Functor D E) [G.CommShift A] (n a a' : A) (ha' : n + a = a') (X : C) : ((F.postcomp G).shiftIso n a a' ha').inv.app X = CategoryTheory.CategoryStruct.comp (G.map ((F.shiftIso n a a' ha').inv.app X)) ((CategoryTheory.Functor.commShiftIso G n).hom.app ((F.functor a').obj X)) - CategoryTheory.Localization.SmallShiftedHom.equiv_apply 📋 Mathlib.CategoryTheory.Localization.SmallShiftedHom
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] (W : CategoryTheory.MorphismProperty C) {M : Type w'} [AddMonoid M] [CategoryTheory.HasShift C M] [CategoryTheory.HasShift D M] (L : CategoryTheory.Functor C D) [L.IsLocalization W] [L.CommShift M] {X Y : C} [CategoryTheory.Localization.HasSmallLocalizedShiftedHom W M X Y] {m : M} (f : CategoryTheory.Localization.SmallShiftedHom W X Y m) : (CategoryTheory.Localization.SmallShiftedHom.equiv W L) f = CategoryTheory.CategoryStruct.comp ((CategoryTheory.Localization.SmallHom.equiv W L) f) ((CategoryTheory.Functor.commShiftIso L m).app Y).hom - CategoryTheory.Localization.SmallHom.equiv_shift 📋 Mathlib.CategoryTheory.Localization.SmallShiftedHom
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] {W : CategoryTheory.MorphismProperty C} {M : Type w'} [AddMonoid M] [CategoryTheory.HasShift C M] [CategoryTheory.HasShift D M] [W.IsCompatibleWithShift M] (L : CategoryTheory.Functor C D) [L.IsLocalization W] [L.CommShift M] {X Y : C} [CategoryTheory.Localization.HasSmallLocalizedHom W X Y] (f : CategoryTheory.Localization.SmallHom W X Y) (a : M) [CategoryTheory.Localization.HasSmallLocalizedHom W ((CategoryTheory.shiftFunctor C a).obj X) ((CategoryTheory.shiftFunctor C a).obj Y)] : (CategoryTheory.Localization.SmallHom.equiv W L) (f.shift a) = CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso L a).hom.app X) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctor D a).map ((CategoryTheory.Localization.SmallHom.equiv W L) f)) ((CategoryTheory.Functor.commShiftIso L a).inv.app Y)) - CategoryTheory.Localization.SmallShiftedHom.equiv_shift 📋 Mathlib.CategoryTheory.Localization.SmallShiftedHom
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] (W : CategoryTheory.MorphismProperty C) {M : Type w'} [AddMonoid M] [CategoryTheory.HasShift C M] [CategoryTheory.HasShift D M] (L : CategoryTheory.Functor C D) [L.IsLocalization W] [L.CommShift M] {X Y : C} [W.IsCompatibleWithShift M] {a : M} [CategoryTheory.Localization.HasSmallLocalizedShiftedHom W M X Y] [CategoryTheory.Localization.HasSmallLocalizedShiftedHom W M Y Y] (f : CategoryTheory.Localization.SmallShiftedHom W X Y a) (n a' : M) (h : a + n = a') : (CategoryTheory.Localization.SmallShiftedHom.equiv W L) (f.shift n a' h) = CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso L n).hom.app X) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctor D n).map ((CategoryTheory.Localization.SmallShiftedHom.equiv W L) f)) ((CategoryTheory.shiftFunctorAdd' D a n a' h).inv.app (L.obj Y))) - CategoryTheory.Localization.SmallShiftedHom.equiv_shift' 📋 Mathlib.CategoryTheory.Localization.SmallShiftedHom
{C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] (W : CategoryTheory.MorphismProperty C) {M : Type w'} [AddMonoid M] [CategoryTheory.HasShift C M] [CategoryTheory.HasShift D M] (L : CategoryTheory.Functor C D) [L.IsLocalization W] [L.CommShift M] {X Y : C} [W.IsCompatibleWithShift M] {a : M} [CategoryTheory.Localization.HasSmallLocalizedShiftedHom W M X Y] [CategoryTheory.Localization.HasSmallLocalizedShiftedHom W M Y Y] (f : CategoryTheory.Localization.SmallShiftedHom W X Y a) (n a' : M) (h : a + n = a') : (CategoryTheory.Localization.SmallHom.equiv W L) (f.shift n a' h) = CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso L n).hom.app X) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctor D n).map ((CategoryTheory.Localization.SmallHom.equiv W L) f)) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctor D n).map ((CategoryTheory.Functor.commShiftIso L a).hom.app Y)) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctorAdd' D a n a' h).inv.app (L.obj Y)) ((CategoryTheory.Functor.commShiftIso L a').inv.app Y)))) - DerivedCategory.descShortComplex_triangleOfSESδ 📋 Mathlib.Algebra.Homology.DerivedCategory.ShortExact
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Abelian C] [HasDerivedCategory C] {S : CategoryTheory.ShortComplex (CochainComplex C ℤ)} (hS : S.ShortExact) : CategoryTheory.CategoryStruct.comp (DerivedCategory.Q.map (CochainComplex.mappingCone.descShortComplex S)) (DerivedCategory.triangleOfSESδ hS) = CategoryTheory.CategoryStruct.comp (DerivedCategory.Q.map (CochainComplex.mappingCone.triangle S.f).mor₃) ((CategoryTheory.Functor.commShiftIso DerivedCategory.Q 1).hom.app S.X₁) - DerivedCategory.descShortComplex_triangleOfSESδ_assoc 📋 Mathlib.Algebra.Homology.DerivedCategory.ShortExact
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Abelian C] [HasDerivedCategory C] {S : CategoryTheory.ShortComplex (CochainComplex C ℤ)} (hS : S.ShortExact) {Z : DerivedCategory C} (h : (CategoryTheory.shiftFunctor (DerivedCategory C) 1).obj (DerivedCategory.Q.obj S.X₁) ⟶ Z) : CategoryTheory.CategoryStruct.comp (DerivedCategory.Q.map (CochainComplex.mappingCone.descShortComplex S)) (CategoryTheory.CategoryStruct.comp (DerivedCategory.triangleOfSESδ hS) h) = CategoryTheory.CategoryStruct.comp (DerivedCategory.Q.map (CochainComplex.mappingCone.triangle S.f).mor₃) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso DerivedCategory.Q 1).hom.app S.X₁) h) - CategoryTheory.Adjunction.LeftAdjointCommShift.compatibilityUnit_iso 📋 Mathlib.CategoryTheory.Shift.Adjunction
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] {F : CategoryTheory.Functor C D} {G : CategoryTheory.Functor D C} (adj : F ⊣ G) {A : Type u_3} [AddGroup A] [CategoryTheory.HasShift C A] [CategoryTheory.HasShift D A] [G.CommShift A] (a : A) : CategoryTheory.Adjunction.CommShift.CompatibilityUnit adj (CategoryTheory.Adjunction.LeftAdjointCommShift.iso adj a) (CategoryTheory.Functor.commShiftIso G a) - CategoryTheory.Adjunction.RightAdjointCommShift.compatibilityUnit_iso 📋 Mathlib.CategoryTheory.Shift.Adjunction
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] {F : CategoryTheory.Functor C D} {G : CategoryTheory.Functor D C} (adj : F ⊣ G) {A : Type u_3} [AddGroup A] [CategoryTheory.HasShift C A] [CategoryTheory.HasShift D A] [F.CommShift A] (a : A) : CategoryTheory.Adjunction.CommShift.CompatibilityUnit adj (CategoryTheory.Functor.commShiftIso F a) (CategoryTheory.Adjunction.RightAdjointCommShift.iso adj a) - CategoryTheory.Adjunction.leftAdjointCommShift_commShiftIso 📋 Mathlib.CategoryTheory.Shift.Adjunction
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] {F : CategoryTheory.Functor C D} {G : CategoryTheory.Functor D C} (adj : F ⊣ G) (A : Type u_3) [AddGroup A] [CategoryTheory.HasShift C A] [CategoryTheory.HasShift D A] [G.CommShift A] (a : A) : CategoryTheory.Functor.commShiftIso F a = CategoryTheory.Adjunction.LeftAdjointCommShift.iso adj a - CategoryTheory.Adjunction.rightAdjointCommShift_commShiftIso 📋 Mathlib.CategoryTheory.Shift.Adjunction
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] {F : CategoryTheory.Functor C D} {G : CategoryTheory.Functor D C} (adj : F ⊣ G) (A : Type u_3) [AddGroup A] [CategoryTheory.HasShift C A] [CategoryTheory.HasShift D A] [F.CommShift A] (a : A) : CategoryTheory.Functor.commShiftIso G a = CategoryTheory.Adjunction.RightAdjointCommShift.iso adj a - CategoryTheory.Adjunction.unit_app_commShiftIso_hom_app 📋 Mathlib.CategoryTheory.Shift.Adjunction
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] {F : CategoryTheory.Functor C D} {G : CategoryTheory.Functor D C} (adj : F ⊣ G) (A : Type u_3) [AddMonoid A] [CategoryTheory.HasShift C A] [CategoryTheory.HasShift D A] [F.CommShift A] [G.CommShift A] [adj.CommShift A] (a : A) (X : C) : CategoryTheory.CategoryStruct.comp (adj.unit.app ((CategoryTheory.shiftFunctor C a).obj X)) ((CategoryTheory.Functor.commShiftIso (F.comp G) a).hom.app X) = (CategoryTheory.shiftFunctor C a).map (adj.unit.app X) - CategoryTheory.Adjunction.unit_app_shift_commShiftIso_inv_app 📋 Mathlib.CategoryTheory.Shift.Adjunction
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] {F : CategoryTheory.Functor C D} {G : CategoryTheory.Functor D C} (adj : F ⊣ G) (A : Type u_3) [AddMonoid A] [CategoryTheory.HasShift C A] [CategoryTheory.HasShift D A] [F.CommShift A] [G.CommShift A] [adj.CommShift A] (a : A) (X : C) : CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctor C a).map (adj.unit.app X)) ((CategoryTheory.Functor.commShiftIso (F.comp G) a).inv.app X) = adj.unit.app ((CategoryTheory.shiftFunctor C a).obj X) - CategoryTheory.Adjunction.commShiftIso_hom_app_counit_app_shift 📋 Mathlib.CategoryTheory.Shift.Adjunction
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] {F : CategoryTheory.Functor C D} {G : CategoryTheory.Functor D C} (adj : F ⊣ G) (A : Type u_3) [AddMonoid A] [CategoryTheory.HasShift C A] [CategoryTheory.HasShift D A] [F.CommShift A] [G.CommShift A] [adj.CommShift A] (a : A) (Y : D) : CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso (G.comp F) a).hom.app Y) ((CategoryTheory.shiftFunctor D a).map (adj.counit.app Y)) = adj.counit.app ((CategoryTheory.shiftFunctor D a).obj Y) - CategoryTheory.Adjunction.commShiftIso_inv_app_counit_app 📋 Mathlib.CategoryTheory.Shift.Adjunction
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] {F : CategoryTheory.Functor C D} {G : CategoryTheory.Functor D C} (adj : F ⊣ G) (A : Type u_3) [AddMonoid A] [CategoryTheory.HasShift C A] [CategoryTheory.HasShift D A] [F.CommShift A] [G.CommShift A] [adj.CommShift A] (a : A) (Y : D) : CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso (G.comp F) a).inv.app Y) (adj.counit.app ((CategoryTheory.shiftFunctor D a).obj Y)) = (CategoryTheory.shiftFunctor D a).map (adj.counit.app Y) - CategoryTheory.Adjunction.commShiftIso_hom_app_counit_app_shift_assoc 📋 Mathlib.CategoryTheory.Shift.Adjunction
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] {F : CategoryTheory.Functor C D} {G : CategoryTheory.Functor D C} (adj : F ⊣ G) (A : Type u_3) [AddMonoid A] [CategoryTheory.HasShift C A] [CategoryTheory.HasShift D A] [F.CommShift A] [G.CommShift A] [adj.CommShift A] (a : A) (Y : D) {Z : D} (h : (CategoryTheory.shiftFunctor D a).obj Y ⟶ Z) : CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso (G.comp F) a).hom.app Y) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctor D a).map (adj.counit.app Y)) h) = CategoryTheory.CategoryStruct.comp (adj.counit.app ((CategoryTheory.shiftFunctor D a).obj Y)) h - CategoryTheory.Adjunction.commShiftIso_inv_app_counit_app_assoc 📋 Mathlib.CategoryTheory.Shift.Adjunction
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] {F : CategoryTheory.Functor C D} {G : CategoryTheory.Functor D C} (adj : F ⊣ G) (A : Type u_3) [AddMonoid A] [CategoryTheory.HasShift C A] [CategoryTheory.HasShift D A] [F.CommShift A] [G.CommShift A] [adj.CommShift A] (a : A) (Y : D) {Z : D} (h : (CategoryTheory.shiftFunctor D a).obj Y ⟶ Z) : CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso (G.comp F) a).inv.app Y) (CategoryTheory.CategoryStruct.comp (adj.counit.app ((CategoryTheory.shiftFunctor D a).obj Y)) h) = CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctor D a).map (adj.counit.app Y)) h - CategoryTheory.Adjunction.unit_app_commShiftIso_hom_app_assoc 📋 Mathlib.CategoryTheory.Shift.Adjunction
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] {F : CategoryTheory.Functor C D} {G : CategoryTheory.Functor D C} (adj : F ⊣ G) (A : Type u_3) [AddMonoid A] [CategoryTheory.HasShift C A] [CategoryTheory.HasShift D A] [F.CommShift A] [G.CommShift A] [adj.CommShift A] (a : A) (X : C) {Z : C} (h : (CategoryTheory.shiftFunctor C a).obj (G.obj (F.obj X)) ⟶ Z) : CategoryTheory.CategoryStruct.comp (adj.unit.app ((CategoryTheory.shiftFunctor C a).obj X)) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso (F.comp G) a).hom.app X) h) = CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctor C a).map (adj.unit.app X)) h - CategoryTheory.Adjunction.unit_app_shift_commShiftIso_inv_app_assoc 📋 Mathlib.CategoryTheory.Shift.Adjunction
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] {F : CategoryTheory.Functor C D} {G : CategoryTheory.Functor D C} (adj : F ⊣ G) (A : Type u_3) [AddMonoid A] [CategoryTheory.HasShift C A] [CategoryTheory.HasShift D A] [F.CommShift A] [G.CommShift A] [adj.CommShift A] (a : A) (X : C) {Z : C} (h : G.obj (F.obj ((CategoryTheory.shiftFunctor C a).obj X)) ⟶ Z) : CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctor C a).map (adj.unit.app X)) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso (F.comp G) a).inv.app X) h) = CategoryTheory.CategoryStruct.comp (adj.unit.app ((CategoryTheory.shiftFunctor C a).obj X)) h - CategoryTheory.Adjunction.shift_counit_app 📋 Mathlib.CategoryTheory.Shift.Adjunction
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] {F : CategoryTheory.Functor C D} {G : CategoryTheory.Functor D C} (adj : F ⊣ G) {A : Type u_3} [AddMonoid A] [CategoryTheory.HasShift C A] [CategoryTheory.HasShift D A] [F.CommShift A] [G.CommShift A] [adj.CommShift A] (a : A) (Y : D) : (CategoryTheory.shiftFunctor D a).map (adj.counit.app Y) = CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso F a).inv.app (G.obj Y)) (CategoryTheory.CategoryStruct.comp (F.map ((CategoryTheory.Functor.commShiftIso G a).inv.app Y)) (adj.counit.app ((CategoryTheory.shiftFunctor D a).obj Y))) - CategoryTheory.Adjunction.shift_unit_app 📋 Mathlib.CategoryTheory.Shift.Adjunction
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] {F : CategoryTheory.Functor C D} {G : CategoryTheory.Functor D C} (adj : F ⊣ G) {A : Type u_3} [AddMonoid A] [CategoryTheory.HasShift C A] [CategoryTheory.HasShift D A] [F.CommShift A] [G.CommShift A] [adj.CommShift A] (a : A) (X : C) : (CategoryTheory.shiftFunctor C a).map (adj.unit.app X) = CategoryTheory.CategoryStruct.comp (adj.unit.app ((CategoryTheory.shiftFunctor C a).obj X)) (CategoryTheory.CategoryStruct.comp (G.map ((CategoryTheory.Functor.commShiftIso F a).hom.app X)) ((CategoryTheory.Functor.commShiftIso G a).hom.app (F.obj X))) - CategoryTheory.Adjunction.shift_counit_app_assoc 📋 Mathlib.CategoryTheory.Shift.Adjunction
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] {F : CategoryTheory.Functor C D} {G : CategoryTheory.Functor D C} (adj : F ⊣ G) {A : Type u_3} [AddMonoid A] [CategoryTheory.HasShift C A] [CategoryTheory.HasShift D A] [F.CommShift A] [G.CommShift A] [adj.CommShift A] (a : A) (Y : D) {Z : D} (h : (CategoryTheory.shiftFunctor D a).obj Y ⟶ Z) : CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctor D a).map (adj.counit.app Y)) h = CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso F a).inv.app (G.obj Y)) (CategoryTheory.CategoryStruct.comp (F.map ((CategoryTheory.Functor.commShiftIso G a).inv.app Y)) (CategoryTheory.CategoryStruct.comp (adj.counit.app ((CategoryTheory.shiftFunctor D a).obj Y)) h)) - CategoryTheory.Adjunction.shift_unit_app_assoc 📋 Mathlib.CategoryTheory.Shift.Adjunction
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] {F : CategoryTheory.Functor C D} {G : CategoryTheory.Functor D C} (adj : F ⊣ G) {A : Type u_3} [AddMonoid A] [CategoryTheory.HasShift C A] [CategoryTheory.HasShift D A] [F.CommShift A] [G.CommShift A] [adj.CommShift A] (a : A) (X : C) {Z : C} (h : (CategoryTheory.shiftFunctor C a).obj (G.obj (F.obj X)) ⟶ Z) : CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctor C a).map (adj.unit.app X)) h = CategoryTheory.CategoryStruct.comp (adj.unit.app ((CategoryTheory.shiftFunctor C a).obj X)) (CategoryTheory.CategoryStruct.comp (G.map ((CategoryTheory.Functor.commShiftIso F a).hom.app X)) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso G a).hom.app (F.obj X)) h)) - CategoryTheory.Adjunction.LeftAdjointCommShift.iso_hom_app_assoc 📋 Mathlib.CategoryTheory.Shift.Adjunction
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] {F : CategoryTheory.Functor C D} {G : CategoryTheory.Functor D C} (adj : F ⊣ G) {A : Type u_3} [AddGroup A] [CategoryTheory.HasShift C A] [CategoryTheory.HasShift D A] (a b : A) (h : a + b = 0) [G.CommShift A] (X : C) {Z : D} (h✝ : (CategoryTheory.shiftFunctor D a).obj (F.obj X) ⟶ Z) : CategoryTheory.CategoryStruct.comp ((CategoryTheory.Adjunction.LeftAdjointCommShift.iso adj a).hom.app X) h✝ = CategoryTheory.CategoryStruct.comp (F.map ((CategoryTheory.shiftFunctor C a).map (adj.unit.app X))) (CategoryTheory.CategoryStruct.comp (F.map ((CategoryTheory.shiftFunctor C a).map (G.map ((CategoryTheory.shiftFunctorCompIsoId D a b h).inv.app (F.obj X))))) (CategoryTheory.CategoryStruct.comp (F.map ((CategoryTheory.shiftFunctor C a).map ((CategoryTheory.Functor.commShiftIso G b).hom.app ((CategoryTheory.shiftFunctor D a).obj (F.obj X))))) (CategoryTheory.CategoryStruct.comp (F.map ((CategoryTheory.shiftFunctorCompIsoId C b a ⋯).hom.app (G.obj ((CategoryTheory.shiftFunctor D a).obj (F.obj X))))) (CategoryTheory.CategoryStruct.comp (adj.counit.app ((CategoryTheory.shiftFunctor D a).obj (F.obj X))) h✝)))) - CategoryTheory.Adjunction.RightAdjointCommShift.iso_inv_app_assoc 📋 Mathlib.CategoryTheory.Shift.Adjunction
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] {F : CategoryTheory.Functor C D} {G : CategoryTheory.Functor D C} (adj : F ⊣ G) {A : Type u_3} [AddGroup A] [CategoryTheory.HasShift C A] [CategoryTheory.HasShift D A] (a b : A) (h : b + a = 0) [F.CommShift A] (Y : D) {Z : C} (h✝ : G.obj ((CategoryTheory.shiftFunctor D a).obj Y) ⟶ Z) : CategoryTheory.CategoryStruct.comp ((CategoryTheory.Adjunction.RightAdjointCommShift.iso adj a).inv.app Y) h✝ = CategoryTheory.CategoryStruct.comp (adj.unit.app ((CategoryTheory.shiftFunctor C a).obj (G.obj Y))) (CategoryTheory.CategoryStruct.comp (G.map ((CategoryTheory.shiftFunctorCompIsoId D b a h).inv.app (F.obj ((CategoryTheory.shiftFunctor C a).obj (G.obj Y))))) (CategoryTheory.CategoryStruct.comp (G.map ((CategoryTheory.shiftFunctor D a).map ((CategoryTheory.shiftFunctor D b).map ((CategoryTheory.Functor.commShiftIso F a).hom.app (G.obj Y))))) (CategoryTheory.CategoryStruct.comp (G.map ((CategoryTheory.shiftFunctor D a).map ((CategoryTheory.shiftFunctorCompIsoId D a b ⋯).hom.app (F.obj (G.obj Y))))) (CategoryTheory.CategoryStruct.comp (G.map ((CategoryTheory.shiftFunctor D a).map (adj.counit.app Y))) h✝)))) - CategoryTheory.Adjunction.LeftAdjointCommShift.iso_hom_app 📋 Mathlib.CategoryTheory.Shift.Adjunction
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] {F : CategoryTheory.Functor C D} {G : CategoryTheory.Functor D C} (adj : F ⊣ G) {A : Type u_3} [AddGroup A] [CategoryTheory.HasShift C A] [CategoryTheory.HasShift D A] (a b : A) (h : a + b = 0) [G.CommShift A] (X : C) : (CategoryTheory.Adjunction.LeftAdjointCommShift.iso adj a).hom.app X = CategoryTheory.CategoryStruct.comp (F.map ((CategoryTheory.shiftFunctor C a).map (adj.unit.app X))) (CategoryTheory.CategoryStruct.comp (F.map ((CategoryTheory.shiftFunctor C a).map (G.map ((CategoryTheory.shiftFunctorCompIsoId D a b h).inv.app (F.obj X))))) (CategoryTheory.CategoryStruct.comp (F.map ((CategoryTheory.shiftFunctor C a).map ((CategoryTheory.Functor.commShiftIso G b).hom.app ((CategoryTheory.shiftFunctor D a).obj (F.obj X))))) (CategoryTheory.CategoryStruct.comp (F.map ((CategoryTheory.shiftFunctorCompIsoId C b a ⋯).hom.app (G.obj ((CategoryTheory.shiftFunctor D a).obj (F.obj X))))) (adj.counit.app ((CategoryTheory.shiftFunctor D a).obj (F.obj X)))))) - CategoryTheory.Adjunction.RightAdjointCommShift.iso_inv_app 📋 Mathlib.CategoryTheory.Shift.Adjunction
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] {F : CategoryTheory.Functor C D} {G : CategoryTheory.Functor D C} (adj : F ⊣ G) {A : Type u_3} [AddGroup A] [CategoryTheory.HasShift C A] [CategoryTheory.HasShift D A] (a b : A) (h : b + a = 0) [F.CommShift A] (Y : D) : (CategoryTheory.Adjunction.RightAdjointCommShift.iso adj a).inv.app Y = CategoryTheory.CategoryStruct.comp (adj.unit.app ((CategoryTheory.shiftFunctor C a).obj (G.obj Y))) (CategoryTheory.CategoryStruct.comp (G.map ((CategoryTheory.shiftFunctorCompIsoId D b a h).inv.app (F.obj ((CategoryTheory.shiftFunctor C a).obj (G.obj Y))))) (CategoryTheory.CategoryStruct.comp (G.map ((CategoryTheory.shiftFunctor D a).map ((CategoryTheory.shiftFunctor D b).map ((CategoryTheory.Functor.commShiftIso F a).hom.app (G.obj Y))))) (CategoryTheory.CategoryStruct.comp (G.map ((CategoryTheory.shiftFunctor D a).map ((CategoryTheory.shiftFunctorCompIsoId D a b ⋯).hom.app (F.obj (G.obj Y))))) (G.map ((CategoryTheory.shiftFunctor D a).map (adj.counit.app Y)))))) - CategoryTheory.Adjunction.LeftAdjointCommShift.iso_inv_app_assoc 📋 Mathlib.CategoryTheory.Shift.Adjunction
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] {F : CategoryTheory.Functor C D} {G : CategoryTheory.Functor D C} (adj : F ⊣ G) {A : Type u_3} [AddGroup A] [CategoryTheory.HasShift C A] [CategoryTheory.HasShift D A] (a b : A) (h : a + b = 0) [G.CommShift A] (Y : C) {Z : D} (h✝ : F.obj ((CategoryTheory.shiftFunctor C a).obj Y) ⟶ Z) : CategoryTheory.CategoryStruct.comp ((CategoryTheory.Adjunction.LeftAdjointCommShift.iso adj a).inv.app Y) h✝ = CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctor D a).map (F.map ((CategoryTheory.shiftFunctorCompIsoId C a b h).inv.app Y))) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctor D a).map (F.map ((CategoryTheory.shiftFunctor C b).map (adj.unit.app ((CategoryTheory.shiftFunctor C a).obj Y))))) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctor D a).map (F.map ((CategoryTheory.Functor.commShiftIso G b).inv.app (F.obj ((CategoryTheory.shiftFunctor C a).obj Y))))) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctor D a).map (adj.counit.app ((CategoryTheory.shiftFunctor D b).obj (F.obj ((CategoryTheory.shiftFunctor C a).obj Y))))) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctorCompIsoId D b a ⋯).hom.app (F.obj ((CategoryTheory.shiftFunctor C a).obj Y))) h✝)))) - CategoryTheory.Adjunction.RightAdjointCommShift.iso_hom_app_assoc 📋 Mathlib.CategoryTheory.Shift.Adjunction
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] {F : CategoryTheory.Functor C D} {G : CategoryTheory.Functor D C} (adj : F ⊣ G) {A : Type u_3} [AddGroup A] [CategoryTheory.HasShift C A] [CategoryTheory.HasShift D A] (a b : A) (h : b + a = 0) [F.CommShift A] (X : D) {Z : C} (h✝ : (CategoryTheory.shiftFunctor C a).obj (G.obj X) ⟶ Z) : CategoryTheory.CategoryStruct.comp ((CategoryTheory.Adjunction.RightAdjointCommShift.iso adj a).hom.app X) h✝ = CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctorCompIsoId C b a h).inv.app (G.obj ((CategoryTheory.shiftFunctor D a).obj X))) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctor C a).map (adj.unit.app ((CategoryTheory.shiftFunctor C b).obj (G.obj ((CategoryTheory.shiftFunctor D a).obj X))))) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctor C a).map (G.map ((CategoryTheory.Functor.commShiftIso F b).hom.app (G.obj ((CategoryTheory.shiftFunctor D a).obj X))))) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctor C a).map (G.map ((CategoryTheory.shiftFunctor D b).map (adj.counit.app ((CategoryTheory.shiftFunctor D a).obj X))))) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctor C a).map (G.map ((CategoryTheory.shiftFunctorCompIsoId D a b ⋯).hom.app X))) h✝)))) - CategoryTheory.Adjunction.LeftAdjointCommShift.iso_inv_app 📋 Mathlib.CategoryTheory.Shift.Adjunction
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] {F : CategoryTheory.Functor C D} {G : CategoryTheory.Functor D C} (adj : F ⊣ G) {A : Type u_3} [AddGroup A] [CategoryTheory.HasShift C A] [CategoryTheory.HasShift D A] (a b : A) (h : a + b = 0) [G.CommShift A] (Y : C) : (CategoryTheory.Adjunction.LeftAdjointCommShift.iso adj a).inv.app Y = CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctor D a).map (F.map ((CategoryTheory.shiftFunctorCompIsoId C a b h).inv.app Y))) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctor D a).map (F.map ((CategoryTheory.shiftFunctor C b).map (adj.unit.app ((CategoryTheory.shiftFunctor C a).obj Y))))) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctor D a).map (F.map ((CategoryTheory.Functor.commShiftIso G b).inv.app (F.obj ((CategoryTheory.shiftFunctor C a).obj Y))))) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctor D a).map (adj.counit.app ((CategoryTheory.shiftFunctor D b).obj (F.obj ((CategoryTheory.shiftFunctor C a).obj Y))))) ((CategoryTheory.shiftFunctorCompIsoId D b a ⋯).hom.app (F.obj ((CategoryTheory.shiftFunctor C a).obj Y)))))) - CategoryTheory.Adjunction.RightAdjointCommShift.iso_hom_app 📋 Mathlib.CategoryTheory.Shift.Adjunction
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] {F : CategoryTheory.Functor C D} {G : CategoryTheory.Functor D C} (adj : F ⊣ G) {A : Type u_3} [AddGroup A] [CategoryTheory.HasShift C A] [CategoryTheory.HasShift D A] (a b : A) (h : b + a = 0) [F.CommShift A] (X : D) : (CategoryTheory.Adjunction.RightAdjointCommShift.iso adj a).hom.app X = CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctorCompIsoId C b a h).inv.app (G.obj ((CategoryTheory.shiftFunctor D a).obj X))) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctor C a).map (adj.unit.app ((CategoryTheory.shiftFunctor C b).obj (G.obj ((CategoryTheory.shiftFunctor D a).obj X))))) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctor C a).map (G.map ((CategoryTheory.Functor.commShiftIso F b).hom.app (G.obj ((CategoryTheory.shiftFunctor D a).obj X))))) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctor C a).map (G.map ((CategoryTheory.shiftFunctor D b).map (adj.counit.app ((CategoryTheory.shiftFunctor D a).obj X))))) ((CategoryTheory.shiftFunctor C a).map (G.map ((CategoryTheory.shiftFunctorCompIsoId D a b ⋯).hom.app X)))))) - CategoryTheory.Functor.commShiftOp_iso_eq 📋 Mathlib.CategoryTheory.Shift.Opposite
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] (A : Type u_3) [AddMonoid A] [CategoryTheory.HasShift C A] [CategoryTheory.HasShift D A] (F : CategoryTheory.Functor C D) [F.CommShift A] (a : A) : CategoryTheory.Functor.commShiftIso (CategoryTheory.OppositeShift.functor A F) a = (CategoryTheory.NatIso.op (CategoryTheory.Functor.commShiftIso F a)).symm - CategoryTheory.Functor.commShiftUnop_commShiftIso 📋 Mathlib.CategoryTheory.Shift.Opposite
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] (A : Type u_3) [AddMonoid A] [CategoryTheory.HasShift C A] [CategoryTheory.HasShift D A] (F : CategoryTheory.Functor C D) [(CategoryTheory.OppositeShift.functor A F).CommShift A] (a : A) : CategoryTheory.Functor.commShiftIso F a = CategoryTheory.NatIso.removeOp (CategoryTheory.Functor.commShiftIso (CategoryTheory.OppositeShift.functor A F) a).symm - CategoryTheory.Functor.commShiftPullback_iso_eq 📋 Mathlib.CategoryTheory.Shift.Pullback
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] {A : Type u_2} {B : Type u_3} [AddMonoid A] [AddMonoid B] [CategoryTheory.HasShift C B] (φ : A →+ B) {D : Type u_4} [CategoryTheory.Category.{v_2, u_4} D] [CategoryTheory.HasShift D B] (F : CategoryTheory.Functor C D) [F.CommShift B] (a : A) (b : B) (h : b = φ a) : CategoryTheory.Functor.commShiftIso (CategoryTheory.PullbackShift.functor φ F) a = CategoryTheory.Functor.isoWhiskerRight (CategoryTheory.pullbackShiftIso C φ a b h) F ≪≫ CategoryTheory.Functor.commShiftIso F b ≪≫ F.isoWhiskerLeft (CategoryTheory.pullbackShiftIso D φ a b h).symm - CategoryTheory.Functor.commShift₂_comm 📋 Mathlib.CategoryTheory.Shift.CommShiftTwo
{C₁ : Type u_1} {C₂ : Type u_3} {D : Type u_5} {inst✝ : CategoryTheory.Category.{v_1, u_1} C₁} {inst✝¹ : CategoryTheory.Category.{v_3, u_3} C₂} {inst✝² : CategoryTheory.Category.{v_5, u_5} D} {M : Type u_6} {inst✝³ : AddCommMonoid M} {inst✝⁴ : CategoryTheory.HasShift C₁ M} {inst✝⁵ : CategoryTheory.HasShift C₂ M} {inst✝⁶ : CategoryTheory.HasShift D M} (G : CategoryTheory.Functor C₁ (CategoryTheory.Functor C₂ D)) (h : CategoryTheory.CommShift₂Setup D M) [self : G.CommShift₂ h] (X₁ : C₁) (X₂ : C₂) (m n : M) : CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso (G.obj ((CategoryTheory.shiftFunctor C₁ m).obj X₁)) n).hom.app X₂) ((CategoryTheory.shiftFunctor D n).map ((CategoryTheory.Functor.commShiftIso (G.flip.obj X₂) m).hom.app X₁)) = CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso (G.flip.obj ((CategoryTheory.shiftFunctor C₂ n).obj X₂)) m).hom.app X₁) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctor D m).map ((CategoryTheory.Functor.commShiftIso (G.obj X₁) n).hom.app X₂)) (CategoryTheory.CategoryStruct.comp (CategoryTheory.shiftComm ((G.obj X₁).obj X₂) m n).inv ((↑(h.ε m n)).app ((CategoryTheory.shiftFunctor D n).obj ((CategoryTheory.shiftFunctor D m).obj ((G.obj X₁).obj X₂)))))) - CategoryTheory.Functor.CommShift₂.comm 📋 Mathlib.CategoryTheory.Shift.CommShiftTwo
{C₁ : Type u_1} {C₂ : Type u_3} {D : Type u_5} {inst✝ : CategoryTheory.Category.{v_1, u_1} C₁} {inst✝¹ : CategoryTheory.Category.{v_3, u_3} C₂} {inst✝² : CategoryTheory.Category.{v_5, u_5} D} {M : Type u_6} {inst✝³ : AddCommMonoid M} {inst✝⁴ : CategoryTheory.HasShift C₁ M} {inst✝⁵ : CategoryTheory.HasShift C₂ M} {inst✝⁶ : CategoryTheory.HasShift D M} (G : CategoryTheory.Functor C₁ (CategoryTheory.Functor C₂ D)) (h : CategoryTheory.CommShift₂Setup D M) [self : G.CommShift₂ h] (X₁ : C₁) (X₂ : C₂) (m n : M) : CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso (G.obj ((CategoryTheory.shiftFunctor C₁ m).obj X₁)) n).hom.app X₂) ((CategoryTheory.shiftFunctor D n).map ((CategoryTheory.Functor.commShiftIso (G.flip.obj X₂) m).hom.app X₁)) = CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso (G.flip.obj ((CategoryTheory.shiftFunctor C₂ n).obj X₂)) m).hom.app X₁) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctor D m).map ((CategoryTheory.Functor.commShiftIso (G.obj X₁) n).hom.app X₂)) (CategoryTheory.CategoryStruct.comp (CategoryTheory.shiftComm ((G.obj X₁).obj X₂) m n).inv ((↑(h.ε m n)).app ((CategoryTheory.shiftFunctor D n).obj ((CategoryTheory.shiftFunctor D m).obj ((G.obj X₁).obj X₂)))))) - CategoryTheory.Functor.commShift₂_comm_assoc 📋 Mathlib.CategoryTheory.Shift.CommShiftTwo
{C₁ : Type u_1} {C₂ : Type u_3} {D : Type u_5} {inst✝ : CategoryTheory.Category.{v_1, u_1} C₁} {inst✝¹ : CategoryTheory.Category.{v_3, u_3} C₂} {inst✝² : CategoryTheory.Category.{v_5, u_5} D} {M : Type u_6} {inst✝³ : AddCommMonoid M} {inst✝⁴ : CategoryTheory.HasShift C₁ M} {inst✝⁵ : CategoryTheory.HasShift C₂ M} {inst✝⁶ : CategoryTheory.HasShift D M} (G : CategoryTheory.Functor C₁ (CategoryTheory.Functor C₂ D)) (h : CategoryTheory.CommShift₂Setup D M) [self : G.CommShift₂ h] (X₁ : C₁) (X₂ : C₂) (m n : M) {Z : D} (h✝ : (CategoryTheory.shiftFunctor D n).obj ((CategoryTheory.shiftFunctor D m).obj ((G.flip.obj X₂).obj X₁)) ⟶ Z) : CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso (G.obj ((CategoryTheory.shiftFunctor C₁ m).obj X₁)) n).hom.app X₂) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctor D n).map ((CategoryTheory.Functor.commShiftIso (G.flip.obj X₂) m).hom.app X₁)) h✝) = CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso (G.flip.obj ((CategoryTheory.shiftFunctor C₂ n).obj X₂)) m).hom.app X₁) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctor D m).map ((CategoryTheory.Functor.commShiftIso (G.obj X₁) n).hom.app X₂)) (CategoryTheory.CategoryStruct.comp (CategoryTheory.shiftComm ((G.obj X₁).obj X₂) m n).inv (CategoryTheory.CategoryStruct.comp ((↑(h.ε m n)).app ((CategoryTheory.shiftFunctor D n).obj ((CategoryTheory.shiftFunctor D m).obj ((G.obj X₁).obj X₂)))) h✝))) - CategoryTheory.Functor.CommShift₂.mk 📋 Mathlib.CategoryTheory.Shift.CommShiftTwo
{C₁ : Type u_1} {C₂ : Type u_3} {D : Type u_5} [CategoryTheory.Category.{v_1, u_1} C₁] [CategoryTheory.Category.{v_3, u_3} C₂] [CategoryTheory.Category.{v_5, u_5} D] {M : Type u_6} [AddCommMonoid M] [CategoryTheory.HasShift C₁ M] [CategoryTheory.HasShift C₂ M] [CategoryTheory.HasShift D M] {G : CategoryTheory.Functor C₁ (CategoryTheory.Functor C₂ D)} {h : CategoryTheory.CommShift₂Setup D M} (commShiftObj : (X₁ : C₁) → (G.obj X₁).CommShift M := by infer_instance) (commShift_map : ∀ {X₁ Y₁ : C₁} (f : X₁ ⟶ Y₁), CategoryTheory.NatTrans.CommShift (G.map f) M := by infer_instance) (commShiftFlipObj : (X₂ : C₂) → (G.flip.obj X₂).CommShift M := by infer_instance) (commShift_flip_map : ∀ {X₂ Y₂ : C₂} (g : X₂ ⟶ Y₂), CategoryTheory.NatTrans.CommShift (G.flip.map g) M := by infer_instance) (comm : ∀ (X₁ : C₁) (X₂ : C₂) (m n : M), CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso (G.obj ((CategoryTheory.shiftFunctor C₁ m).obj X₁)) n).hom.app X₂) ((CategoryTheory.shiftFunctor D n).map ((CategoryTheory.Functor.commShiftIso (G.flip.obj X₂) m).hom.app X₁)) = CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso (G.flip.obj ((CategoryTheory.shiftFunctor C₂ n).obj X₂)) m).hom.app X₁) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctor D m).map ((CategoryTheory.Functor.commShiftIso (G.obj X₁) n).hom.app X₂)) (CategoryTheory.CategoryStruct.comp (CategoryTheory.shiftComm ((G.obj X₁).obj X₂) m n).inv ((↑(h.ε m n)).app ((CategoryTheory.shiftFunctor D n).obj ((CategoryTheory.shiftFunctor D m).obj ((G.obj X₁).obj X₂))))))) : G.CommShift₂ h - CategoryTheory.Functor.commShiftIso_map₂CochainComplex_hom_app 📋 Mathlib.Algebra.Homology.BifunctorShift
{C₁ : Type u_1} {C₂ : Type u_2} {D : Type u_3} [CategoryTheory.Category.{v_1, u_1} C₁] [CategoryTheory.Category.{v_2, u_2} C₂] [CategoryTheory.Category.{v_3, u_3} D] [CategoryTheory.Preadditive C₁] [CategoryTheory.Preadditive C₂] [CategoryTheory.Preadditive D] (F : CategoryTheory.Functor C₁ (CategoryTheory.Functor C₂ D)) [F.Additive] [∀ (X₁ : C₁), (F.obj X₁).Additive] [∀ (K₁ : CochainComplex C₁ ℤ) (K₂ : CochainComplex C₂ ℤ), K₁.HasMapBifunctor K₂ F] (K₁ : CochainComplex C₁ ℤ) (K₂ : CochainComplex C₂ ℤ) (n : ℤ) : (CategoryTheory.Functor.commShiftIso (F.map₂CochainComplex.obj K₁) n).hom.app K₂ = (K₁.mapBifunctorShift₂Iso K₂ F n).hom - CategoryTheory.Functor.commShiftIso_map₂CochainComplex_inv_app 📋 Mathlib.Algebra.Homology.BifunctorShift
{C₁ : Type u_1} {C₂ : Type u_2} {D : Type u_3} [CategoryTheory.Category.{v_1, u_1} C₁] [CategoryTheory.Category.{v_2, u_2} C₂] [CategoryTheory.Category.{v_3, u_3} D] [CategoryTheory.Preadditive C₁] [CategoryTheory.Preadditive C₂] [CategoryTheory.Preadditive D] (F : CategoryTheory.Functor C₁ (CategoryTheory.Functor C₂ D)) [F.Additive] [∀ (X₁ : C₁), (F.obj X₁).Additive] [∀ (K₁ : CochainComplex C₁ ℤ) (K₂ : CochainComplex C₂ ℤ), K₁.HasMapBifunctor K₂ F] (K₁ : CochainComplex C₁ ℤ) (K₂ : CochainComplex C₂ ℤ) (n : ℤ) : (CategoryTheory.Functor.commShiftIso (F.map₂CochainComplex.obj K₁) n).inv.app K₂ = (K₁.mapBifunctorShift₂Iso K₂ F n).inv - CategoryTheory.Functor.commShiftIso_map₂CochainComplex_flip_hom_app 📋 Mathlib.Algebra.Homology.BifunctorShift
{C₁ : Type u_1} {C₂ : Type u_2} {D : Type u_3} [CategoryTheory.Category.{v_1, u_1} C₁] [CategoryTheory.Category.{v_2, u_2} C₂] [CategoryTheory.Category.{v_3, u_3} D] [CategoryTheory.Preadditive C₁] [CategoryTheory.Preadditive C₂] [CategoryTheory.Preadditive D] (F : CategoryTheory.Functor C₁ (CategoryTheory.Functor C₂ D)) [F.Additive] [∀ (X₁ : C₁), (F.obj X₁).Additive] [∀ (K₁ : CochainComplex C₁ ℤ) (K₂ : CochainComplex C₂ ℤ), K₁.HasMapBifunctor K₂ F] (K₁ : CochainComplex C₁ ℤ) (K₂ : CochainComplex C₂ ℤ) (n : ℤ) : (CategoryTheory.Functor.commShiftIso (F.map₂CochainComplex.flip.obj K₂) n).hom.app K₁ = (K₁.mapBifunctorShift₁Iso K₂ F n).hom - CategoryTheory.Functor.commShiftIso_map₂CochainComplex_flip_inv_app 📋 Mathlib.Algebra.Homology.BifunctorShift
{C₁ : Type u_1} {C₂ : Type u_2} {D : Type u_3} [CategoryTheory.Category.{v_1, u_1} C₁] [CategoryTheory.Category.{v_2, u_2} C₂] [CategoryTheory.Category.{v_3, u_3} D] [CategoryTheory.Preadditive C₁] [CategoryTheory.Preadditive C₂] [CategoryTheory.Preadditive D] (F : CategoryTheory.Functor C₁ (CategoryTheory.Functor C₂ D)) [F.Additive] [∀ (X₁ : C₁), (F.obj X₁).Additive] [∀ (K₁ : CochainComplex C₁ ℤ) (K₂ : CochainComplex C₂ ℤ), K₁.HasMapBifunctor K₂ F] (K₁ : CochainComplex C₁ ℤ) (K₂ : CochainComplex C₂ ℤ) (n : ℤ) : (CategoryTheory.Functor.commShiftIso (F.map₂CochainComplex.flip.obj K₂) n).inv.app K₁ = (K₁.mapBifunctorShift₁Iso K₂ F n).inv - CategoryTheory.SingleFunctors.map_lift_shiftIso_hom_app 📋 Mathlib.CategoryTheory.Shift.SingleFunctorsLift
{C : Type u_1} {D : Type u_2} {E : Type u_3} [CategoryTheory.Category.{u_7, u_1} C] [CategoryTheory.Category.{u_6, u_2} D] [CategoryTheory.Category.{u_5, u_3} E] {A : Type u_4} [AddMonoid A] [CategoryTheory.HasShift D A] [CategoryTheory.HasShift E A] (F : CategoryTheory.SingleFunctors C E A) (G : CategoryTheory.Functor D E) [G.CommShift A] [G.Full] [G.Faithful] (Φ : A → CategoryTheory.Functor C D) (hΦ : (a : A) → (Φ a).comp G ≅ F.functor a) (n a a' : A) (h : n + a = a') (X : C) : G.map (((F.lift G Φ hΦ).shiftIso n a a' h).hom.app X) = CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso G n).hom.app ((Φ a').obj X)) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctor E n).map ((hΦ a').hom.app X)) (CategoryTheory.CategoryStruct.comp ((F.shiftIso n a a' h).hom.app X) ((hΦ a).inv.app X))) - CategoryTheory.SingleFunctors.map_lift_shiftIso_hom_app_assoc 📋 Mathlib.CategoryTheory.Shift.SingleFunctorsLift
{C : Type u_1} {D : Type u_2} {E : Type u_3} [CategoryTheory.Category.{u_7, u_1} C] [CategoryTheory.Category.{u_6, u_2} D] [CategoryTheory.Category.{u_5, u_3} E] {A : Type u_4} [AddMonoid A] [CategoryTheory.HasShift D A] [CategoryTheory.HasShift E A] (F : CategoryTheory.SingleFunctors C E A) (G : CategoryTheory.Functor D E) [G.CommShift A] [G.Full] [G.Faithful] (Φ : A → CategoryTheory.Functor C D) (hΦ : (a : A) → (Φ a).comp G ≅ F.functor a) (n a a' : A) (h : n + a = a') (X : C) {Z : E} (h✝ : G.obj ((Φ a).obj X) ⟶ Z) : CategoryTheory.CategoryStruct.comp (G.map (((F.lift G Φ hΦ).shiftIso n a a' h).hom.app X)) h✝ = CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso G n).hom.app ((Φ a').obj X)) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctor E n).map ((hΦ a').hom.app X)) (CategoryTheory.CategoryStruct.comp ((F.shiftIso n a a' h).hom.app X) (CategoryTheory.CategoryStruct.comp ((hΦ a).inv.app X) h✝))) - CategoryTheory.DerivedCategory.map_triangleOfSESδ 📋 Mathlib.Algebra.Homology.DerivedCategory.Ext.Map
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Abelian C] {D : Type u_2} [CategoryTheory.Category.{v_2, u_2} D] [CategoryTheory.Abelian D] (F : CategoryTheory.Functor C D) [F.Additive] [CategoryTheory.Limits.PreservesFiniteLimits F] [CategoryTheory.Limits.PreservesFiniteColimits F] [HasDerivedCategory C] [HasDerivedCategory D] {S : CategoryTheory.ShortComplex (CochainComplex C ℤ)} (hS : S.ShortExact) : F.mapDerivedCategory.map (DerivedCategory.triangleOfSESδ hS) = CategoryTheory.CategoryStruct.comp (F.mapDerivedCategoryFactors.hom.app S.X₃) (CategoryTheory.CategoryStruct.comp (DerivedCategory.triangleOfSESδ ⋯) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctor (DerivedCategory D) 1).map (F.mapDerivedCategoryFactors.inv.app S.X₁)) ((CategoryTheory.Functor.commShiftIso F.mapDerivedCategory 1).inv.app (DerivedCategory.Q.obj S.X₁)))) - CategoryTheory.Triangulated.SpectralObject.mapTriangulatedFunctor_δ 📋 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] {D : Type u_3} [CategoryTheory.Category.{v_3, u_3} D] [CategoryTheory.Limits.HasZeroObject D] [CategoryTheory.HasShift D ℤ] [CategoryTheory.Preadditive D] [∀ (n : ℤ), (CategoryTheory.shiftFunctor D n).Additive] [CategoryTheory.Pretriangulated D] (X : CategoryTheory.Triangulated.SpectralObject C ι) (F : CategoryTheory.Functor C D) [F.CommShift ℤ] [F.IsTriangulated] {i j k : ι} (f : i ⟶ j) (g : j ⟶ k) : (X.mapTriangulatedFunctor F).δ f g = CategoryTheory.CategoryStruct.comp (F.map (X.δ f g)) ((CategoryTheory.Functor.commShiftIso F 1).hom.app (X.ω₁.obj (CategoryTheory.ComposableArrows.mk₁ f))) - CategoryTheory.Triangulated.SpectralObject.mapTriangulatedFunctor_δ' 📋 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] {D : Type u_3} [CategoryTheory.Category.{v_3, u_3} D] [CategoryTheory.Limits.HasZeroObject D] [CategoryTheory.HasShift D ℤ] [CategoryTheory.Preadditive D] [∀ (n : ℤ), (CategoryTheory.shiftFunctor D n).Additive] [CategoryTheory.Pretriangulated D] (X : CategoryTheory.Triangulated.SpectralObject C ι) (F : CategoryTheory.Functor C D) [F.CommShift ℤ] [F.IsTriangulated] : (X.mapTriangulatedFunctor F).δ' = CategoryTheory.CategoryStruct.comp (CategoryTheory.Functor.whiskerRight X.δ' F) (((CategoryTheory.ComposableArrows.functorArrows ι 0 1 2 CategoryTheory.Triangulated.SpectralObject._proof_6 CategoryTheory.Triangulated.SpectralObject._proof_2).comp X.ω₁).whiskerLeft (CategoryTheory.Functor.commShiftIso F 1).hom) - CategoryTheory.Functor.IsRightDerivedFunctor.precomposeShiftNatTrans_app 📋 Mathlib.CategoryTheory.Functor.Derived.RightDerivedCommShift
{C : Type u_1} {D : Type u_2} {H : Type u_3} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] [CategoryTheory.Category.{v_3, u_3} H] (RF : CategoryTheory.Functor H D) {F : CategoryTheory.Functor C D} {L : CategoryTheory.Functor C H} (α : F ⟶ L.comp RF) {A : Type u_4} [AddGroup A] [CategoryTheory.HasShift C A] [CategoryTheory.HasShift H A] [L.CommShift A] (a : A) (X : C) : (CategoryTheory.Functor.IsRightDerivedFunctor.precomposeShiftNatTrans RF α a).app X = CategoryTheory.CategoryStruct.comp (α.app ((CategoryTheory.shiftFunctor C a).obj X)) (RF.map ((CategoryTheory.Functor.commShiftIso L a).hom.app X)) - CategoryTheory.Functor.IsRightDerivedFunctor.comp_map_commShiftIso_hom_app 📋 Mathlib.CategoryTheory.Functor.Derived.RightDerivedCommShift
{C : Type u_1} {D : Type u_2} {H : Type u_3} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] [CategoryTheory.Category.{v_3, u_3} H] (RF : CategoryTheory.Functor H D) {F : CategoryTheory.Functor C D} {L : CategoryTheory.Functor C H} (α : F ⟶ L.comp RF) (W : CategoryTheory.MorphismProperty C) [L.IsLocalization W] [RF.IsRightDerivedFunctor α W] (A : Type u_4) [AddGroup A] [CategoryTheory.HasShift C A] [CategoryTheory.HasShift D A] [CategoryTheory.HasShift H A] [W.IsCompatibleWithShift A] [F.CommShift A] [L.CommShift A] (a : A) (X : C) : CategoryTheory.CategoryStruct.comp (α.app ((CategoryTheory.shiftFunctor C a).obj X)) (CategoryTheory.CategoryStruct.comp (RF.map ((CategoryTheory.Functor.commShiftIso L a).hom.app X)) ((CategoryTheory.Functor.commShiftIso RF a).hom.app (L.obj X))) = CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso F a).hom.app X) ((CategoryTheory.shiftFunctor D a).map (α.app X)) - CategoryTheory.Functor.IsRightDerivedFunctor.comp_map_commShiftIso_hom_app_assoc 📋 Mathlib.CategoryTheory.Functor.Derived.RightDerivedCommShift
{C : Type u_1} {D : Type u_2} {H : Type u_3} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] [CategoryTheory.Category.{v_3, u_3} H] (RF : CategoryTheory.Functor H D) {F : CategoryTheory.Functor C D} {L : CategoryTheory.Functor C H} (α : F ⟶ L.comp RF) (W : CategoryTheory.MorphismProperty C) [L.IsLocalization W] [RF.IsRightDerivedFunctor α W] (A : Type u_4) [AddGroup A] [CategoryTheory.HasShift C A] [CategoryTheory.HasShift D A] [CategoryTheory.HasShift H A] [W.IsCompatibleWithShift A] [F.CommShift A] [L.CommShift A] (a : A) (X : C) {Z : D} (h : (CategoryTheory.shiftFunctor D a).obj (RF.obj (L.obj X)) ⟶ Z) : CategoryTheory.CategoryStruct.comp (α.app ((CategoryTheory.shiftFunctor C a).obj X)) (CategoryTheory.CategoryStruct.comp (RF.map ((CategoryTheory.Functor.commShiftIso L a).hom.app X)) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso RF a).hom.app (L.obj X)) h)) = CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso F a).hom.app X) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctor D a).map (α.app X)) h) - CategoryTheory.Functor.op_commShiftIso_hom_app 📋 Mathlib.CategoryTheory.Triangulated.Opposite.Functor
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] [CategoryTheory.HasShift C ℤ] [CategoryTheory.HasShift D ℤ] (F : CategoryTheory.Functor C D) [F.CommShift ℤ] (X : Cᵒᵖ) (n m : ℤ) (h : n + m = 0) : (CategoryTheory.Functor.commShiftIso F.op n).hom.app X = CategoryTheory.CategoryStruct.comp (F.map ((CategoryTheory.Pretriangulated.shiftFunctorOpIso C n m h).hom.app X).unop).op (CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso F m).inv.app (Opposite.unop X)).op ((CategoryTheory.Pretriangulated.shiftFunctorOpIso D n m h).inv.app (Opposite.op (F.obj (Opposite.unop X))))) - CategoryTheory.Functor.op_commShiftIso_inv_app 📋 Mathlib.CategoryTheory.Triangulated.Opposite.Functor
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] [CategoryTheory.HasShift C ℤ] [CategoryTheory.HasShift D ℤ] (F : CategoryTheory.Functor C D) [F.CommShift ℤ] (X : Cᵒᵖ) (n m : ℤ) (h : n + m = 0) : (CategoryTheory.Functor.commShiftIso F.op n).inv.app X = CategoryTheory.CategoryStruct.comp ((CategoryTheory.Pretriangulated.shiftFunctorOpIso D n m h).hom.app (Opposite.op (F.obj (Opposite.unop X)))) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso F m).hom.app (Opposite.unop X)).op (F.map ((CategoryTheory.Pretriangulated.shiftFunctorOpIso C n m h).inv.app X).unop).op) - CategoryTheory.Functor.shift_map_op 📋 Mathlib.CategoryTheory.Triangulated.Opposite.Functor
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] [CategoryTheory.HasShift C ℤ] [CategoryTheory.HasShift D ℤ] (F : CategoryTheory.Functor C D) [F.CommShift ℤ] {X Y : C} (f : X ⟶ Y) (n : ℤ) : (CategoryTheory.shiftFunctor Dᵒᵖ n).map (F.map f).op = CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso F.op n).inv.app (Opposite.op Y)) (CategoryTheory.CategoryStruct.comp (F.map ((CategoryTheory.shiftFunctor Cᵒᵖ n).map f.op).unop).op ((CategoryTheory.Functor.commShiftIso F.op n).hom.app (Opposite.op X))) - CategoryTheory.Functor.shift_map_op_assoc 📋 Mathlib.CategoryTheory.Triangulated.Opposite.Functor
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] [CategoryTheory.HasShift C ℤ] [CategoryTheory.HasShift D ℤ] (F : CategoryTheory.Functor C D) [F.CommShift ℤ] {X Y : C} (f : X ⟶ Y) (n : ℤ) {Z : Dᵒᵖ} (h : (CategoryTheory.shiftFunctor Dᵒᵖ n).obj (Opposite.op (F.obj X)) ⟶ Z) : CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctor Dᵒᵖ n).map (F.map f).op) h = CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso F.op n).inv.app (Opposite.op Y)) (CategoryTheory.CategoryStruct.comp (F.map ((CategoryTheory.shiftFunctor Cᵒᵖ n).map f.op).unop).op (CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso F.op n).hom.app (Opposite.op X)) h)) - CategoryTheory.Functor.op_commShiftIso_hom_app_assoc 📋 Mathlib.CategoryTheory.Triangulated.Opposite.Functor
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] [CategoryTheory.HasShift C ℤ] [CategoryTheory.HasShift D ℤ] (F : CategoryTheory.Functor C D) [F.CommShift ℤ] (X : Cᵒᵖ) (n m : ℤ) (h : n + m = 0) {Z : Dᵒᵖ} (h✝ : (CategoryTheory.shiftFunctor Dᵒᵖ n).obj (F.op.obj X) ⟶ Z) : CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso F.op n).hom.app X) h✝ = CategoryTheory.CategoryStruct.comp (F.map ((CategoryTheory.Pretriangulated.shiftFunctorOpIso C n m h).hom.app X).unop).op (CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso F m).inv.app (Opposite.unop X)).op (CategoryTheory.CategoryStruct.comp ((CategoryTheory.Pretriangulated.shiftFunctorOpIso D n m h).inv.app (Opposite.op (F.obj (Opposite.unop X)))) h✝)) - CategoryTheory.Functor.op_commShiftIso_inv_app_assoc 📋 Mathlib.CategoryTheory.Triangulated.Opposite.Functor
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] [CategoryTheory.HasShift C ℤ] [CategoryTheory.HasShift D ℤ] (F : CategoryTheory.Functor C D) [F.CommShift ℤ] (X : Cᵒᵖ) (n m : ℤ) (h : n + m = 0) {Z : Dᵒᵖ} (h✝ : F.op.obj ((CategoryTheory.shiftFunctor Cᵒᵖ n).obj X) ⟶ Z) : CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso F.op n).inv.app X) h✝ = CategoryTheory.CategoryStruct.comp ((CategoryTheory.Pretriangulated.shiftFunctorOpIso D n m h).hom.app (Opposite.op (F.obj (Opposite.unop X)))) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso F m).hom.app (Opposite.unop X)).op (CategoryTheory.CategoryStruct.comp (F.map ((CategoryTheory.Pretriangulated.shiftFunctorOpIso C n m h).inv.app X).unop).op h✝)) - CategoryTheory.Functor.map_shift_unop 📋 Mathlib.CategoryTheory.Triangulated.Opposite.Functor
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] [CategoryTheory.HasShift C ℤ] [CategoryTheory.HasShift D ℤ] (F : CategoryTheory.Functor C D) [F.CommShift ℤ] {X Y : Cᵒᵖ} (f : X ⟶ Y) (n : ℤ) : F.map ((CategoryTheory.shiftFunctor Cᵒᵖ n).map f).unop = CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso F.op n).inv.app Y).unop (CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctor Dᵒᵖ n).map (F.map f.unop).op).unop ((CategoryTheory.Functor.commShiftIso F.op n).hom.app X).unop) - CategoryTheory.Functor.map_shift_unop_assoc 📋 Mathlib.CategoryTheory.Triangulated.Opposite.Functor
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] [CategoryTheory.HasShift C ℤ] [CategoryTheory.HasShift D ℤ] (F : CategoryTheory.Functor C D) [F.CommShift ℤ] {X Y : Cᵒᵖ} (f : X ⟶ Y) (n : ℤ) {Z : D} (h : F.obj (Opposite.unop ((CategoryTheory.shiftFunctor Cᵒᵖ n).obj X)) ⟶ Z) : CategoryTheory.CategoryStruct.comp (F.map ((CategoryTheory.shiftFunctor Cᵒᵖ n).map f).unop) h = CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso F.op n).inv.app Y).unop (CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctor Dᵒᵖ n).map (F.map f.unop).op).unop (CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso F.op n).hom.app X).unop h)) - CategoryTheory.Functor.map_opShiftFunctorEquivalence_unitIso_hom_app_unop 📋 Mathlib.CategoryTheory.Triangulated.Opposite.Functor
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] [CategoryTheory.HasShift C ℤ] [CategoryTheory.HasShift D ℤ] (F : CategoryTheory.Functor C D) [F.CommShift ℤ] (X : Cᵒᵖ) (n : ℤ) : F.map ((CategoryTheory.Pretriangulated.opShiftFunctorEquivalence C n).unitIso.hom.app X).unop = CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso F n).hom.app (Opposite.unop ((CategoryTheory.shiftFunctor Cᵒᵖ n).obj X))) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctor D n).map ((CategoryTheory.Functor.commShiftIso F.op n).inv.app X).unop) ((CategoryTheory.Pretriangulated.opShiftFunctorEquivalence D n).unitIso.hom.app (Opposite.op (F.obj (Opposite.unop X)))).unop) - CategoryTheory.Functor.map_opShiftFunctorEquivalence_unitIso_hom_app_unop_assoc 📋 Mathlib.CategoryTheory.Triangulated.Opposite.Functor
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] [CategoryTheory.HasShift C ℤ] [CategoryTheory.HasShift D ℤ] (F : CategoryTheory.Functor C D) [F.CommShift ℤ] (X : Cᵒᵖ) (n : ℤ) {Z : D} (h : F.obj (Opposite.unop X) ⟶ Z) : CategoryTheory.CategoryStruct.comp (F.map ((CategoryTheory.Pretriangulated.opShiftFunctorEquivalence C n).unitIso.hom.app X).unop) h = CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso F n).hom.app (Opposite.unop ((CategoryTheory.shiftFunctor Cᵒᵖ n).obj X))) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctor D n).map ((CategoryTheory.Functor.commShiftIso F.op n).inv.app X).unop) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.Pretriangulated.opShiftFunctorEquivalence D n).unitIso.hom.app (Opposite.op (F.obj (Opposite.unop X)))).unop h)) - CategoryTheory.Functor.map_opShiftFunctorEquivalence_unitIso_inv_app_unop_assoc 📋 Mathlib.CategoryTheory.Triangulated.Opposite.Functor
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] [CategoryTheory.HasShift C ℤ] [CategoryTheory.HasShift D ℤ] (F : CategoryTheory.Functor C D) [F.CommShift ℤ] (X : Cᵒᵖ) (n : ℤ) {Z : D} (h : F.obj (Opposite.unop ((CategoryTheory.Pretriangulated.opShiftFunctorEquivalence C n).inverse.obj ((CategoryTheory.Pretriangulated.opShiftFunctorEquivalence C n).functor.obj X))) ⟶ Z) : CategoryTheory.CategoryStruct.comp (F.map ((CategoryTheory.Pretriangulated.opShiftFunctorEquivalence C n).unitIso.inv.app X).unop) h = CategoryTheory.CategoryStruct.comp ((CategoryTheory.Pretriangulated.opShiftFunctorEquivalence D n).unitIso.inv.app (Opposite.op (F.obj (Opposite.unop X)))).unop (CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctor D n).map ((CategoryTheory.Functor.commShiftIso F.op n).hom.app X).unop) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso F n).inv.app (Opposite.unop ((CategoryTheory.shiftFunctor Cᵒᵖ n).obj X))) h)) - CategoryTheory.Functor.map_opShiftFunctorEquivalence_unitIso_inv_app_unop 📋 Mathlib.CategoryTheory.Triangulated.Opposite.Functor
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] [CategoryTheory.HasShift C ℤ] [CategoryTheory.HasShift D ℤ] (F : CategoryTheory.Functor C D) [F.CommShift ℤ] (X : Cᵒᵖ) (n : ℤ) : F.map ((CategoryTheory.Pretriangulated.opShiftFunctorEquivalence C n).unitIso.inv.app X).unop = CategoryTheory.CategoryStruct.comp ((CategoryTheory.Pretriangulated.opShiftFunctorEquivalence D n).unitIso.inv.app (Opposite.op (F.obj (Opposite.unop X)))).unop (CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctor D n).map ((CategoryTheory.Functor.commShiftIso F.op n).hom.app X).unop) ((CategoryTheory.Functor.commShiftIso F n).inv.app (Opposite.unop ((CategoryTheory.shiftFunctor Cᵒᵖ n).obj X)))) - CategoryTheory.Functor.map_opShiftFunctorEquivalence_counitIso_inv_app_unop_assoc 📋 Mathlib.CategoryTheory.Triangulated.Opposite.Functor
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] [CategoryTheory.HasShift C ℤ] [CategoryTheory.HasShift D ℤ] (F : CategoryTheory.Functor C D) [F.CommShift ℤ] (X : Cᵒᵖ) (n : ℤ) {Z : D} (h : F.obj (Opposite.unop X) ⟶ Z) : CategoryTheory.CategoryStruct.comp (F.map ((CategoryTheory.Pretriangulated.opShiftFunctorEquivalence C n).counitIso.inv.app X).unop) h = CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso F.op n).inv.app (Opposite.op ((CategoryTheory.shiftFunctor C n).obj (Opposite.unop X)))).unop (CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctor Dᵒᵖ n).map ((CategoryTheory.Functor.commShiftIso F n).hom.app (Opposite.unop X)).op).unop (CategoryTheory.CategoryStruct.comp ((CategoryTheory.Pretriangulated.opShiftFunctorEquivalence D n).counitIso.inv.app (Opposite.op (F.obj (Opposite.unop X)))).unop h)) - CategoryTheory.Functor.map_opShiftFunctorEquivalence_counitIso_hom_app_unop_assoc 📋 Mathlib.CategoryTheory.Triangulated.Opposite.Functor
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] [CategoryTheory.HasShift C ℤ] [CategoryTheory.HasShift D ℤ] (F : CategoryTheory.Functor C D) [F.CommShift ℤ] (X : Cᵒᵖ) (n : ℤ) {Z : D} (h : F.obj (Opposite.unop ((CategoryTheory.Pretriangulated.opShiftFunctorEquivalence C n).functor.obj ((CategoryTheory.Pretriangulated.opShiftFunctorEquivalence C n).inverse.obj X))) ⟶ Z) : CategoryTheory.CategoryStruct.comp (F.map ((CategoryTheory.Pretriangulated.opShiftFunctorEquivalence C n).counitIso.hom.app X).unop) h = CategoryTheory.CategoryStruct.comp ((CategoryTheory.Pretriangulated.opShiftFunctorEquivalence D n).counitIso.hom.app (Opposite.op (F.obj (Opposite.unop X)))).unop (CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctor Dᵒᵖ n).map ((CategoryTheory.Functor.commShiftIso F n).inv.app (Opposite.unop X)).op).unop (CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso F.op n).hom.app (Opposite.op ((CategoryTheory.shiftFunctor C n).obj (Opposite.unop X)))).unop h)) - CategoryTheory.Functor.map_opShiftFunctorEquivalence_counitIso_inv_app_unop 📋 Mathlib.CategoryTheory.Triangulated.Opposite.Functor
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] [CategoryTheory.HasShift C ℤ] [CategoryTheory.HasShift D ℤ] (F : CategoryTheory.Functor C D) [F.CommShift ℤ] (X : Cᵒᵖ) (n : ℤ) : F.map ((CategoryTheory.Pretriangulated.opShiftFunctorEquivalence C n).counitIso.inv.app X).unop = CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso F.op n).inv.app (Opposite.op ((CategoryTheory.shiftFunctor C n).obj (Opposite.unop X)))).unop (CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctor Dᵒᵖ n).map ((CategoryTheory.Functor.commShiftIso F n).hom.app (Opposite.unop X)).op).unop ((CategoryTheory.Pretriangulated.opShiftFunctorEquivalence D n).counitIso.inv.app (Opposite.op (F.obj (Opposite.unop X)))).unop) - CategoryTheory.Functor.map_opShiftFunctorEquivalence_counitIso_hom_app_unop 📋 Mathlib.CategoryTheory.Triangulated.Opposite.Functor
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] [CategoryTheory.HasShift C ℤ] [CategoryTheory.HasShift D ℤ] (F : CategoryTheory.Functor C D) [F.CommShift ℤ] (X : Cᵒᵖ) (n : ℤ) : F.map ((CategoryTheory.Pretriangulated.opShiftFunctorEquivalence C n).counitIso.hom.app X).unop = CategoryTheory.CategoryStruct.comp ((CategoryTheory.Pretriangulated.opShiftFunctorEquivalence D n).counitIso.hom.app (Opposite.op (F.obj (Opposite.unop X)))).unop (CategoryTheory.CategoryStruct.comp ((CategoryTheory.shiftFunctor Dᵒᵖ n).map ((CategoryTheory.Functor.commShiftIso F n).inv.app (Opposite.unop X)).op).unop ((CategoryTheory.Functor.commShiftIso F.op n).hom.app (Opposite.op ((CategoryTheory.shiftFunctor C n).obj (Opposite.unop X)))).unop) - CategoryTheory.Pretriangulated.commShiftIso_opOp_hom_app 📋 Mathlib.CategoryTheory.Triangulated.Opposite.OpOp
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.HasShift C ℤ] (X : C) (n m : ℤ) (hnm : n + m = 0 := by lia) : (CategoryTheory.Functor.commShiftIso (CategoryTheory.opOp C) n).hom.app X = CategoryTheory.CategoryStruct.comp ((CategoryTheory.Pretriangulated.shiftFunctorOpIso C m n ⋯).hom.app (Opposite.op X)).op ((CategoryTheory.Pretriangulated.shiftFunctorOpIso Cᵒᵖ n m hnm).inv.app (Opposite.op (Opposite.op X))) - CategoryTheory.Pretriangulated.commShiftIso_opOp_inv_app 📋 Mathlib.CategoryTheory.Triangulated.Opposite.OpOp
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.HasShift C ℤ] (X : C) (n m : ℤ) (hnm : n + m = 0 := by lia) : (CategoryTheory.Functor.commShiftIso (CategoryTheory.opOp C) n).inv.app X = CategoryTheory.CategoryStruct.comp ((CategoryTheory.Pretriangulated.shiftFunctorOpIso Cᵒᵖ n m hnm).hom.app (Opposite.op (Opposite.op X))) ((CategoryTheory.Pretriangulated.shiftFunctorOpIso C m n ⋯).inv.app (Opposite.op X)).op - CategoryTheory.Pretriangulated.commShiftIso_opOp_hom_app_assoc 📋 Mathlib.CategoryTheory.Triangulated.Opposite.OpOp
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.HasShift C ℤ] (X : C) (n m : ℤ) (hnm : n + m = 0 := by lia) {Z : Cᵒᵖᵒᵖ} (h : (CategoryTheory.shiftFunctor Cᵒᵖᵒᵖ n).obj ((CategoryTheory.opOp C).obj X) ⟶ Z) : CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso (CategoryTheory.opOp C) n).hom.app X) h = CategoryTheory.CategoryStruct.comp ((CategoryTheory.Pretriangulated.shiftFunctorOpIso C m n ⋯).hom.app (Opposite.op X)).op (CategoryTheory.CategoryStruct.comp ((CategoryTheory.Pretriangulated.shiftFunctorOpIso Cᵒᵖ n m hnm).inv.app (Opposite.op (Opposite.op X))) h) - CategoryTheory.Pretriangulated.commShiftIso_unopUnop_inv_app 📋 Mathlib.CategoryTheory.Triangulated.Opposite.OpOp
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.HasShift C ℤ] (X : Cᵒᵖᵒᵖ) (n m : ℤ) (hnm : n + m = 0 := by lia) : (CategoryTheory.Functor.commShiftIso (CategoryTheory.unopUnop C) n).inv.app X = CategoryTheory.CategoryStruct.comp ((CategoryTheory.Pretriangulated.shiftFunctorOpIso C m n ⋯).hom.app (Opposite.unop X)).unop ((CategoryTheory.Pretriangulated.shiftFunctorOpIso Cᵒᵖ n m hnm).inv.app X).unop.unop - CategoryTheory.Pretriangulated.commShiftIso_unopUnop_hom_app 📋 Mathlib.CategoryTheory.Triangulated.Opposite.OpOp
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.HasShift C ℤ] (X : Cᵒᵖᵒᵖ) (n m : ℤ) (hnm : n + m = 0 := by lia) : (CategoryTheory.Functor.commShiftIso (CategoryTheory.unopUnop C) n).hom.app X = CategoryTheory.CategoryStruct.comp ((CategoryTheory.Pretriangulated.shiftFunctorOpIso Cᵒᵖ n m hnm).hom.app X).unop.unop ((CategoryTheory.Pretriangulated.shiftFunctorOpIso C m n ⋯).inv.app (Opposite.unop X)).unop - CategoryTheory.Pretriangulated.commShiftIso_opOp_inv_app_assoc 📋 Mathlib.CategoryTheory.Triangulated.Opposite.OpOp
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.HasShift C ℤ] (X : C) (n m : ℤ) (hnm : n + m = 0 := by lia) {Z : Cᵒᵖᵒᵖ} (h : (CategoryTheory.opOp C).obj ((CategoryTheory.shiftFunctor C n).obj X) ⟶ Z) : CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso (CategoryTheory.opOp C) n).inv.app X) h = CategoryTheory.CategoryStruct.comp ((CategoryTheory.Pretriangulated.shiftFunctorOpIso Cᵒᵖ n m hnm).hom.app (Opposite.op (Opposite.op X))) (CategoryTheory.CategoryStruct.comp ((CategoryTheory.Pretriangulated.shiftFunctorOpIso C m n ⋯).inv.app (Opposite.op X)).op h) - CategoryTheory.Pretriangulated.commShiftIso_unopUnop_inv_app_assoc 📋 Mathlib.CategoryTheory.Triangulated.Opposite.OpOp
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.HasShift C ℤ] (X : Cᵒᵖᵒᵖ) (n m : ℤ) (hnm : n + m = 0 := by lia) {Z : C} (h : (CategoryTheory.unopUnop C).obj ((CategoryTheory.shiftFunctor Cᵒᵖᵒᵖ n).obj X) ⟶ Z) : CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso (CategoryTheory.unopUnop C) n).inv.app X) h = CategoryTheory.CategoryStruct.comp ((CategoryTheory.Pretriangulated.shiftFunctorOpIso C m n ⋯).hom.app (Opposite.unop X)).unop (CategoryTheory.CategoryStruct.comp ((CategoryTheory.Pretriangulated.shiftFunctorOpIso Cᵒᵖ n m hnm).inv.app X).unop.unop h) - CategoryTheory.Pretriangulated.commShiftIso_unopUnop_hom_app_assoc 📋 Mathlib.CategoryTheory.Triangulated.Opposite.OpOp
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.HasShift C ℤ] (X : Cᵒᵖᵒᵖ) (n m : ℤ) (hnm : n + m = 0 := by lia) {Z : C} (h : (CategoryTheory.shiftFunctor C n).obj ((CategoryTheory.unopUnop C).obj X) ⟶ Z) : CategoryTheory.CategoryStruct.comp ((CategoryTheory.Functor.commShiftIso (CategoryTheory.unopUnop C) n).hom.app X) h = CategoryTheory.CategoryStruct.comp ((CategoryTheory.Pretriangulated.shiftFunctorOpIso Cᵒᵖ n m hnm).hom.app X).unop.unop (CategoryTheory.CategoryStruct.comp ((CategoryTheory.Pretriangulated.shiftFunctorOpIso C m n ⋯).inv.app (Opposite.unop X)).unop h)
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