Documentation

TauCeti.AlgebraicTopology.SimplicialSet.EilenbergZilber

The Eilenberg–Zilber theorem #

For simplicial sets K and L, the Alexander–Whitney map C(K × L; R ⊗ S) ⟶ C(K; R) ⊗ C(L; S) and the shuffle map back are mutually inverse chain homotopy equivalences (SSet.eilenbergZilberHomotopyEquiv). Neither composite is the identity on unnormalized chains. Already for a 1-simplex x of K and a vertex y of L, the Alexander–Whitney map followed by the shuffle map sends the summand of the 1-simplex (x, s₀ y) of K × L to itself plus the summand of the degenerate 1-simplex (s₀ x₀, s₀ y), where x₀ is the initial vertex of x. Both homotopies come from the method of acyclic models.

For shuffle ∘ AW ≃ id (SSet.alexanderWhitneyShuffleHomotopy) the statement used is SSet.prodChainComplexHomotopy. Let φ and ψ be families of chain maps C(K × L; T) ⟶ C(K × L; T'), natural in maps K ⟶ K' and L ⟶ L', which agree in degree zero. Then φ and ψ are chain homotopic, through a homotopy natural in K and L (SSet.prodChainComplexHomotopy_hom_naturality). An n-simplex (x, y) of K × L is the image of the diagonal n-simplex of the model Δ[n] × Δ[n] under the map classifying (x, y), so by naturality the homotopy is determined by its values on these diagonal simplices. These values are built by induction on n: the chain that the homotopy must bound on the model is a cycle by the inductive hypothesis, and the cone from the vertex (0, 0) of Δ[n] × Δ[n] (SSet.stdSimplex.prodConeChain) bounds it, because this cone is a contracting homotopy in positive degrees.

For AW ∘ shuffle ≃ id (SSet.shuffleAlexanderWhitneyHomotopy) the statement used is the same one for families of chain maps C(K; R) ⊗ C(L; S) ⟶ C(K; R') ⊗ C(L; S') (SSet.tensorChainComplexHomotopy). Here the summand of a p-simplex x of K and a q-simplex y of L is the image of the summand of the pair of top simplices of the models Δ[p] and Δ[q], so there is one model for each bidegree. The bounding chains on the models come from the contracting homotopy c ⊗ 1 + e ⊗ c of C(Δ[p]; R') ⊗ C(Δ[q]; S') in positive degrees (SSet.stdSimplex.tensorConeChain). Here c is the cone from the vertex 0 on either factor (SSet.stdSimplex.coneChain), and e collapses the vertices of Δ[p] onto the vertex 0 (SSet.stdSimplex.constZeroChain).

Main definitions and results #

References #

Acyclic models for products of simplicial sets. Two families φ and ψ of chain maps C(K × L; T) ⟶ C(K × L; T') on the simplicial chains of products, natural in both simplicial sets and equal in degree zero, are chain homotopic. The homotopy is natural in K and L (SSet.prodChainComplexHomotopy_hom_naturality).

Equations
  • One or more equations did not get rendered due to their size.
Instances For

    The homotopy of SSet.prodChainComplexHomotopy is natural in both simplicial sets.

    theorem SSet.prodChainComplexHomotopy_hom_naturality_assoc {C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Preadditive C] [CategoryTheory.Limits.HasCoproducts C] {T T' : C} (φ ψ : (K L : SSet) → (CategoryTheory.MonoidalCategoryStruct.tensorObj K L).chainComplex T ⟶ (CategoryTheory.MonoidalCategoryStruct.tensorObj K L).chainComplex T') (hφ : ∀ ⦃K K' L L' : SSet⦄ (f : K ⟶ K') (g : L ⟶ L'), CategoryTheory.CategoryStruct.comp (chainComplexMap (CategoryTheory.MonoidalCategoryStruct.tensorHom f g) T) (φ K' L') = CategoryTheory.CategoryStruct.comp (φ K L) (chainComplexMap (CategoryTheory.MonoidalCategoryStruct.tensorHom f g) T')) (hψ : ∀ ⦃K K' L L' : SSet⦄ (f : K ⟶ K') (g : L ⟶ L'), CategoryTheory.CategoryStruct.comp (chainComplexMap (CategoryTheory.MonoidalCategoryStruct.tensorHom f g) T) (ψ K' L') = CategoryTheory.CategoryStruct.comp (ψ K L) (chainComplexMap (CategoryTheory.MonoidalCategoryStruct.tensorHom f g) T')) (h₀ : ∀ (K L : SSet), (φ K L).f 0 = (ψ K L).f 0) {K K' L L' : SSet} (f : K ⟶ K') (g : L ⟶ L') (i j : ℕ) {Z : C} (h : ((CategoryTheory.MonoidalCategoryStruct.tensorObj K' L').chainComplex T').X j ⟶ Z) :

    The homotopy of SSet.prodChainComplexHomotopy is natural in both simplicial sets.

    The Eilenberg–Zilber homotopy shuffle ∘ AW ≃ id: the Alexander–Whitney map C(K × L; R ⊗ S) ⟶ C(K; R) ⊗ C(L; S) followed by the shuffle map is chain homotopic to the identity of C(K × L; R ⊗ S). The homotopy is the one given by acyclic models, SSet.prodChainComplexHomotopy, and so is natural in K and L.

    Equations
    • One or more equations did not get rendered due to their size.
    Instances For

      The cone on the tensor product C(Δ[a]; R) ⊗ C(Δ[b]; S), as a map raising the degree by one: c ⊗ 1 + e ⊗ c, where c is the cone from the vertex 0 on either factor (SSet.stdSimplex.coneChain) and e collapses the 0-chains of Δ[a] onto the vertex 0 (SSet.stdSimplex.constZeroChain). It is a contracting homotopy in positive degrees (SSet.stdSimplex.tensorConeChain_d).

      Equations
      • One or more equations did not get rendered due to their size.
      Instances For

        On a summand of bidegree (r + 1, s), the cone on C(Δ[a]; R) ⊗ C(Δ[b]; S) is the cone on the first factor.

        The cone on C(Δ[a]; R) ⊗ C(Δ[b]; S) is a contracting homotopy in positive degrees: ∂ (c ∘ σ) = σ - c ∘ ∂ σ for a chain σ of positive degree. On a summand u ⊗ v this combines the boundary formulas of the cones on the two factors with the Koszul sign rule.

        noncomputable def SSet.tensorChainComplexHomotopy {C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Preadditive C] [CategoryTheory.Limits.HasCoproducts C] [CategoryTheory.MonoidalCategory C] [CategoryTheory.MonoidalPreadditive C] [∀ (X : C) (J : Type w), CategoryTheory.Limits.PreservesColimitsOfShape (CategoryTheory.Discrete J) (CategoryTheory.MonoidalCategory.tensorLeft X)] [∀ (X : C) (J : Type w), CategoryTheory.Limits.PreservesColimitsOfShape (CategoryTheory.Discrete J) (CategoryTheory.MonoidalCategory.tensorRight X)] {R S R' S' : C} (φ ψ : (K L : SSet) → CategoryTheory.MonoidalCategoryStruct.tensorObj (K.chainComplex R) (L.chainComplex S) ⟶ CategoryTheory.MonoidalCategoryStruct.tensorObj (K.chainComplex R') (L.chainComplex S')) (hφ : ∀ ⦃K K' L L' : SSet⦄ (f : K ⟶ K') (g : L ⟶ L'), CategoryTheory.CategoryStruct.comp (CategoryTheory.MonoidalCategoryStruct.tensorHom (chainComplexMap f R) (chainComplexMap g S)) (φ K' L') = CategoryTheory.CategoryStruct.comp (φ K L) (CategoryTheory.MonoidalCategoryStruct.tensorHom (chainComplexMap f R') (chainComplexMap g S'))) (hψ : ∀ ⦃K K' L L' : SSet⦄ (f : K ⟶ K') (g : L ⟶ L'), CategoryTheory.CategoryStruct.comp (CategoryTheory.MonoidalCategoryStruct.tensorHom (chainComplexMap f R) (chainComplexMap g S)) (ψ K' L') = CategoryTheory.CategoryStruct.comp (ψ K L) (CategoryTheory.MonoidalCategoryStruct.tensorHom (chainComplexMap f R') (chainComplexMap g S'))) (h₀ : ∀ (K L : SSet), (φ K L).f 0 = (ψ K L).f 0) (K L : SSet) :
        Homotopy (φ K L) (ψ K L)

        Acyclic models for tensor products of simplicial chains. Two families φ and ψ of chain maps C(K; R) ⊗ C(L; S) ⟶ C(K; R') ⊗ C(L; S'), natural in both simplicial sets and equal in degree zero, are chain homotopic. The homotopy is natural in K and L (SSet.tensorChainComplexHomotopy_hom_naturality).

        Equations
        • One or more equations did not get rendered due to their size.
        Instances For
          theorem SSet.tensorChainComplexHomotopy_hom_naturality {C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Preadditive C] [CategoryTheory.Limits.HasCoproducts C] [CategoryTheory.MonoidalCategory C] [CategoryTheory.MonoidalPreadditive C] [∀ (X : C) (J : Type w), CategoryTheory.Limits.PreservesColimitsOfShape (CategoryTheory.Discrete J) (CategoryTheory.MonoidalCategory.tensorLeft X)] [∀ (X : C) (J : Type w), CategoryTheory.Limits.PreservesColimitsOfShape (CategoryTheory.Discrete J) (CategoryTheory.MonoidalCategory.tensorRight X)] {R S R' S' : C} (φ ψ : (K L : SSet) → CategoryTheory.MonoidalCategoryStruct.tensorObj (K.chainComplex R) (L.chainComplex S) ⟶ CategoryTheory.MonoidalCategoryStruct.tensorObj (K.chainComplex R') (L.chainComplex S')) (hφ : ∀ ⦃K K' L L' : SSet⦄ (f : K ⟶ K') (g : L ⟶ L'), CategoryTheory.CategoryStruct.comp (CategoryTheory.MonoidalCategoryStruct.tensorHom (chainComplexMap f R) (chainComplexMap g S)) (φ K' L') = CategoryTheory.CategoryStruct.comp (φ K L) (CategoryTheory.MonoidalCategoryStruct.tensorHom (chainComplexMap f R') (chainComplexMap g S'))) (hψ : ∀ ⦃K K' L L' : SSet⦄ (f : K ⟶ K') (g : L ⟶ L'), CategoryTheory.CategoryStruct.comp (CategoryTheory.MonoidalCategoryStruct.tensorHom (chainComplexMap f R) (chainComplexMap g S)) (ψ K' L') = CategoryTheory.CategoryStruct.comp (ψ K L) (CategoryTheory.MonoidalCategoryStruct.tensorHom (chainComplexMap f R') (chainComplexMap g S'))) (h₀ : ∀ (K L : SSet), (φ K L).f 0 = (ψ K L).f 0) {K K' L L' : SSet} (f : K ⟶ K') (g : L ⟶ L') (i j : ℕ) :

          The homotopy of SSet.tensorChainComplexHomotopy is natural in both simplicial sets.

          theorem SSet.tensorChainComplexHomotopy_hom_naturality_assoc {C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Preadditive C] [CategoryTheory.Limits.HasCoproducts C] [CategoryTheory.MonoidalCategory C] [CategoryTheory.MonoidalPreadditive C] [∀ (X : C) (J : Type w), CategoryTheory.Limits.PreservesColimitsOfShape (CategoryTheory.Discrete J) (CategoryTheory.MonoidalCategory.tensorLeft X)] [∀ (X : C) (J : Type w), CategoryTheory.Limits.PreservesColimitsOfShape (CategoryTheory.Discrete J) (CategoryTheory.MonoidalCategory.tensorRight X)] {R S R' S' : C} (φ ψ : (K L : SSet) → CategoryTheory.MonoidalCategoryStruct.tensorObj (K.chainComplex R) (L.chainComplex S) ⟶ CategoryTheory.MonoidalCategoryStruct.tensorObj (K.chainComplex R') (L.chainComplex S')) (hφ : ∀ ⦃K K' L L' : SSet⦄ (f : K ⟶ K') (g : L ⟶ L'), CategoryTheory.CategoryStruct.comp (CategoryTheory.MonoidalCategoryStruct.tensorHom (chainComplexMap f R) (chainComplexMap g S)) (φ K' L') = CategoryTheory.CategoryStruct.comp (φ K L) (CategoryTheory.MonoidalCategoryStruct.tensorHom (chainComplexMap f R') (chainComplexMap g S'))) (hψ : ∀ ⦃K K' L L' : SSet⦄ (f : K ⟶ K') (g : L ⟶ L'), CategoryTheory.CategoryStruct.comp (CategoryTheory.MonoidalCategoryStruct.tensorHom (chainComplexMap f R) (chainComplexMap g S)) (ψ K' L') = CategoryTheory.CategoryStruct.comp (ψ K L) (CategoryTheory.MonoidalCategoryStruct.tensorHom (chainComplexMap f R') (chainComplexMap g S'))) (h₀ : ∀ (K L : SSet), (φ K L).f 0 = (ψ K L).f 0) {K K' L L' : SSet} (f : K ⟶ K') (g : L ⟶ L') (i j : ℕ) {Z : C} (h : (CategoryTheory.MonoidalCategoryStruct.tensorObj (K'.chainComplex R') (L'.chainComplex S')).X j ⟶ Z) :

          The homotopy of SSet.tensorChainComplexHomotopy is natural in both simplicial sets.

          @[simp]

          In degree zero, the shuffle map followed by the Alexander–Whitney map is the identity: both maps send the summand of a pair of vertices (x, y) to the summand of the vertex (x, y) and back.

          The Eilenberg–Zilber homotopy AW ∘ shuffle ≃ id: the shuffle map C(K; R) ⊗ C(L; S) ⟶ C(K × L; R ⊗ S) followed by the Alexander–Whitney map is chain homotopic to the identity of C(K; R) ⊗ C(L; S). The homotopy is the one given by acyclic models, SSet.tensorChainComplexHomotopy, and so is natural in K and L.

          Equations
          • One or more equations did not get rendered due to their size.
          Instances For

            The Eilenberg–Zilber theorem: the Alexander–Whitney map C(K × L; R ⊗ S) ⟶ C(K; R) ⊗ C(L; S) is a chain homotopy equivalence, with homotopy inverse the shuffle map.

            Equations
            • One or more equations did not get rendered due to their size.
            Instances For