The homotopy cofiber of a morphism of homological complexes
In this file, we construct the homotopy cofiber of a morphism φ : F ⟶ G
between homological complexes in HomologicalComplex C c
. In degree i
,
it is isomorphic to (F.X j) ⊞ (G.X i)
if there is a j
such that c.Rel i j
,
and G.X i
otherwise. (This is also known as the mapping cone of φ
. Under
the name CochainComplex.mappingCone
, a specific API shall be developed
for the case of cochain complexes indexed by ℤ
.)
When we assume hc : ∀ j, ∃ i, c.Rel i j
(which holds in the case of chain complexes,
or cochain complexes indexed by ℤ
), then for any homological complex K
,
there is a bijection HomologicalComplex.homotopyCofiber.descEquiv φ K hc
between homotopyCofiber φ ⟶ K
and the tuples (α, hα)
with
α : G ⟶ K
and hα : Homotopy (φ ≫ α) 0
.
We shall also study the cylinder of a homological complex K
: this is the
homotopy cofiber of the morphism biprod.lift (𝟙 K) (-𝟙 K) : K ⟶ K ⊞ K
.
Then, a morphism K.cylinder ⟶ M
is determined by the data of two
morphisms φ₀ φ₁ : K ⟶ M
and a homotopy h : Homotopy φ₀ φ₁
,
see cylinder.desc
. There is also a homotopy equivalence
cylinder.homotopyEquiv K : HomotopyEquiv K.cylinder K
. From the construction of
the cylinder, we deduce the lemma Homotopy.map_eq_of_inverts_homotopyEquivalences
which assert that if a functor inverts homotopy equivalences, then the image of
two homotopic maps are equal.
A morphism of homological complexes φ : F ⟶ G
has a homotopy cofiber if for all
indices i
and j
such that c.Rel i j
, the binary biproduct F.X j ⊞ G.X i
exists.
- hasBinaryBiproduct : ∀ (i j : ι), c.Rel i j → CategoryTheory.Limits.HasBinaryBiproduct (F.X j) (G.X i)
Instances
Equations
The X
field of the homological complex homotopyCofiber φ
.
Equations
- HomologicalComplex.homotopyCofiber.X φ i = if hi : c.Rel i (ComplexShape.next c i) then F.X (ComplexShape.next c i) ⊞ G.X i else G.X i
Instances For
The canonical isomorphism (homotopyCofiber φ).X i ≅ F.X j ⊞ G.X i
when c.Rel i j
.
Equations
- HomologicalComplex.homotopyCofiber.XIsoBiprod φ i j hij = CategoryTheory.eqToIso (_ : HomologicalComplex.homotopyCofiber.X φ i = (F.X j ⊞ G.X i))
Instances For
The canonical isomorphism (homotopyCofiber φ).X i ≅ G.X i
when ¬ c.Rel i (c.next i)
.
Equations
- HomologicalComplex.homotopyCofiber.XIso φ i hi = CategoryTheory.eqToIso (_ : (if hi : c.Rel i (ComplexShape.next c i) then F.X (ComplexShape.next c i) ⊞ G.X i else G.X i) = G.X i)
Instances For
The second projection (homotopyCofiber φ).X i ⟶ G.X i
.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The right inclusion G.X i ⟶ (homotopyCofiber φ).X i
.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The first projection (homotopyCofiber φ).X i ⟶ F.X j
when c.Rel i j
.
Equations
- HomologicalComplex.homotopyCofiber.fstX φ i j hij = CategoryTheory.CategoryStruct.comp (HomologicalComplex.homotopyCofiber.XIsoBiprod φ i j hij).hom CategoryTheory.Limits.biprod.fst
Instances For
The left inclusion F.X i ⟶ (homotopyCofiber φ).X j
when c.Rel j i
.
Equations
- HomologicalComplex.homotopyCofiber.inlX φ i j hij = CategoryTheory.CategoryStruct.comp CategoryTheory.Limits.biprod.inl (HomologicalComplex.homotopyCofiber.XIsoBiprod φ j i hij).inv
Instances For
The d
field of the homological complex homotopyCofiber φ
.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The homotopy cofiber of a morphism of homological complexes, also known as the mapping cone.
Equations
- HomologicalComplex.homotopyCofiber φ = HomologicalComplex.mk (fun (i : ι) => HomologicalComplex.homotopyCofiber.X φ i) fun (i j : ι) => HomologicalComplex.homotopyCofiber.d φ i j
Instances For
The right inclusion G ⟶ homotopyCofiber φ
.
Equations
Instances For
The composition φ ≫ mappingCone.inr φ
is homotopic to 0
.
Equations
- HomologicalComplex.homotopyCofiber.inrCompHomotopy φ hc = Homotopy.mk fun (i j : ι) => if hij : c.Rel j i then HomologicalComplex.homotopyCofiber.inlX φ i j hij else 0
Instances For
The morphism homotopyCofiber φ ⟶ K
that is induced by a morphism α : G ⟶ K
and a homotopy hα : Homotopy (φ ≫ α) 0
.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Morphisms homotopyCofiber φ ⟶ K
are uniquely determined by
a morphism α : G ⟶ K
and a homotopy from φ ≫ α
to 0
.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The cylinder object of a homological complex K
is the homotopy cofiber
of the morphism biprod.lift (𝟙 K) (-𝟙 K) : K ⟶ K ⊞ K
.
Equations
Instances For
The left inclusion K ⟶ K.cylinder
.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The right inclusion K ⟶ K.cylinder
.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The morphism K.cylinder ⟶ F
that is induced by two morphisms φ₀ φ₁ : K ⟶ F
and a homotopy h : Homotopy φ₀ φ₁
.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The projection π : K.cylinder ⟶ K
.
Equations
Instances For
The left inclusion K.X i ⟶ K.cylinder.X j
when c.Rel j i
.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The right inclusion (K ⊞ K).X i ⟶ K.cylinder.X i
.
Equations
Instances For
A null homotopic map K.cylinder ⟶ K.cylinder
which identifies to
π K ≫ ι₀ K - 𝟙 _
, see nullHomotopicMap_eq
.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The obvious homotopy from nullHomotopicMap K
to zero.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The homotopy between π K ≫ ι₀ K
and 𝟙 K.cylinder
.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The homotopy equivalence between K.cylinder
and K
.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The homotopy between cylinder.ι₀ K
and cylinder.ι₁ K
.
Equations
- One or more equations did not get rendered due to their size.
Instances For
If a functor inverts homotopy equivalences, it sends homotopic maps to the same map.