Necessity of semilocal simple connectivity: a space with a simply-connected covering space is semilocally simply-connected
ProvedHatcher.isSemilocallySimplyConnected_of_coverThroughout, a covering space of is a space with a map such that each has an open neighborhood whose preimage is a disjoint union of open sets each mapped homeomorphically onto by (Hatcher, p. 56; Mathlib's IsCoveringMap). Given basepoints , , we write for the induced homomorphism (Hatcher.coverHom) and for its image (Hatcher.coverSubgroup).
Hatcher, p. 63. A necessary condition for to have a simply-connected covering space is that be semilocally simply-connected: if is a covering space with simply-connected and surjective, then each point has a neighborhood such that every loop at in is null-homotopic in .
Hatcher's argument: a loop in an evenly covered lifts to a loop in a sheet, which is null-homotopic in ; composing the null-homotopy with gives a null-homotopy in .
Formalization Note Surjectivity of is assumed explicitly because is not assumed connected here; for connected it is automatic from the nonemptiness of . Simple connectivity is Mathlib's SimplyConnectedSpace (path-connected with trivial fundamental group).
import Definitions.Def_Hatcher_Covering import Mathlib open Hatcher unitInterval
namespace Hatcher
theorem isSemilocallySimplyConnected_of_cover {E X : Type*} [TopologicalSpace E]
[TopologicalSpace X] [SimplyConnectedSpace E] {p : E → X} (hp : IsCoveringMap p)
(hsurj : Function.Surjective p) : IsSemilocallySimplyConnected X := by sorry
end HatcherRead-back
What the Lean code literally says, in plain math · claude-fable-5-1
Read-back of Hatcher.isSemilocallySimplyConnected_of_cover.
theorem isSemilocallySimplyConnected_of_cover {E X : Type*} [TopologicalSpace E]
[TopologicalSpace X] [SimplyConnectedSpace E] {p : E → X} (hp : IsCoveringMap p)
(hsurj : Function.Surjective p) : IsSemilocallySimplyConnected X
Setting and binders
E X : Type*— two types, independent universes.[TopologicalSpace E] [TopologicalSpace X]— arbitrary topologies. No connectedness, path-connectedness, or local path-connectedness is assumed on .[SimplyConnectedSpace E]— Mathlib's class with single fieldequiv_unit : Nonempty (FundamentalGroupoid E ≌ Discrete Unit): the fundamental groupoid of is equivalent (as a category) to the one-object, one-morphism category. Mathlib proves this is equivalent to: is nonempty and for all the set of homotopy-rel-endpoints classes of paths from to is a singleton (simply_connected_iff_unique_homotopic), equivalently is path-connected and any two paths with the same endpoints are homotopic rel endpoints (simply_connected_iff_paths_homotopic'). In particularSimplyConnectedSpace Eprovides an instancePathConnectedSpace E(so ) and every loop in is null-homotopic.{p : E → X},hp : IsCoveringMap p— Mathlib covering map: for every , the fibre is discrete and there is an open with open and a homeomorphism commuting with the projection to . Mathlib does not build surjectivity intoIsCoveringMap— fibres may be empty.hsurj : Function.Surjective p—∀ x : X, ∃ e : E, p e = x. This is the explicit surjectivity that Mathlib's covering-map notion lacks.
The conclusion uses the bundle's definition:
-
IsSemilocallySimplyConnected X : Prop :=∀ x : X, ∃ U ∈ nhds x, ∀ γ : Path x x, (∀ t, γ t ∈ U) → γ.Homotopic (Path.refl x).Unpacked:
U ∈ nhds x— is a neighbourhood of in Mathlib's sense: there is an open with . itself need not be open.γ : Path x x— a continuous map (unitInterval) with , i.e. a loop based at .∀ t, γ t ∈ U— the loop lies entirely inside .γ.Homotopic (Path.refl x)—Path.Homotopic p₀ p₁ := Nonempty (p₀.Homotopy p₁), andPath.HomotopyisContinuousMap.HomotopyRel _ _ {0, 1}: a homotopy in (not required to stay in ) fixing both endpoints, from to the constant loop at .
So
IsSemilocallySimplyConnected Xsays: every has a neighbourhood such that every loop at contained in is null-homotopic (rel basepoint) in ; equivalently, the inclusion-induced map is trivial.
Hypotheses
- is simply connected (hence nonempty and path-connected, with trivial at every point).
- is a covering map (Mathlib sense).
- is surjective.
Conclusion
is semilocally simply connected in the bundle's sense:
Remarks
- Match with Hatcher. Hatcher (§1.3, discussion before Prop. 1.36) states: "if has a simply-connected covering space then is semilocally simply-connected", with his definition "each point has a neighborhood such that the inclusion-induced map is trivial." The bundle's
IsSemilocallySimplyConnectedis literally this (loops at inside are trivial in ). Some texts instead require trivial for all ; the Lean definition only asks it at the given basepoint , matching Hatcher's wording rather than that stronger variant. - Why
hsurjis present. In Hatcher, covering spaces are surjective by convention (or implicitly via connectedness). In Mathlib a covering map can have empty fibres, and over a point with empty fibre the conclusion could fail (there is no lift to exploit). Hence the explicit surjectivity hypothesis is a genuine, needed hypothesis and not a stylistic addition. It also forces (since ); conversely, if were empty, would be empty too, contradictingSimplyConnectedSpace E, so the empty case does not arise. - No connectedness of is required, and the statement is still true as stated. For take the evenly covered open and a point (exists by
hsurj); a loop in at lifts to the slice as a loop at ; is null-homotopic since is simply connected; pushing the homotopy down by null-homotopes . So the statement is neither vacuous nor over-hypothesised; it is somewhat more general than the textbook context (which has path-connected and locally path-connected). - The neighbourhood is not required to be open, but since
nhds-membership implies contains an open neighbourhood, and shrinking only weakens the loop condition, this is equivalent to the open version. - Homotopies live in , not , exactly as in the textbook notion ("trivial in "). If the homotopy were required inside this would be "locally simply connected", a strictly stronger property; that is not what is stated.
- Nothing about local path-connectedness is asserted or assumed; the conclusion is only the semilocal simple-connectivity property.
- Universes. and in independent universes; the conclusion is a
Prop, so no universe constraint. - Vacuity check.
SimplyConnectedSpace Eis satisfiable (e.g. ), and is a surjective covering; the conclusion for is a true, non-trivial statement. Nothing collapses.
Confirmed by the mission captain (proposal self-audit).