Product of homotopies #
In this file, we introduce definitions for the product of homotopies. We show that the products of relative homotopies are still relative homotopies. Finally, we specialize to the case of path homotopies, and provide the definition for the product of path classes. We show various lemmas associated with these products, such as the fact that path products commute with path composition, and that projection is the inverse of products.
Definitions #
General homotopies #
ContinuousMap.Homotopy.pi homotopies
: Let f and g be a family of functions indexed on I, such that for each i ∈ I, fᵢ and gᵢ are maps from A to Xᵢ. Lethomotopies
be a family of homotopies from fᵢ to gᵢ for each i. ThenHomotopy.pi homotopies
is the canonical homotopy from ∏ f to ∏ g, where ∏ f is the product map from A to Πi, Xᵢ, and similarly for ∏ g.ContinuousMap.HomotopyRel.pi homotopies
: Same asContinuousMap.Homotopy.pi
, but all homotopies are done relative to some set S ⊆ A.ContinuousMap.Homotopy.prod F G
is the product of homotopies F and G, where F is a homotopy between f₀ and f₁, G is a homotopy between g₀ and g₁. The result F × G is a homotopy between (f₀ × g₀) and (f₁ × g₁). Again, all homotopies are done relative to S.ContinuousMap.HomotopyRel.prod F G
: Same asContinuousMap.Homotopy.prod
, but all homotopies are done relative to some set S ⊆ A.
Path products #
Path.Homotopic.pi
The product of a family of path classes, where a path class is an equivalence class of paths up to path homotopy.Path.Homotopic.prod
The product of two path classes.
The relative product homotopy of homotopies
between functions f
and g
Equations
- ContinuousMap.HomotopyRel.pi homotopies = let __src := ContinuousMap.Homotopy.pi fun (i : I) => (homotopies i).toHomotopy; { toHomotopy := __src, prop' := ⋯ }
Instances For
The product of homotopies F
and G
,
where F
takes f₀
to f₁
and G
takes g₀
to g₁
Equations
- F.prod G = { toFun := fun (t : ↑unitInterval × A) => (F t, G t), continuous_toFun := ⋯, map_zero_left := ⋯, map_one_left := ⋯ }
Instances For
The relative product of homotopies F
and G
,
where F
takes f₀
to f₁
and G
takes g₀
to g₁
Equations
- F.prod G = { toHomotopy := F.prod G.toHomotopy, prop' := ⋯ }
Instances For
The product of a family of path homotopies. This is just a specialization of HomotopyRel
.
Equations
Instances For
The product of a family of path homotopy classes.
Equations
- Path.Homotopic.pi γ = Quotient.map Path.pi ⋯ (Quotient.choice γ)
Instances For
Composition and products commute.
This is Path.trans_pi_eq_pi_trans
descended to path homotopy classes.
Abbreviation for projection onto the ith coordinate.
Equations
- Path.Homotopic.proj i p = p.mapFn { toFun := fun (p : (i : ι) → X i) => p i, continuous_toFun := ⋯ }
Instances For
Lemmas showing projection is the inverse of pi.
The product of homotopies h₁ and h₂.
This is HomotopyRel.prod
specialized for path homotopies.
Equations
Instances For
The product of path classes q₁ and q₂. This is Path.prod
descended to the quotient.
Equations
- Path.Homotopic.prod q₁ q₂ = Quotient.map₂ Path.prod ⋯ q₁ q₂
Instances For
Products commute with path composition.
This is trans_prod_eq_prod_trans
descended to the quotient.
Abbreviation for projection onto the left coordinate of a path class.
Equations
- Path.Homotopic.projLeft p = p.mapFn { toFun := Prod.fst, continuous_toFun := ⋯ }
Instances For
Abbreviation for projection onto the right coordinate of a path class.
Equations
- Path.Homotopic.projRight p = p.mapFn { toFun := Prod.snd, continuous_toFun := ⋯ }
Instances For
Lemmas showing projection is the inverse of product.