Skip to content
This repository was archived by the owner on Jul 24, 2024. It is now read-only.

Commit 729d23f

Browse files
committed
doc(topology/homotopy/H-spaces): add doc about H-spaces. (#19075)
Added doc about `H-spaces` in topology/homotopy/H-spaces.
1 parent a841089 commit 729d23f

1 file changed

Lines changed: 45 additions & 11 deletions

File tree

src/topology/homotopy/H_spaces.lean

Lines changed: 45 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -10,9 +10,34 @@ import topology.homotopy.path
1010
# H-spaces
1111
1212
This file defines H-spaces mainly following the approach proposed by Serre in his paper
13-
*Homologie singulière des espaces fibrés*. The main results are the H-space `instance` on every
14-
topological group, and the H-space structure on the loop space (based at `x : X` of any topological
15-
space `X`, for which we introduce the notation `Ω_[x]`.
13+
*Homologie singulière des espaces fibrés*. The idea beaneath `H-spaces` is that they are topological
14+
spaces with a binary operation `⋀ : X → X → X` that is a homotopic-theoretic weakening of an
15+
operation what would make `X` into a topological monoid. In particular, there exists a "neutral
16+
element" `e : X` such that `λ x, e ⋀ x` and `λ x, x ⋀ e` are homotopic to the identity on `X`, see
17+
[the Wikipedia page of H-spaces](https://en.wikipedia.org/wiki/H-space).
18+
19+
Some notable properties of `H-spaces` are
20+
* Their fundamental group is always abelian (by the same argument for topological groups);
21+
* Their cohomology ring comes equipped with a structure of a Hopf-algebra;
22+
* The loop space based at every `x : X` carries a structure of an `H-spaces`.
23+
24+
## Main Results
25+
26+
* Every topological group `G` is an `H-space` using its operation `* : G → G → G` (this is already
27+
true if `G` has an instance of a `mul_one_class` and `continuous_mul`);
28+
* Given two `H-spaces` `X` and `Y`, their product is again an `H`-space. We show in an example that
29+
starting with two topological groups `G, G'`, the `H`-space structure on `G × G'` is definitionally
30+
equal to the product of `H-space` structures on `G` and `G'`.
31+
* The loop space based at every `x : X` carries a structure of an `H-spaces`.
32+
33+
## To Do
34+
* Prove that for every `normed_add_torsor Z` and every `z : Z`, the operation
35+
`λ x y, midpoint x y` defines a `H-space` structure with `z` as a "neutral element".
36+
* Prove that `S^0`, `S^1`, `S^3` and `S^7` are the unique spheres that are `H-spaces`, where the
37+
first three inherit the structure because they are topological groups (they are Lie groups,
38+
actually), isomorphic to the invertible elements in `ℤ`, in `ℂ` and in the quaternion; and the
39+
fourth from the fact that `S^7` coincides with the octonions of norm 1 (it is not a group, in
40+
particular, only has an instance of `mul_one_class`).
1641
1742
## References
1843
@@ -91,25 +116,34 @@ instance H_space.prod (X : Type u) (Y : Type v) [topological_space X] [topologic
91116

92117
namespace topological_group
93118

94-
@[priority 600, to_additive] instance H_space (G : Type u) [topological_space G] [group G]
95-
[topological_group G] : H_space G :=
119+
/-- The definition `to_H_space` is not an instance because its `@additive` version would
120+
lead to a diamond since a topological field would inherit two `H_space` structures, one from the
121+
`mul_one_class` and one from the `add_zero_class`. In the case of a group, we make
122+
`topological_group.H_space` an instance."-/
123+
@[to_additive "The definition `to_H_space` is not an instance because it comes together with a
124+
multiplicative version which would lead to a diamond since a topological field would inherit two
125+
`H_space` structures, one from the `mul_one_class` and one from the `add_zero_class`. In the case
126+
of an additive group, we make `topological_group.H_space` an instance."]
127+
definition to_H_space (M : Type u) [mul_one_class M] [topological_space M]
128+
[has_continuous_mul M] : H_space M :=
96129
{ Hmul := ⟨function.uncurry has_mul.mul, continuous_mul⟩,
97130
e := 1,
98131
Hmul_e_e := one_mul 1,
99132
e_Hmul := (homotopy_rel.refl _ _).cast rfl (by {ext1, apply one_mul}),
100133
Hmul_e := (homotopy_rel.refl _ _).cast rfl (by {ext1, apply mul_one}) }
101134

135+
@[priority 600, to_additive] instance H_space (G : Type u)
136+
[topological_space G] [group G] [topological_group G] : H_space G := to_H_space G
137+
102138
lemma one_eq_H_space_e {G : Type u} [topological_space G] [group G] [topological_group G] :
103139
(1 : G) = H_space.e := rfl
104140

105-
/-
106-
In the following example we see that the `H-space` structure on the product of two topological
107-
groups is definitionally equally to the product `H-space`-structure of the two groups.
108-
-/
141+
/- In the following example we see that the `H-space` structure on the product of two topological
142+
groups is definitionally equally to the product `H-space`-structure of the two groups.-/
143+
109144
example {G G' : Type u} [topological_space G] [group G] [topological_group G]
110145
[topological_space G'] [group G'] [topological_group G'] :
111-
topological_group.H_space (G × G') = H_space.prod G G' := rfl
112-
146+
to_H_space (G × G') = H_space.prod G G' := rfl
113147

114148
end topological_group
115149

0 commit comments

Comments
 (0)