Construction of the inverse functor of the Dold-Kan equivalence #
THIS FILE IS SYNCHRONIZED WITH MATHLIB4. Any changes to this file require a corresponding PR to mathlib4.
In this file, we construct the functor Γ₀ : chain_complex C ℕ ⥤ simplicial_object C
which shall be the inverse functor of the Dold-Kan equivalence in the case of abelian categories,
and more generally pseudoabelian categories.
By definition, when K
is a chain_complex, Γ₀.obj K
is a simplicial object which
sends Δ : simplex_categoryᵒᵖ
to a certain coproduct indexed by the set
splitting.index_set Δ
whose elements consists of epimorphisms e : Δ.unop ⟶ Δ'.unop
(with Δ' : simplex_categoryᵒᵖ
); the summand attached to such an e
is K.X Δ'.unop.len
.
By construction, Γ₀.obj K
is a split simplicial object whose splitting is Γ₀.splitting K
.
We also construct Γ₂ : karoubi (chain_complex C ℕ) ⥤ karoubi (simplicial_object C)
which shall be an equivalence for any additive category C
.
(See equivalence.lean
for the general strategy of proof of the Dold-Kan equivalence.)
is_δ₀ i
is a simple condition used to check whether a monomorphism i
in
simplex_category
identifies to the coface map δ 0
.
Equations
- algebraic_topology.dold_kan.is_δ₀ i = (Δ.len = Δ'.len + 1 ∧ ⇑(simplex_category.hom.to_order_hom i) 0 ≠ 0)
In the definition of (Γ₀.obj K).obj Δ
as a direct sum indexed by A : splitting.index_set Δ
,
the summand summand K Δ A
is K.X A.1.len
.
Equations
- algebraic_topology.dold_kan.Γ₀.obj.summand K Δ A = K.X (opposite.unop A.fst).len
The functor Γ₀
sends a chain complex K
to the simplicial object which
sends Δ
to the direct sum of the objects summand K Δ A
for all A : splitting.index_set Δ
Equations
A monomorphism i : Δ' ⟶ Δ
induces a morphism K.X Δ.len ⟶ K.X Δ'.len
which
is the identity if Δ = Δ'
, the differential on the complex K
if i = δ 0
, and
zero otherwise.
Equations
- algebraic_topology.dold_kan.Γ₀.obj.termwise.map_mono K i = dite (Δ = Δ') (λ (h : Δ = Δ'), category_theory.eq_to_hom _) (λ (h : ¬Δ = Δ'), dite (algebraic_topology.dold_kan.is_δ₀ i) (λ (h : algebraic_topology.dold_kan.is_δ₀ i), K.d Δ.len Δ'.len) (λ (h : ¬algebraic_topology.dold_kan.is_δ₀ i), 0))
The simplicial morphism on the simplicial object Γ₀.obj K
induced by
a morphism Δ' → Δ
in simplex_category
is defined on each summand
associated to an A : Γ_index_set Δ
in terms of the epi-mono factorisation
of θ ≫ A.e
.
Equations
- algebraic_topology.dold_kan.Γ₀.obj.map K θ = category_theory.limits.sigma.desc (λ (A : simplicial_object.splitting.index_set Δ), algebraic_topology.dold_kan.Γ₀.obj.termwise.map_mono K (category_theory.limits.image.ι (θ.unop ≫ A.e)) ≫ category_theory.limits.sigma.ι (algebraic_topology.dold_kan.Γ₀.obj.summand K Δ') (A.pull θ))
The functor Γ₀ : chain_complex C ℕ ⥤ simplicial_object C
, on objects.
Equations
- algebraic_topology.dold_kan.Γ₀.obj K = {obj := λ (Δ : simplex_categoryᵒᵖ), algebraic_topology.dold_kan.Γ₀.obj.obj₂ K Δ, map := λ (Δ Δ' : simplex_categoryᵒᵖ) (θ : Δ ⟶ Δ'), algebraic_topology.dold_kan.Γ₀.obj.map K θ, map_id' := _, map_comp' := _}
By construction, the simplicial Γ₀.obj K
is equipped with a splitting.
Equations
- algebraic_topology.dold_kan.Γ₀.splitting K = {N := λ (n : ℕ), K.X n, ι := λ (n : ℕ), category_theory.limits.sigma.ι (algebraic_topology.dold_kan.Γ₀.obj.summand K (opposite.op (simplex_category.mk n))) (simplicial_object.splitting.index_set.id (opposite.op (simplex_category.mk n))), map_is_iso' := _}
The functor Γ₀ : chain_complex C ℕ ⥤ simplicial_object C
, on morphisms.
Equations
- algebraic_topology.dold_kan.Γ₀.map f = {app := λ (Δ : simplex_categoryᵒᵖ), (algebraic_topology.dold_kan.Γ₀.splitting K).desc Δ (λ (A : simplicial_object.splitting.index_set Δ), f.f (opposite.unop A.fst).len ≫ (algebraic_topology.dold_kan.Γ₀.splitting K').ι_summand A), naturality' := _}
The functor Γ₀' : chain_complex C ℕ ⥤ simplicial_object.split C
that induces Γ₀ : chain_complex C ℕ ⥤ simplicial_object C
, which
shall be the inverse functor of the Dold-Kan equivalence for
abelian or pseudo-abelian categories.
Equations
- algebraic_topology.dold_kan.Γ₀' = {obj := λ (K : chain_complex C ℕ), simplicial_object.split.mk' (algebraic_topology.dold_kan.Γ₀.splitting K), map := λ (K K' : chain_complex C ℕ) (f : K ⟶ K'), {F := algebraic_topology.dold_kan.Γ₀.map f, f := f.f, comm' := _}, map_id' := _, map_comp' := _}
The functor Γ₀ : chain_complex C ℕ ⥤ simplicial_object C
, which is
the inverse functor of the Dold-Kan equivalence when C
is an abelian
category, or more generally a pseudoabelian category.
The extension of Γ₀ : chain_complex C ℕ ⥤ simplicial_object C
on the idempotent completions. It shall be an equivalence of categories
for any additive category C
.