LeanPool.WhiteheadTheorem.CWComplex.Basic #
Imported Lean Pool material for LeanPool.WhiteheadTheorem.CWComplex.Basic.
CW-complexes #
This file defines (relative) CW-complexes.
Main definitions #
RelativeCWComplex: A relative CW-complex is the colimit of an expanding sequence of subspacessk i(called the $(i-1)$-skeleton) fori ≥ 0, wheresk 0(i.e., the $(-1)$-skeleton) is an arbitrary topological space, and eachsk (n + 1)(i.e., the $n$-skeleton) is obtained fromsk n(i.e., the $(n-1)$-skeleton) by attachingn-disks.CWComplex: A CW-complex is a relative CW-complex whosesk 0(i.e., $(-1)$-skeleton) is empty.
References #
- [R. Fritsch and R. Piccinini, Cellular Structures in Topology][fritsch-piccinini1990]
- The definition of CW-complexes follows David Wärn's suggestion on Zulip.
A type witnessing that X' is obtained from X by attaching generalized cells f : S ⟶ D
- cells : Type u
The index type over the generalized cells
An attaching map for each generalized cell
- isoPushout : X' ≅ CategoryTheory.Limits.pushout (CategoryTheory.Limits.Sigma.desc self.attachMaps) (CategoryTheory.Limits.Sigma.map fun (x : self.cells) => f)
Instances For
A type witnessing that X' is obtained from X by attaching (n + 1)-disks
Equations
Instances For
A relative CW-complex consists of an expanding sequence of subspaces sk i (called the
$(i-1)$-skeleton) for i ≥ 0, where sk 0 (i.e., the $(-1)$-skeleton) is an arbitrary topological
space, and each sk (n + 1) (i.e., the n-skeleton) is obtained from sk n (i.e., the
$(n-1)$-skeleton) by attaching n-disks.
The skeletons. Note:
sk iis usually called the $(i-1)$-skeleton in the math literature.- attachCells (n : ℕ) : AttachCells n (self.sk n) (self.sk (n + 1))
Instances For
The inclusion map from X to X', given that X' is obtained from X by attaching
(n + 1)-disks
Equations
- One or more equations did not get rendered due to their size.
Instances For
The top side of the pushout square
Equations
Instances For
The left side of the pushout square
Equations
- att.sigmaDiskBoundaryIncl = CategoryTheory.Limits.Sigma.map fun (x : att.cells) => TopCat.diskBoundaryIncl n
Instances For
The right side of the pushout square
(TODO: after updating mathlib on 2025-03-08,
using the abbreviation att.sigmaDiskBoundaryIncl results in type mismatch,
which seems to be a universe level issue.
So the abbreviation is temporarily replaced with the full definition.)
Equations
- att.pushoutInl = CategoryTheory.Limits.pushout.inl att.sigmaAttachMaps (CategoryTheory.Limits.Sigma.map fun (x : att.cells) => TopCat.diskBoundaryIncl n)
Instances For
The bottom side of the pushout square
Equations
- att.pushoutInr = CategoryTheory.Limits.pushout.inr att.sigmaAttachMaps (CategoryTheory.Limits.Sigma.map fun (x : att.cells) => TopCat.diskBoundaryIncl n)
Instances For
The pushout square is a pushout.
The inclusion map from sk n (i.e., the $(n-1)$-skeleton) to sk (n + 1) (i.e., the
$n$-skeleton) of a relative CW-complex
Equations
- X.skInclSucc n = (X.attachCells n).incl
Instances For
The inclusion map from sk n (i.e., the $(n-1)$-skeleton) to sk m (i.e., the
$(m-1)$-skeleton) of a relative CW-complex
Equations
- X.skInclToSk hnm = (CategoryTheory.Functor.ofSequence X.skInclSucc).map (CategoryTheory.homOfLE hnm)
Instances For
The topology on a relative CW-complex
Equations
Instances For
Equations
- RelCWComplex.instCoeTopCat = { coe := fun (X : RelCWComplex) => X.toTopCat }
Equations
- att.pushoutInl = CategoryTheory.Limits.pushout.inl (CategoryTheory.Limits.Sigma.desc att.attachMaps) (CategoryTheory.Limits.Sigma.map fun (x : att.cells) => f)
Instances For
Equations
- att.pushoutInr = CategoryTheory.Limits.pushout.inr (CategoryTheory.Limits.Sigma.desc att.attachMaps) (CategoryTheory.Limits.Sigma.map fun (x : att.cells) => f)
Instances For
S --> ∐ S
| |
f |
↓ ↓
D --> ∐ D
S --> ∐ S
| |
f |
↓ ↓
D --> ∐ D
S --> ∐ S --> X
| | |
f | |
↓ ↓ ↓ ≅
D --> ∐ D --> ⬝ ------> X'
S --> ∐ S --> X
| | |
f | |
↓ ↓ ↓ ≅
D --> ∐ D --> ⬝ ------> X'
S ----------> X
| |
f |
↓ ↓ ≅
D --> ∐ D --> ⬝ ------> X'
S ----------> X
| |
f |
↓ ↓ ≅
D --> ∐ D --> ⬝ ------> X'