Based paths #
For a topological space X and a basepoint x₀ : X, this file introduces the space
BasedPath x₀ of continuous maps γ : C(I, X) with γ 0 = x₀, topologized as a subspace of
C(I, X) with the compact-open topology. Its quotient by endpoint-preserving homotopy is the
model TauCeti.UniversalCover x₀ used to construct the universal cover. When X is locally
path-connected and semilocally simply connected, that quotient is simply connected and its endpoint
projection is a covering map whose range is the path component of x₀
(TauCeti/AlgebraicTopology/UniversalCover/Covering.lean); it is then a universal cover of that
path component, and of X when X is path-connected. This file is adapted from
#38292 by Kim Morrison.
The main results concern the path components of endpoint ⁻¹' U. For sufficiently small open
sets U, their images in the universal cover are the sheets over U.
Main definitions #
BasedPath x₀: the space of based paths out ofx₀.BasedPath.deformTerminal: modify a based path near its endpoint by a short path, without moving far in the compact-open topology.BasedPath.initialSegmentFamily: the familyt ↦ γ|_[0, t]of initial segments.
Main statements #
BasedPath.isOpenMap_endpoint: the endpoint mapBasedPath x₀ → Xis open whenXis locally path-connected.BasedPath.joinedIn_preimage_of_append: appending a path insideUstays in the same path component ofendpoint ⁻¹' U.BasedPath.isOpen_pathComponent_preimage: in a semilocally simply connected, locally path-connected space, path components ofendpoint ⁻¹' Uare open for openU.BasedPath.toPath_homotopic_of_joinedIn_pathHomotopyTrivial: based paths with the same endpoint in a common path component ofendpoint ⁻¹' U, forUpath-homotopy-trivial, are homotopic.BasedPath.pathComponentIn_ofPath_eq_of_homotopic: path components ofendpoint ⁻¹' Uare invariant under endpoint-preserving homotopy.
Equations
- BasedPath.instTopologicalSpace = { IsOpen := BasedPath.instTopologicalSpace._aux_1, isOpen_univ := ⋯, isOpen_inter := ⋯, isOpen_sUnion := ⋯ }
Equations
- BasedPath.instFunLikeElemRealUnitInterval = { coe := fun (γ : BasedPath x₀) => ⇑↑γ, coe_injective := ⋯ }
Evaluation BasedPath x₀ × I → X is jointly continuous.
A map into BasedPath x₀ is continuous iff its uncurried form is.
The endpoint of a based path.
Instances For
The endpoint map from based paths to their terminal point is continuous.
Definitional unfolding of endpoint. Not a global simp lemma: it overlaps with
endpoint_refl (and other endpoint_… lemmas) on the simp normal form, so we instead include it
explicitly at each site that wants to pass from the named endpoint γ to the evaluation
γ 1.
The canonical inclusion Path x₀ y → BasedPath x₀: package an ordinary path out of x₀ as a
based path, forgetting y at the type level. The endpoint is recovered as
endpoint (ofPath γ) = y via endpoint_ofPath. The map toPath is a partial inverse:
ofPath γ.toPath = γ (ofPath_toPath_self), and conversely (ofPath γ).toPath is γ with its
right endpoint cast to endpoint (ofPath γ) (toPath_ofPath).
Equations
- BasedPath.ofPath γ = ⟨γ.toContinuousMap, ⋯⟩
Instances For
The constant based path at x₀.
Equations
- BasedPath.refl x₀ = BasedPath.ofPath (Path.refl x₀)
Instances For
Append a path δ at the endpoint of a based path γ, defined as
ofPath (γ.toPath.trans δ): the half s ∈ [0, ½] traverses γ at double speed and the half
s ∈ [½, 1] traverses δ at double speed (Path.trans_apply). The new endpoint is the endpoint
of δ (endpoint_append). This is the move used by joinedIn_preimage_of_append to slide a
based path within a path component of endpoint ⁻¹' U.
Equations
- γ.append δ = BasedPath.ofPath (γ.toPath.trans δ)
Instances For
Deforming the end of a based path #
Replace the end of a based path γ by a path δ out of its endpoint: the result agrees with
γ on [0, a], traverses γ|_[a, 1] on [a, b], and traverses δ on [b, 1]. When a is
close to 1 and the range of δ lies in a small neighborhood of the endpoint, this stays in
a prescribed compact-open neighborhood of γ.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Past time a, the deformed path stays in any set containing γ [a, 1] and the range of
δ.
The endpoint map is open #
The endpoint map BasedPath x₀ → X is an open map when X is locally path-connected.
Initial segments #
The family t ↦ γ|_[0, t] of initial segments of a based path.
Equations
Instances For
Appending the initial segments of a path δ to a based path is continuous in the
parameter.
Endpoint-preserving homotopic paths to a point y ∈ U give joined based paths inside the
endpoint preimage of U.
Appending a path that stays inside U moves a based path within the same path component of
the endpoint preimage of U.
Variable-endpoint tube/component theorem.
In a locally path-connected space, if semilocal simple connectivity holds along α.toPath and
α : BasedPath x₀ has endpoint in an open set U, then α has an open neighborhood N in
BasedPath x₀ all of whose members lie in the same path component of endpoint ⁻¹' U as α.
For an open neighborhood U, path components of endpoint ⁻¹' U are open.
If α and β are based paths with the same endpoint, joined inside endpoint ⁻¹' U for a
path-homotopy-trivial set U, then α.toPath and β.toPath are homotopic (after casting to a
common endpoint). A path in BasedPath x₀ from α to β is a free homotopy from α to β
whose endpoint trace is a loop in U, and that loop is nullhomotopic.
Path components of endpoint ⁻¹' U are invariant under endpoint-preserving homotopy:
if p ≃ q are homotopic paths from x₀ to y ∈ U, then the based paths ofPath p and
ofPath q lie in the same path component of endpoint ⁻¹' U.