File: Mathlib/Algebra/Homology/DerivedCategory/Basic.lean

full_name: HomotopyCategory.subcategoryAcyclic
code: /-- The triangulated subcategory of `HomotopyCategory C (ComplexShape.up ℤ)` consisting
of acyclic complexes. -/
def subcategoryAcyclic : Triangulated.Subcategory (HomotopyCategory C (ComplexShape.up ℤ)) 
goal: CategoryTheory.Triangulated.Subcategory (HomotopyCategory C (ComplexShape.up ℤ))

full_name: HomotopyCategory.instClosedUnderIsomorphismsIntUpPSubcategoryAcyclic
code: instance : ClosedUnderIsomorphisms (subcategoryAcyclic C).P 
goal: CategoryTheory.ClosedUnderIsomorphisms (HomotopyCategory.subcategoryAcyclic C).P

full_name: HomotopyCategory.mem_subcategoryAcyclic_iff
code: lemma mem_subcategoryAcyclic_iff (X : HomotopyCategory C (ComplexShape.up ℤ)) :
    (subcategoryAcyclic C).P X ↔ ∀ (n : ℤ), IsZero ((homologyFunctor _ _ n).obj X) 
goal: (HomotopyCategory.subcategoryAcyclic C).P X ↔
  ∀ (n : ℤ), CategoryTheory.Limits.IsZero ((HomotopyCategory.homologyFunctor C (ComplexShape.up ℤ) n).obj X)

full_name: HomotopyCategory.quotient_obj_mem_subcategoryAcyclic_iff_exactAt
code: lemma quotient_obj_mem_subcategoryAcyclic_iff_exactAt (K : CochainComplex C ℤ) :
    (subcategoryAcyclic C).P ((quotient _ _).obj K) ↔ ∀ (n : ℤ), K.ExactAt n 
goal: (HomotopyCategory.subcategoryAcyclic C).P ((HomotopyCategory.quotient C (ComplexShape.up ℤ)).obj K) ↔
  ∀ (n : ℤ), HomologicalComplex.ExactAt K n

full_name: HomotopyCategory.quasiIso_eq_subcategoryAcyclic_W
code: lemma quasiIso_eq_subcategoryAcyclic_W :
    quasiIso C (ComplexShape.up ℤ) = (subcategoryAcyclic C).W 
goal: HomotopyCategory.quasiIso C (ComplexShape.up ℤ) = (HomotopyCategory.subcategoryAcyclic C).W

full_name: HasDerivedCategory
code: /-- The assumption that a localized category for
`(HomologicalComplex.quasiIso C (ComplexShape.up ℤ))` has been chosen, and that the morphisms
in this chosen category are in `Type w`. -/
abbrev HasDerivedCategory 
goal: Type (max (max ((max u v) + 1) v) (w + 1))

full_name: HasDerivedCategory.standard
code: /-- The derived category obtained using the constructed localized category of cochain complexes
with respect to quasi-isomorphisms. This should be used only while proving statements
which do not involve the derived category. -/
def HasDerivedCategory.standard : HasDerivedCategory.{max u v} C 
goal: HasDerivedCategory C

full_name: DerivedCategory
code: /-- The derived category of an abelian category. -/
def DerivedCategory : Type (max u v) 
goal: Type (max u v)

full_name: DerivedCategory.instCategory
code: instance : Category.{w} (DerivedCategory C) 
goal: CategoryTheory.Category.{w, max u v} (DerivedCategory C)

full_name: DerivedCategory.Q
code: /-- The localization functor `CochainComplex C ℤ ⥤ DerivedCategory C`. -/
def Q : CochainComplex C ℤ ⥤ DerivedCategory C 
goal: CochainComplex C ℤ ⥤ DerivedCategory C

full_name: DerivedCategory.instIsLocalizationCochainComplexIntQQuasiIsoUp
code: instance : (Q (C := C)).IsLocalization
    (HomologicalComplex.quasiIso C (ComplexShape.up ℤ)) 
goal: DerivedCategory.Q.IsLocalization (HomologicalComplex.quasiIso C (ComplexShape.up ℤ))

full_name: DerivedCategory.instIsIsoMapCochainComplexIntQ
code: instance {K L : CochainComplex C ℤ} (f : K ⟶ L) [QuasiIso f] :
    IsIso (Q.map f) 
goal: CategoryTheory.IsIso (DerivedCategory.Q.map f)

full_name: DerivedCategory.Qh
code: /-- The localization functor `HomotopyCategory C (ComplexShape.up ℤ) ⥤ DerivedCategory C`. -/
def Qh : HomotopyCategory C (ComplexShape.up ℤ) ⥤ DerivedCategory C 
goal: HomotopyCategory C (ComplexShape.up ℤ) ⥤ DerivedCategory C

full_name: DerivedCategory.quotientCompQhIso
code: /-- The natural isomorphism `HomotopyCategory.quotient C (ComplexShape.up ℤ) ⋙ Qh ≅ Q`. -/
def quotientCompQhIso : HomotopyCategory.quotient C (ComplexShape.up ℤ) ⋙ Qh ≅ Q 
goal: HomotopyCategory.quotient C (ComplexShape.up ℤ) ⋙ DerivedCategory.Qh ≅ DerivedCategory.Q

full_name: DerivedCategory.instIsLocalizationHomotopyCategoryIntUpQhQuasiIso
code: instance : Qh.IsLocalization (HomotopyCategory.quasiIso C (ComplexShape.up ℤ)) 
goal: DerivedCategory.Qh.IsLocalization (HomotopyCategory.quasiIso C (ComplexShape.up ℤ))

full_name: DerivedCategory.instIsLocalizationHomotopyCategoryIntUpQhWSubcategoryAcyclic
code: instance : Qh.IsLocalization (HomotopyCategory.subcategoryAcyclic C).W 
goal: DerivedCategory.Qh.IsLocalization (HomotopyCategory.subcategoryAcyclic C).W

full_name: DerivedCategory.instPreadditive
code: noncomputable instance : Preadditive (DerivedCategory C) 
goal: CategoryTheory.Preadditive (DerivedCategory C)

full_name: DerivedCategory.instAdditiveHomotopyCategoryIntUpQh
code: instance : (Qh (C := C)).Additive 
goal: DerivedCategory.Qh.Additive

full_name: DerivedCategory.instAdditiveCochainComplexIntQ
code: instance : (Q (C := C)).Additive 
goal: DerivedCategory.Q.Additive

full_name: DerivedCategory.instHasZeroObject
code: noncomputable instance : HasZeroObject (DerivedCategory C) 
goal: CategoryTheory.Limits.HasZeroObject (DerivedCategory C)

full_name: DerivedCategory.instHasShiftInt
code: noncomputable instance : HasShift (DerivedCategory C) ℤ 
goal: CategoryTheory.HasShift (DerivedCategory C) ℤ

full_name: DerivedCategory.instCommShiftHomotopyCategoryIntUpQh
code: noncomputable instance : (Qh (C := C)).CommShift ℤ 
goal: DerivedCategory.Qh.CommShift ℤ

full_name: DerivedCategory.instCommShiftCochainComplexIntQ
code: noncomputable instance : (Q (C := C)).CommShift ℤ 
goal: DerivedCategory.Q.CommShift ℤ

full_name: DerivedCategory.instCommShiftHomologicalComplexIntUpHomFunctorQuotientCompQhIso
code: instance : NatTrans.CommShift (quotientCompQhIso C).hom ℤ 
goal: CategoryTheory.NatTrans.CommShift (DerivedCategory.quotientCompQhIso C).hom ℤ

full_name: DerivedCategory.instAdditiveShiftFunctorInt
code: instance (n : ℤ) : (shiftFunctor (DerivedCategory C) n).Additive 
goal: (CategoryTheory.shiftFunctor (DerivedCategory C) n).Additive

full_name: DerivedCategory.instPretriangulated
code: noncomputable instance : Pretriangulated (DerivedCategory C) 
goal: CategoryTheory.Pretriangulated (DerivedCategory C)

full_name: DerivedCategory.instIsTriangulatedHomotopyCategoryIntUpQh
code: instance : (Qh (C := C)).IsTriangulated 
goal: DerivedCategory.Qh.IsTriangulated

full_name: DerivedCategory.instIsTriangulated
code: noncomputable instance : IsTriangulated (DerivedCategory C) 
goal: CategoryTheory.IsTriangulated (DerivedCategory C)

full_name: DerivedCategory.instEssSurjArrowHomotopyCategoryIntUpMapArrowQh
code: instance : (Qh (C := C)).mapArrow.EssSurj 
goal: DerivedCategory.Qh.mapArrow.EssSurj

full_name: DerivedCategory.instFullFunctorHomotopyCategoryIntUpObjWhiskeringLeftQh
code: instance {D : Type*} [Category D] : ((whiskeringLeft _ _ D).obj (Qh (C := C))).Full 
goal: ((CategoryTheory.whiskeringLeft (HomotopyCategory C (ComplexShape.up ℤ)) (DerivedCategory C) D).obj
    DerivedCategory.Qh).Full

full_name: DerivedCategory.instFaithfulFunctorHomotopyCategoryIntUpObjWhiskeringLeftQh
code: instance {D : Type*} [Category D] : ((whiskeringLeft _ _ D).obj (Qh (C := C))).Faithful 
goal: ((CategoryTheory.whiskeringLeft (HomotopyCategory C (ComplexShape.up ℤ)) (DerivedCategory C) D).obj
    DerivedCategory.Qh).Faithful

full_name: DerivedCategory.mem_distTriang_iff
code: lemma mem_distTriang_iff (T : Triangle (DerivedCategory C)) :
    (T ∈ distTriang (DerivedCategory C)) ↔ ∃ (X Y : CochainComplex C ℤ) (f : X ⟶ Y),
      Nonempty (T ≅ Q.mapTriangle.obj (CochainComplex.mappingCone.triangle f)) 
goal: T ∈ CategoryTheory.Pretriangulated.distinguishedTriangles ↔
  ∃ X Y f, Nonempty (T ≅ DerivedCategory.Q.mapTriangle.obj (CochainComplex.mappingCone.triangle f))

full_name: DerivedCategory.singleFunctors
code: /-- The single functors `C ⥤ DerivedCategory C` for all `n : ℤ` along with
their compatibilities with shifts. -/
noncomputable def singleFunctors : SingleFunctors C (DerivedCategory C) ℤ 
goal: CategoryTheory.SingleFunctors C (DerivedCategory C) ℤ

full_name: DerivedCategory.singleFunctor
code: /-- The shift functor `C ⥤ DerivedCategory C` which sends `X : C` to the
single cochain complex with `X` sitting in degree `n : ℤ`. -/
noncomputable abbrev singleFunctor (n : ℤ) 
goal: C ⥤ DerivedCategory C

full_name: DerivedCategory.instAdditiveSingleFunctor
code: instance (n : ℤ) : (singleFunctor C n).Additive 
goal: (DerivedCategory.singleFunctor C n).Additive

full_name: DerivedCategory.singleFunctorsPostcompQhIso
code: /-- The isomorphism
`DerivedCategory.singleFunctors C ≅ (HomotopyCategory.singleFunctors C).postcomp Qh` given
by the definition of `DerivedCategory.singleFunctors`. -/
noncomputable def singleFunctorsPostcompQhIso :
    singleFunctors C ≅ (HomotopyCategory.singleFunctors C).postcomp Qh 
goal: DerivedCategory.singleFunctors C ≅ (HomotopyCategory.singleFunctors C).postcomp DerivedCategory.Qh

full_name: DerivedCategory.singleFunctorsPostcompQIso
code: /-- The isomorphism
`DerivedCategory.singleFunctors C ≅ (CochainComplex.singleFunctors C).postcomp Q`. -/
noncomputable def singleFunctorsPostcompQIso :
    singleFunctors C ≅ (CochainComplex.singleFunctors C).postcomp Q 
goal: DerivedCategory.singleFunctors C ≅ (CochainComplex.singleFunctors C).postcomp DerivedCategory.Q