File: Mathlib/Algebra/Homology/HomologicalComplexBiprod.lean

full_name: HomologicalComplex.instHasBinaryBiproductObjEval
code: instance (i : ι) : HasBinaryBiproduct ((eval C c i).obj K) ((eval C c i).obj L) 
goal: CategoryTheory.Limits.HasBinaryBiproduct ((HomologicalComplex.eval C c i).obj K) ((HomologicalComplex.eval C c i).obj L)

full_name: HomologicalComplex.instHasLimitDiscreteWalkingPairCompPairEval
code: instance (i : ι) : HasLimit ((pair K L) ⋙ (eval C c i)) 
goal: CategoryTheory.Limits.HasLimit (CategoryTheory.Limits.pair K L ⋙ HomologicalComplex.eval C c i)

full_name: HomologicalComplex.instHasColimitDiscreteWalkingPairCompPairEval
code: instance (i : ι) : HasColimit ((pair K L) ⋙ (eval C c i)) 
goal: CategoryTheory.Limits.HasColimit (CategoryTheory.Limits.pair K L ⋙ HomologicalComplex.eval C c i)

full_name: HomologicalComplex.instHasBinaryBiproduct
code: instance : HasBinaryBiproduct K L 
goal: CategoryTheory.Limits.HasBinaryBiproduct K L

full_name: HomologicalComplex.instPreservesBinaryBiproductEval
code: instance (i : ι) : PreservesBinaryBiproduct K L (eval C c i) 
goal: CategoryTheory.Limits.PreservesBinaryBiproduct K L (HomologicalComplex.eval C c i)

full_name: HomologicalComplex.biprodXIso
code: /-- The canonical isomorphism `(K ⊞ L).X i ≅ (K.X i) ⊞ (L.X i)`. -/
noncomputable def biprodXIso (i : ι) : (K ⊞ L).X i ≅ (K.X i) ⊞ (L.X i) 
goal: (K ⊞ L).X i ≅ K.X i ⊞ L.X i

full_name: HomologicalComplex.inl_biprodXIso_inv
code: @[reassoc (attr := simp)]
lemma inl_biprodXIso_inv (i : ι) :
    biprod.inl ≫ (biprodXIso K L i).inv = (biprod.inl : K ⟶ K ⊞ L).f i 
goal: CategoryTheory.Limits.biprod.inl ≫ (K.biprodXIso L i).inv = CategoryTheory.Limits.biprod.inl.f i

full_name: HomologicalComplex.inr_biprodXIso_inv
code: @[reassoc (attr := simp)]
lemma inr_biprodXIso_inv (i : ι) :
    biprod.inr ≫ (biprodXIso K L i).inv = (biprod.inr : L ⟶ K ⊞ L).f i 
goal: CategoryTheory.Limits.biprod.inr ≫ (K.biprodXIso L i).inv = CategoryTheory.Limits.biprod.inr.f i

full_name: HomologicalComplex.biprodXIso_hom_fst
code: @[reassoc (attr := simp)]
lemma biprodXIso_hom_fst (i : ι) :
    (biprodXIso K L i).hom ≫ biprod.fst = (biprod.fst : K ⊞ L ⟶ K).f i 
goal: (K.biprodXIso L i).hom ≫ CategoryTheory.Limits.biprod.fst = CategoryTheory.Limits.biprod.fst.f i

full_name: HomologicalComplex.biprodXIso_hom_snd
code: @[reassoc (attr := simp)]
lemma biprodXIso_hom_snd (i : ι) :
    (biprodXIso K L i).hom ≫ biprod.snd = (biprod.snd : K ⊞ L ⟶ L).f i 
goal: (K.biprodXIso L i).hom ≫ CategoryTheory.Limits.biprod.snd = CategoryTheory.Limits.biprod.snd.f i

full_name: HomologicalComplex.biprod_inl_fst_f
code: @[reassoc (attr := simp)]
lemma biprod_inl_fst_f (i : ι) :
    (biprod.inl : K ⟶ K ⊞ L).f i ≫ (biprod.fst : K ⊞ L ⟶ K).f i = 𝟙 _ 
goal: CategoryTheory.Limits.biprod.inl.f i ≫ CategoryTheory.Limits.biprod.fst.f i = 𝟙 (K.X i)

full_name: HomologicalComplex.biprod_inl_snd_f
code: @[reassoc (attr := simp)]
lemma biprod_inl_snd_f (i : ι) :
    (biprod.inl : K ⟶ K ⊞ L).f i ≫ (biprod.snd : K ⊞ L ⟶ L).f i = 0 
goal: CategoryTheory.Limits.biprod.inl.f i ≫ CategoryTheory.Limits.biprod.snd.f i = 0

full_name: HomologicalComplex.biprod_inr_fst_f
code: @[reassoc (attr := simp)]
lemma biprod_inr_fst_f (i : ι) :
    (biprod.inr : L ⟶ K ⊞ L).f i ≫ (biprod.fst : K ⊞ L ⟶ K).f i = 0 
goal: CategoryTheory.Limits.biprod.inr.f i ≫ CategoryTheory.Limits.biprod.fst.f i = 0

full_name: HomologicalComplex.biprod_inr_snd_f
code: @[reassoc (attr := simp)]
lemma biprod_inr_snd_f (i : ι) :
    (biprod.inr : L ⟶ K ⊞ L).f i ≫ (biprod.snd : K ⊞ L ⟶ L).f i = 𝟙 _ 
goal: CategoryTheory.Limits.biprod.inr.f i ≫ CategoryTheory.Limits.biprod.snd.f i = 𝟙 (L.X i)

full_name: HomologicalComplex.biprod_inl_desc_f
code: @[reassoc (attr := simp)]
lemma biprod_inl_desc_f (α : K ⟶ M) (β : L ⟶ M) (i : ι) :
    (biprod.inl : K ⟶ K ⊞ L).f i ≫ (biprod.desc α β).f i = α.f i 
goal: CategoryTheory.Limits.biprod.inl.f i ≫ (CategoryTheory.Limits.biprod.desc α β).f i = α.f i

full_name: HomologicalComplex.biprod_inr_desc_f
code: @[reassoc (attr := simp)]
lemma biprod_inr_desc_f (α : K ⟶ M) (β : L ⟶ M) (i : ι) :
    (biprod.inr : L ⟶ K ⊞ L).f i ≫ (biprod.desc α β).f i = β.f i 
goal: CategoryTheory.Limits.biprod.inr.f i ≫ (CategoryTheory.Limits.biprod.desc α β).f i = β.f i

full_name: HomologicalComplex.biprod_lift_fst_f
code: @[reassoc (attr := simp)]
lemma biprod_lift_fst_f (α : M ⟶ K) (β : M ⟶ L) (i : ι) :
    (biprod.lift α β).f i ≫ (biprod.fst : K ⊞ L ⟶ K).f i = α.f i 
goal: (CategoryTheory.Limits.biprod.lift α β).f i ≫ CategoryTheory.Limits.biprod.fst.f i = α.f i

full_name: HomologicalComplex.biprod_lift_snd_f
code: @[reassoc (attr := simp)]
lemma biprod_lift_snd_f (α : M ⟶ K) (β : M ⟶ L) (i : ι) :
    (biprod.lift α β).f i ≫ (biprod.snd : K ⊞ L ⟶ L).f i = β.f i 
goal: (CategoryTheory.Limits.biprod.lift α β).f i ≫ CategoryTheory.Limits.biprod.snd.f i = β.f i