Documentation

Mathlib.AlgebraicTopology.SimplicialSet.HomotopyCat

The homotopy category of a simplicial set #

The homotopy category of a simplicial set is defined as a quotient of the free category on its underlying reflexive quiver (equivalently its one truncation). The quotient imposes an additional hom relation on this free category, asserting that f ≫ g = h whenever f, g, and h are respectively the 2nd, 0th, and 1st faces of a 2-simplex.

In fact, the associated functor

SSet.hoFunctor : SSet.{u} ⥤ Cat.{u, u} := SSet.truncation 2 ⋙ SSet.hoFunctor₂

is defined by first restricting from simplicial sets to 2-truncated simplicial sets (throwing away the data that is not used for the construction of the homotopy category) and then composing with an analogously defined SSet.hoFunctor₂ : SSet.Truncated.{u} 2 ⥤ Cat.{u,u} implemented relative to the syntax of the 2-truncated simplex category.

In the file Mathlib/AlgebraicTopology/SimplicialSet/NerveAdjunction.lean we show the functor SSet.hoFunctor to be left adjoint to the nerve by providing an analogous decomposition of the nerve functor, made by possible by the fact that nerves of categories are 2-coskeletal, and then composing a pair of adjunctions, which factor through the category of 2-truncated simplicial sets.

A 2-truncated simplicial set S has an underlying refl quiver with S _⦋0⦌₂ as its underlying type.

Equations
    Instances For
      @[reducible, inline]
      abbrev SSet.δ₂ {n : } (i : Fin (n + 2)) (hn : (SimplexCategory.mk n).len 2 := by decide) (hn' : (SimplexCategory.mk (n + 1)).len 2 := by decide) :
      { obj := SimplexCategory.mk n, property := hn } { obj := SimplexCategory.mk (n + 1), property := hn' }

      Abbreviations for face maps in the 2-truncated simplex category.

      Equations
        Instances For
          @[reducible, inline]
          abbrev SSet.σ₂ {n : } (i : Fin (n + 1)) (hn : (SimplexCategory.mk (n + 1)).len 2 := by decide) (hn' : (SimplexCategory.mk n).len 2 := by decide) :
          { obj := SimplexCategory.mk (n + 1), property := hn } { obj := SimplexCategory.mk n, property := hn' }

          Abbreviations for degeneracy maps in the 2-truncated simplex category.

          Equations
            Instances For
              @[simp]
              theorem SSet.δ₂_zero_comp_σ₂_zero {n : } (hn : (SimplexCategory.mk n).len 2 := by decide) (hn' : (SimplexCategory.mk (n + 1)).len 2 := by decide) :
              @[simp]
              theorem SSet.δ₂_zero_comp_σ₂_zero_assoc {n : } (hn : (SimplexCategory.mk n).len 2 := by decide) (hn' : (SimplexCategory.mk (n + 1)).len 2 := by decide) {Z : CategoryTheory.ObjectProperty.FullSubcategory fun (a : SimplexCategory) => a.len 2} (h : { obj := SimplexCategory.mk n, property := hn } Z) :
              @[simp]
              theorem SSet.δ₂_one_comp_σ₂_zero {n : } (hn : (SimplexCategory.mk n).len 2 := by decide) (hn' : (SimplexCategory.mk (n + 1)).len 2 := by decide) :
              @[simp]
              theorem SSet.δ₂_one_comp_σ₂_zero_assoc {n : } (hn : (SimplexCategory.mk n).len 2 := by decide) (hn' : (SimplexCategory.mk (n + 1)).len 2 := by decide) {Z : CategoryTheory.ObjectProperty.FullSubcategory fun (a : SimplexCategory) => a.len 2} (h : { obj := SimplexCategory.mk n, property := hn } Z) :
              structure SSet.OneTruncation₂.Hom {S : Truncated 2} (X Y : OneTruncation₂ S) :
              Type u_1

              The hom-types of the refl quiver underlying a simplicial set S are types of edges in S _⦋1⦌₂ together with source and target equalities.

              Instances For
                theorem SSet.OneTruncation₂.Hom.ext_iff {S : Truncated 2} {X Y : OneTruncation₂ S} {x y : X.Hom Y} :
                x = y x.edge = y.edge
                theorem SSet.OneTruncation₂.Hom.ext {S : Truncated 2} {X Y : OneTruncation₂ S} {x y : X.Hom Y} (edge : x.edge = y.edge) :
                x = y

                A 2-truncated simplicial set S has an underlying refl quiver SSet.OneTruncation₂ S.

                Equations

                  The functor that carries a 2-truncated simplicial set to its underlying refl quiver.

                  Equations
                    Instances For
                      @[simp]
                      theorem SSet.oneTruncation₂_map_map_edge {S T : Truncated 2} (F : S T) {X✝ Y✝ : (CategoryTheory.ReflQuiv.of (OneTruncation₂ S))} (f : X✝ Y✝) :
                      @[simp]
                      theorem SSet.oneTruncation₂_map_obj {S T : Truncated 2} (F : S T) (a✝ : S.obj (Opposite.op { obj := SimplexCategory.mk 0, property := OneTruncation₂._proof_1 })) :
                      theorem SSet.OneTruncation₂.hom_ext {S : Truncated 2} {x y : OneTruncation₂ S} {f g : x y} :
                      f.edge = g.edgef = g
                      theorem SSet.OneTruncation₂.hom_ext_iff {S : Truncated 2} {x y : OneTruncation₂ S} {f g : x y} :
                      f = g f.edge = g.edge
                      @[simp]
                      theorem SSet.OneTruncation₂.homOfEq_edge {X : Truncated 2} {x₁ y₁ x₂ y₂ : OneTruncation₂ X} (f : x₁ y₁) (hx : x₁ = x₂) (hy : y₁ = y₂) :

                      An equivalence between the type of objects underlying a category and the type of 0-simplices in the 2-truncated nerve.

                      Equations
                        Instances For

                          The refl quiver underlying a nerve is isomorphic to the refl quiver underlying the category.

                          Equations
                            Instances For

                              The refl quiver underlying a nerve is naturally isomorphic to the refl quiver underlying the category.

                              Equations
                                Instances For
                                  def SSet.Truncated.ι0₂ :
                                  { obj := SimplexCategory.mk 0, property := } { obj := SimplexCategory.mk 2, property := }

                                  The map that picks up the initial vertex of a 2-simplex, as a morphism in the 2-truncated simplex category.

                                  Equations
                                    Instances For
                                      def SSet.Truncated.ι1₂ :
                                      { obj := SimplexCategory.mk 0, property := } { obj := SimplexCategory.mk 2, property := }

                                      The map that picks up the middle vertex of a 2-simplex, as a morphism in the 2-truncated simplex category.

                                      Equations
                                        Instances For
                                          def SSet.Truncated.ι2₂ :
                                          { obj := SimplexCategory.mk 0, property := } { obj := SimplexCategory.mk 2, property := }

                                          The map that picks up the final vertex of a 2-simplex, as a morphism in the 2-truncated simplex category.

                                          Equations
                                            Instances For
                                              def SSet.Truncated.ev0₂ {V : Truncated 2} (φ : V.obj (Opposite.op { obj := SimplexCategory.mk 2, property := })) :

                                              The initial vertex of a 2-simplex in a 2-truncated simplicial set.

                                              Equations
                                                Instances For
                                                  def SSet.Truncated.ev1₂ {V : Truncated 2} (φ : V.obj (Opposite.op { obj := SimplexCategory.mk 2, property := })) :

                                                  The middle vertex of a 2-simplex in a 2-truncated simplicial set.

                                                  Equations
                                                    Instances For
                                                      def SSet.Truncated.ev2₂ {V : Truncated 2} (φ : V.obj (Opposite.op { obj := SimplexCategory.mk 2, property := })) :

                                                      The final vertex of a 2-simplex in a 2-truncated simplicial set.

                                                      Equations
                                                        Instances For
                                                          def SSet.Truncated.δ0₂ :
                                                          { obj := SimplexCategory.mk 1, property := } { obj := SimplexCategory.mk 2, property := }

                                                          The 0th face of a 2-simplex, as a morphism in the 2-truncated simplex category.

                                                          Equations
                                                            Instances For
                                                              def SSet.Truncated.δ1₂ :
                                                              { obj := SimplexCategory.mk 1, property := } { obj := SimplexCategory.mk 2, property := }

                                                              The 1st face of a 2-simplex, as a morphism in the 2-truncated simplex category.

                                                              Equations
                                                                Instances For
                                                                  def SSet.Truncated.δ2₂ :
                                                                  { obj := SimplexCategory.mk 1, property := } { obj := SimplexCategory.mk 2, property := }

                                                                  The 2nd face of a 2-simplex, as a morphism in the 2-truncated simplex category.

                                                                  Equations
                                                                    Instances For
                                                                      def SSet.Truncated.ev12₂ {V : Truncated 2} (φ : V.obj (Opposite.op { obj := SimplexCategory.mk 2, property := })) :

                                                                      The arrow in the ReflQuiver OneTruncation₂ V of a 2-truncated simplicial set arising from the 0th face of a 2-simplex.

                                                                      Equations
                                                                        Instances For
                                                                          def SSet.Truncated.ev02₂ {V : Truncated 2} (φ : V.obj (Opposite.op { obj := SimplexCategory.mk 2, property := })) :

                                                                          The arrow in the ReflQuiver OneTruncation₂ V of a 2-truncated simplicial set arising from the 1st face of a 2-simplex.

                                                                          Equations
                                                                            Instances For
                                                                              def SSet.Truncated.ev01₂ {V : Truncated 2} (φ : V.obj (Opposite.op { obj := SimplexCategory.mk 2, property := })) :

                                                                              The arrow in the ReflQuiver OneTruncation₂ V of a 2-truncated simplicial set arising from the 2nd face of a 2-simplex.

                                                                              Equations
                                                                                Instances For

                                                                                  The 2-simplices in a 2-truncated simplicial set V generate a hom relation on the free category on the underlying refl quiver of V.

                                                                                  Instances For
                                                                                    theorem SSet.Truncated.HoRel₂.mk' {V : Truncated 2} (φ : V.obj (Opposite.op { obj := SimplexCategory.mk 2, property := })) {X₀ X₁ X₂ : OneTruncation₂ V} (f₀₁ : X₀ X₁) (f₁₂ : X₁ X₂) (f₀₂ : X₀ X₂) (h₀₁ : f₀₁.edge = V.map (δ₂ 2 ).op φ) (h₁₂ : f₁₂.edge = V.map (δ₂ 0 ).op φ) (h₀₂ : f₀₂.edge = V.map (δ₂ 1 ).op φ) :

                                                                                    A 2-simplex whose faces are identified with certain arrows in OneTruncation₂ V defines a term of type HoRel₂ between those arrows.

                                                                                    The type underlying the homotopy category of a 2-truncated simplicial set V.

                                                                                    Equations
                                                                                      Instances For

                                                                                        A canonical functor from the free category on the refl quiver underlying a 2-truncated simplicial set V to its homotopy category.

                                                                                        Equations
                                                                                          Instances For

                                                                                            By Quotient.lift_unique' (not Quotient.lift) we have that quotientFunctor V is an epimorphism.

                                                                                            A map of 2-truncated simplicial sets induces a functor between homotopy categories.

                                                                                            Equations
                                                                                              Instances For

                                                                                                The functor that takes a 2-truncated simplicial set to its homotopy category.

                                                                                                Equations
                                                                                                  Instances For

                                                                                                    The functor that takes a simplicial set to its homotopy category by passing through the 2-truncation.

                                                                                                    Equations
                                                                                                      Instances For

                                                                                                        Since ⦋0⦌ : SimplexCategory is terminal, Δ[0] has a unique point and thus OneTruncation₂ ((truncation 2).obj Δ[0]) has a unique inhabitant.

                                                                                                        Equations

                                                                                                          Since ⦋0⦌ : SimplexCategory is terminal, Δ[0] has a unique edge and thus the homs of OneTruncation₂ ((truncation 2).obj Δ[0]) have unique inhabitants.

                                                                                                          Equations

                                                                                                            The category hoFunctor.obj (Δ[0]) is terminal.

                                                                                                            Equations
                                                                                                              Instances For

                                                                                                                The homotopy category functor preserves generic terminal objects.

                                                                                                                Equations
                                                                                                                  Instances For