Documentation

Mathlib.AlgebraicTopology.SimplicialSet.Skeleton

The skeleton of a simplicial set #

In this file, we define the skeleton X.skeleton : ℕ →o X.Subcomplex of a simplicial set X. For any n : ℕ, X.skeleton n is the subcomplex of X that is generated by (non-degenerate) simplices of dimension < n.

If i : X ⟶ Y is a monomorphism, we define skeletonOfMono i : ℕ →o Y.Subcomplex so that skeletonOfMono i n = Subcomplex.range i ⊔ Y.skeleton n. We show that this filtration is part of a relative cell complex structure for i, with basic cells given by boundary inclusions ∂Δ[d] ⟶ Δ[d] for all nondegenerate d-simplices of Y which do not belong to the range of i.

TODO #

X.skeleton n is the subcomplex of X generated by (non-degenerate) simplices of dimension < n.

Equations
Instances For
    theorem SSet.mem_skeleton (X : SSet) {i : } (x : X.obj (Opposite.op { len := i })) {n : } (hi : i < n := by lia) :
    x (X.skeleton n).obj (Opposite.op { len := i })
    theorem SSet.skeleton_obj_eq_top (X : SSet) {d n : } (h : d < n) :
    (X.skeleton n).obj (Opposite.op { len := d }) =
    theorem SSet.ofSimplex_le_skeleton (X : SSet) {i : } (x : X.obj (Opposite.op { len := i })) {n : } (hi : i < n) :
    theorem SSet.mem_skeleton_obj_iff_of_nonDegenerate (X : SSet) {d : } (x : (X.nonDegenerate d)) (n : ) :
    x (X.skeleton n).obj (Opposite.op { len := d }) d < n
    @[simp]
    theorem SSet.skeleton_zero (X : SSet) :
    theorem SSet.iSup_skeleton (X : SSet) :
    ⨆ (n : ), X.skeleton n =
    theorem SSet.skeleton_succ (X : SSet) (n : ) :
    X.skeleton (n + 1) = X.skeleton n⨆ (x : (X.nonDegenerate n)), Subcomplex.ofSimplex x
    def SSet.skeletonOfMono {X Y : SSet} (i : X Y) :

    The skeleton of a monomorphism i : X ⟶ Y of simplicial sets. It sends n : ℕ to Subcomplex.range i ⊔ Y.skeleton n. See SSet.relativeCellComplexOfMono for the main result regarding this definition. (Even though [Mono i] is technically not required in this definition, the intended use of this definition and the corresponding API is when [Mono i] holds.)

    Equations
    Instances For
      theorem SSet.skeleton_le_skeletonOfMono {X Y : SSet} (i : X Y) (n : ) :
      @[simp]
      theorem SSet.iSup_skeletonOfMono {X Y : SSet} (i : X Y) :
      ⨆ (n : ), (skeletonOfMono i) n =
      theorem SSet.mem_skeletonOfMono_obj_iff_of_nonDegenerate {X Y : SSet} (i : X Y) {d : } (x : (Y.nonDegenerate d)) (n : ) :
      theorem SSet.skeletonOfMono_obj_eq_top {X Y : SSet} (i : X Y) {d n : } (h : d < n) :
      ((skeletonOfMono i) n).obj (Opposite.op { len := d }) =
      theorem SSet.skeletonOfMono_succ {X Y : SSet} (i : X Y) (n : ) :
      (skeletonOfMono i) (n + 1) = (skeletonOfMono i) n⨆ (x : (Y.nonDegenerate n)), ⨆ (_ : x(Subcomplex.range i).obj (Opposite.op { len := n })), Subcomplex.ofSimplex x

      The main next technical result is that if i : X ⟶ Y is a monomorphism of simplicial sets and d : ℕ, there is a pushout square:

                                      t i d
      ∐ fun (c : Cell i d) ↦ ∂Δ[d] ----------> skeletonOfMono i d
                     |                                   |
               l i d |                                   | r i d
                     v                b i d              v
      ∐ fun (c : Cell i d) ↦ Δ[d]  ----------> skeletonOfMono i (d + 1)
      

      The index type Cell i d identifies to the type of nondegenerate d-simplices of Y not in the range of i.

      structure SSet.relativeCellComplexOfMono.Cell {X Y : SSet} (i : X Y) (d : ) :

      If i : X ⟶ Y is a monomorphism of simplicial sets and d : ℕ, this is the type of nondegenerate d-simplices of Y which do not belong to the range of i.

      Instances For
        theorem SSet.relativeCellComplexOfMono.Cell.ext_iff {X Y : SSet} {i : X Y} {d : } {x y : Cell i d} :
        theorem SSet.relativeCellComplexOfMono.Cell.ext {X Y : SSet} {i : X Y} {d : } {x y : Cell i d} (simplex : x.simplex = y.simplex) :
        x = y
        @[reducible, inline]
        noncomputable abbrev SSet.relativeCellComplexOfMono.sigmaStdSimplex {X Y : SSet} (i : X Y) (d : ) :

        If i : X ⟶ Y is a monomorphism of simplicial sets and d : ℕ, this is a coproduct of copies of Δ[d] indexed by the nondegenerate d-simplices of Y not in the range of i.

        Equations
        Instances For
          @[reducible, inline]
          noncomputable abbrev SSet.relativeCellComplexOfMono.sigmaBoundary {X Y : SSet} (i : X Y) (d : ) :

          If i : X ⟶ Y is a monomorphism of simplicial sets and d : ℕ, this is a coproduct of copies of ∂Δ[d] indexed by the nondegenerate d-simplices of Y not in the range of i.

          Equations
          Instances For
            @[reducible, inline]
            noncomputable abbrev SSet.relativeCellComplexOfMono.Cell.ιSigmaStdSimplex {X Y : SSet} {i : X Y} {d : } (c : Cell i d) :

            Given a monomorphism i : X ⟶ Y of simplicial sets and a nondegenerate d-simplex of Y not in the range of i, this is the inclusion of the corresponding summand of the coproduct sigmaStdSimplex i d.

            Equations
            Instances For
              @[reducible, inline]
              noncomputable abbrev SSet.relativeCellComplexOfMono.Cell.ιSigmaBoundary {X Y : SSet} {i : X Y} {d : } (c : Cell i d) :

              Given a monomorphism i : X ⟶ Y of simplicial sets and a nondegenerate d-simplex of Y not in the range of i, this is the inclusion of the corresponding summand of the coproduct sigmaBoundary i d.

              Equations
              Instances For
                @[reducible, inline]
                abbrev SSet.relativeCellComplexOfMono.Cell.map {X Y : SSet} {i : X Y} {d : } (c : Cell i d) :
                stdSimplex.obj { len := d } Y

                Given a monomorphism i : X ⟶ Y of simplicial sets and a nondegenerate d-simplex of Y not in the range of i, this is the corresponding morphism Δ[d] ⟶ Y.

                Equations
                Instances For
                  @[simp]
                  theorem SSet.relativeCellComplexOfMono.Cell.preimage_map {X Y : SSet} {i : X Y} {d : } (c : Cell i d) :
                  theorem SSet.relativeCellComplexOfMono.ιSigmaStdSimplex_jointly_surjective {X Y : SSet} {i : X Y} {d n : } (a : (sigmaStdSimplex i d).obj (Opposite.op { len := n })) :
                  ∃ (c : Cell i d) (x : (stdSimplex.obj { len := d }).obj (Opposite.op { len := n })), (CategoryTheory.ConcreteCategory.hom (c.ιSigmaStdSimplex.app (Opposite.op { len := n }))) x = a
                  @[reducible, inline]
                  noncomputable abbrev SSet.relativeCellComplexOfMono.l {X Y : SSet} (i : X Y) (d : ) :

                  the left morphism of the pushout square isPushout i d: this is the coproduct of copies of the boundary inclusion ∂Δ[d] ⟶ Δ[d] indexed by the nondegenerate d-simplices of Y not in the range of i.

                  Equations
                  Instances For
                    @[reducible, inline]
                    noncomputable abbrev SSet.relativeCellComplexOfMono.t {X Y : SSet} (i : X Y) (d : ) :

                    the top morphism of the pushout square isPushout i d.

                    Equations
                    • One or more equations did not get rendered due to their size.
                    Instances For
                      @[reducible, inline]
                      noncomputable abbrev SSet.relativeCellComplexOfMono.b {X Y : SSet} (i : X Y) (d : ) :

                      the bottom morphism of the pushout square isPushout i d.

                      Equations
                      Instances For
                        @[reducible, inline]
                        abbrev SSet.relativeCellComplexOfMono.r {X Y : SSet} (i : X Y) (d : ) :

                        the right morphism of the pushout square isPushout i d.

                        Equations
                        Instances For
                          theorem SSet.relativeCellComplexOfMono.isPullback {X Y : SSet} (i : X Y) (d : ) :
                          CategoryTheory.IsPullback (t i d) (l i d) (r i d) (b i d)
                          theorem SSet.relativeCellComplexOfMono.isPushout_aux {X Y : SSet} {i : X Y} {d n : } (y : (sigmaStdSimplex i d).obj (Opposite.op { len := n })) (hy : ySet.range (CategoryTheory.ConcreteCategory.hom ((l i d).app (Opposite.op { len := n })))) :
                          ∃ (c : Cell i d) (f : { len := n } { len := d }) (_ : CategoryTheory.Epi f), (CategoryTheory.ConcreteCategory.hom (c.ιSigmaStdSimplex.app (Opposite.op { len := n }))) (stdSimplex.objEquiv.symm f) = y
                          theorem SSet.relativeCellComplexOfMono.isPushout {X Y : SSet} (i : X Y) (d : ) :
                          CategoryTheory.IsPushout (t i d) (l i d) (r i d) (b i d)
                          noncomputable def SSet.relativeCellComplexOfMono {X Y : SSet} (i : X Y) [CategoryTheory.Mono i] :

                          If i : X ⟶ Y is a monomorphism of simplicial sets, then it is a relative cell complex with basic cells given by boundary inclusions ∂Δ[d] ⟶ Δ[d], one for each nondegenerate d-simplex of Y not in the range of X.

                          Equations
                          • One or more equations did not get rendered due to their size.
                          Instances For
                            @[reducible, inline]
                            noncomputable abbrev SSet.relativeCellComplex (X : SSet) :

                            If X is a simplicial set, then the inclusion (⊥ : SSet) ⟶ X of the empty subcomplex of X is a relative cell complex with basic cells given by boundary inclusions ∂Δ[d] ⟶ Δ[d], one for each nondegenerate d-simplex of X.

                            Equations
                            Instances For

                              The bijection between the cells of relativeCellComplex X and the type X.N of nondegenerate simplices of the simplicial set X.

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