Paths and curves on a spacetime #
This file formalises the various flavours of paths and curves used in section 10.5 of the AQFT-in-Lean blueprint.
Main definitions #
Physicslib4.Spacetime.Path: a continuous map from a closed, connected, non-singleton subsetΣ ⊆ ℝ("parameter space") to a spacetimeM.Physicslib4.Spacetime.SmoothPath: a path that is also smooth with non-vanishing derivative.Physicslib4.Spacetime.PathEquiv,SmoothPathEquiv: the relations on paths/smooth paths corresponding to reparametrisation by homeomorphisms / diffeomorphisms of the parameter space.PathEquiv,SmoothPathEquivand its orientation-preserving refinementOrientedSmoothPathEquivare equivalence relations.Physicslib4.Spacetime.Curve,SmoothCurve: the corresponding quotient types.Physicslib4.Spacetime.IsTimelikeSmoothCurve,IsCausalSmoothCurve: predicates singling out smooth curves whose tangent vector at every point is timelike / causal.Physicslib4.Spacetime.IsFutureOrientedSmoothCurve/IsPastOrientedSmoothCurve: future/past orientation predicates relative to a given time orientation.Physicslib4.Spacetime.IsEndpoint,IsPastEndpoint,IsFutureEndpoint: the endpoint terminology for paths and their associated curves.
Supporting lemmas #
OrientedSmoothCurve.toSmoothCurve_surjective: the orientation-forgetting projectionOrientedSmoothCurve → SmoothCurveis surjective.isTimelikeSmoothCurve_toSmoothCurve_ofPath: the timelikeness companion toisCausalSmoothCurve_toSmoothCurve_ofPath.
Modelling notes #
The notion of "smooth at a boundary point of a closed interval" is delicate
in general. In this file we follow the conservative convention used in
Mathlib for ContMDiff of a function on a subset, and state the
"non-vanishing derivative" condition pointwise on the parameter space Σ.
These are genuine Prop fields of SmoothPath — smoothOn : ContMDiffOn …
and nonvanishing : ∀ s ∈ Σ, mfderivWithin _ _ toFun Σ s 1 ≠ 0 — carried by
the structure, not sorry placeholders. They are discharged for concrete
paths via named lemmas; for the straight-line path see
standardMinkowskiLineSegmentPath_smoothOn and
standardMinkowskiLineSegmentPath_nonvanishing in Minkowski.lean.
Paths #
A path in a spacetime: a continuous map μ : Σ → M on a closed interval Σ of ℝ with more than one point.
The parameter space Σ is a closed, connected subset of ℝ with at least two points, that is, a
non-degenerate closed interval, bounded or not: [a, b], [a, ∞), (-∞, b] or ℝ. A path is a
parametrised object; the unparametrised curve is its class under reparametrisation (Curve).
Implementation note: Σ is stored as a Set ℝ with proofs of the three conditions, and μ as a
function on all of ℝ that is continuous on Σ; its values off Σ are never used.
Blueprint: def:paths
The parameter space Σ ⊆ ℝ.
- isClosed : IsClosed self.parameterSpace
Σ is closed in ℝ.
- isConnected : IsConnected self.parameterSpace
Σ is connected (so it is an interval) and non-empty.
- nontrivial : ∃ (s : ℝ) (t : ℝ), s ∈ self.parameterSpace ∧ t ∈ self.parameterSpace ∧ s ≠ t
Σ has at least two distinct points.
The map μ, defined on all of ℝ; only its values on Σ matter.
- continuousOn : ContinuousOn self.toFun self.parameterSpace
μ is continuous on Σ.
Instances For
A smooth path: a path μ : Σ → M that is C^∞ on Σ and whose velocity vanishes nowhere on Σ.
The velocity μ̇(s) is the derivative of μ at s along Σ (SmoothPath.tangent), one-sided at an
endpoint of Σ. Requiring μ̇(s) ≠ 0 everywhere, endpoints included, excludes paths that stop,
such as constant paths, so a smooth path whose velocity is null moves along the light cone.
Blueprint: def:paths
- isClosed : IsClosed self.parameterSpace
- isConnected : IsConnected self.parameterSpace
- nontrivial : ∃ (s : ℝ) (t : ℝ), s ∈ self.parameterSpace ∧ t ∈ self.parameterSpace ∧ s ≠ t
- continuousOn : ContinuousOn self.toFun self.parameterSpace
- smoothOn : ContMDiffOn (modelWithCornersSelf ℝ ℝ) M.model (↑⊤) self.toFun self.parameterSpace
μ is
C^∞on Σ. - nonvanishing (s : ℝ) : s ∈ self.parameterSpace → (mfderiv[self.parameterSpace] self.toFun s) 1 ≠ 0
The velocity vanishes nowhere: μ̇(s) ≠ 0 for every s ∈ Σ, endpoints included.
The velocity is the derivative of μ within Σ (
mfderivWithin) applied to 1 ∈ ℝ.
Instances For
The parameter space of a path has unique differentials: being a closed
connected subset of ℝ with at least two points, it is a non-degenerate
interval, hence convex with non-empty interior. This is the analytic
prerequisite for differentiating compositions along a path via the
mfderivWithin chain rule.
Tangent vector #
The velocity μ̇(s) of a smooth path at the parameter s, a tangent vector at μ(s).
It is the derivative of μ within the parameter space Σ applied to the unit vector 1 ∈ ℝ, so at an endpoint of Σ it is a one-sided derivative. The causal type and the time orientation of a path are conditions on μ̇(s).
Equations
- μ.tangent s = (mfderiv[μ.parameterSpace] μ.toFun s) 1
Instances For
Unfolding lemma for SmoothPath.tangent to the raw mfderivWithin form.
The tangent vector of a smooth path is non-vanishing on the parameter
space (the nonvanishing field, restated via tangent).
Reparametrisation chain rule for the tangent vector. Composing a smooth
path μ with a (manifold-)differentiable reparametrisation φ : ℝ → ℝ that maps
Σ' into μ's parameter space scales the tangent vector by the derivative of
φ: tangent (μ ∘ φ) s = (φ'(s)) • tangent μ (φ s), where the scalar is the
one-dimensional manifold derivative of φ. This is the analytic heart of the
reparametrisation-invariance of the causal type of a curve.
Tangent vector under a reparametrisation. If a reparametrisation
φ : ℝ → ℝ (differentiable, mapping μ₁'s parameter space into μ₂'s) identifies
the two paths pointwise (μ₂ (φ s') = μ₁ s' on μ₁'s parameter space), then the
tangent vectors are related by the derivative of φ:
tangent μ₁ s = (φ'(s)) • tangent μ₂ (φ s). Combines the reparametrisation chain
rule with mfderivWithin_congr (the two paths agree on the parameter space, so
have equal within-derivatives).
Non-vanishing of a reparametrisation derivative. If ψ ∘ φ = id on a set
u (with φ mapping u into v, both maps differentiable within their sets, and
u having unique differentials at x), then the within-derivative of φ is
non-zero at x. This is the real-analytic fact behind the derivWithin φ ≠ 0
hypothesis of the pointwise reparametrisation lemmas, obtained by differentiating
the left-inverse identity via the chain rule.
A C^∞ function ℝ → ℝ is manifold-differentiable within a set, for the
self models on ℝ. Bridges the ContDiffOn datum stored in SmoothPathEquiv to
the MDifferentiableWithinAt hypothesis required by the tangent reparametrisation
lemmas.
Reparametrisation equivalence #
Two paths μ₁ : Σ₁ → M, μ₂ : Σ₂ → M are equivalent if there is a
homeomorphism φ : Σ₁ ≃ₜ Σ₂ of the parameter spaces such that μ₂ ∘ φ = μ₁ on Σ₁.
As for SmoothPathEquiv, the homeomorphism is packaged as functions φ, ψ : ℝ → ℝ
that are continuous on Σ₁ resp. Σ₂, map the parameter spaces into each other and
are inverse to each other there; nothing is asked of them off the parameter spaces.
The relation is an equivalence relation (equivalence_pathEquiv), and a smooth
reparametrisation is in particular one of these (SmoothPathEquiv.toPathEquiv).
Equations
- One or more equations did not get rendered due to their size.
Instances For
Two smooth paths are equivalent if there is a diffeomorphism φ : ℝ → ℝ
sending one parameter space to the other and identifying the underlying
maps. We package the diffeomorphism condition by smoothness of φ and its
inverse ψ on the relevant parameter spaces, paired with their being
two-sided inverses.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Two smooth paths are orientation-preservingly equivalent if they are related by
a smooth reparametrisation φ (as in SmoothPathEquiv) whose within-derivative is
everywhere positive on μ₁'s parameter space. Positivity of φ' is exactly what
distinguishes orientation-preserving from orientation-reversing reparametrisations,
and it is the extra datum needed to transport the time orientation of a curve
(future/past-pointing), not merely its causal type.
Equations
- One or more equations did not get rendered due to their size.
Instances For
An orientation-preserving smooth reparametrisation is in particular a smooth reparametrisation.
Relational properties of the reparametrisation relations #
PathEquiv, SmoothPathEquiv and OrientedSmoothPathEquiv are equivalence
relations.
PathEquiv is an equivalence relation.
SmoothPathEquiv is reflexive: every smooth path is related to itself by the
identity reparametrisation.
SmoothPathEquiv is symmetric: swap the diffeomorphism φ and its inverse ψ.
SmoothPathEquiv is transitive: reparametrising diffeomorphisms compose.
SmoothPathEquiv is an equivalence relation.
A smooth reparametrisation is in particular a reparametrisation of the underlying paths.
OrientedSmoothPathEquiv is reflexive: the identity reparametrisation has
derivative 1 > 0.
OrientedSmoothPathEquiv is symmetric: swap φ and its inverse ψ. The inverse
has positive derivative because, by the chain rule applied to φ ∘ ψ = id,
φ'(ψ t) · ψ'(t) = 1 with φ'(ψ t) > 0.
OrientedSmoothPathEquiv is transitive: orientation-preserving reparametrisations
compose, the derivative of the composite being the (positive) product of the
derivatives by the chain rule.
OrientedSmoothPathEquiv is an equivalence relation.
Curves #
A curve in a spacetime: a path up to reparametrisation by homeomorphisms of the parameter space.
Two paths μ₁ : Σ₁ → M and μ₂ : Σ₂ → M define the same curve when μ₂ ∘ φ = μ₁ for some
homeomorphism φ : Σ₁ → Σ₂ (PathEquiv). Informally, a curve remembers the points of a path
and the order in which they are traversed, up to reversal, but not the speed.
Implementation note: the type is the quotient Quot by PathEquiv. Since PathEquiv is an
equivalence relation (equivalence_pathEquiv), the classes are exactly the fibres of
Curve.ofPath (Quot.eqvGen_exact with Equivalence.eqvGen_iff).
Blueprint: def:curves
Instances For
A smooth curve in a spacetime: a smooth path up to reparametrisation by diffeomorphisms of the parameter space.
The reparametrisations (SmoothPathEquiv) may reverse the direction of the parameter, so a
smooth curve has a causal type (timelike, causal) but no time orientation; the finer quotient by
orientation-preserving reparametrisations is OrientedSmoothCurve.
Implementation note: the type is the quotient Quot by SmoothPathEquiv, an equivalence
relation (equivalence_smoothPathEquiv), so the classes are exactly the fibres of
SmoothCurve.ofPath.
Blueprint: def:curves
Equations
Instances For
Constructor: every smooth path determines a smooth curve.
Equations
Instances For
Constructor: every path determines a curve.
Equations
Instances For
Timelike and causal smooth curves #
A smooth path μ : Σ → M is timelike at parameter s ∈ Σ if its tangent
vector at s (the image under mfderivWithin of 1 : ℝ) is a timelike
tangent vector at the spacetime point μ s.
Equations
- Physicslib4.Spacetime.SmoothPath.IsTimelikeAt M μ s = M.IsTimelike (μ.tangent s)
Instances For
Pointwise reparametrisation-invariance of timelikeness. Under a
reparametrisation identifying μ₁ with μ₂ (as in tangent_reparam_eq) with
non-vanishing derivative φ'(s) ≠ 0, μ₁ is timelike at s iff μ₂ is timelike
at φ s. Combines the reparametrisation chain rule with the scaling invariance
isTimelike_smul_iff.
Pointwise reparametrisation-invariance of the causal (timelike-or-null)
condition. The direct analogue of isTimelikeAt_reparam for the disjunction
timelike ∨ null, via the reparametrisation chain rule together with the scaling
invariances isTimelike_smul_iff and isNull_smul_iff.
Pointwise reparametrisation-invariance of future-pointing. Under an
orientation-preserving reparametrisation identifying μ₁ with μ₂ (positive
derivative 0 < φ'(s)), μ₁'s tangent is future-pointing at s iff μ₂'s is at
φ s. Combines the reparametrisation chain rule with the positive-scaling
invariance isFuturePointing_smul_iff.
Pointwise reparametrisation-invariance of past-pointing. The dual of
isFuturePointing_reparam, via isPastPointing_smul_iff.
A smooth path is timelike when its velocity μ̇(s) is timelike for every s in the parameter space.
Equations
- Physicslib4.Spacetime.SmoothPath.IsTimelike M μ = ∀ s ∈ μ.parameterSpace, M.IsTimelike (μ.tangent s)
Instances For
A smooth path is causal when its velocity μ̇(s) is timelike or null for every s in the parameter space.
The type may change along the path: a causal path can be timelike on one stretch and null on another. Since μ̇(s) ≠ 0, a null velocity is a non-zero light-like vector.
Equations
- Physicslib4.Spacetime.SmoothPath.IsCausal M μ = ∀ s ∈ μ.parameterSpace, M.IsTimelike (μ.tangent s) ∨ M.IsNull (μ.tangent s)
Instances For
Reparametrisation-invariance of timelikeness. Two smooth paths related by
a smooth reparametrisation (SmoothPathEquiv) are timelike together: one is
timelike iff the other is. The forward direction uses the inverse diffeomorphism
ψ for surjectivity onto μ₂'s parameter space; both directions rest on the
pointwise isTimelikeAt_reparam (via the chain rule and scaling invariance), with
the reparametrisation derivative non-vanishing by
derivWithin_ne_zero_of_leftInverse.
Reparametrisation-invariance of the causal condition. Two smooth paths
related by a smooth reparametrisation (SmoothPathEquiv) are causal together. Same
structure as isTimelike_iff_of_smoothPathEquiv, using the pointwise
causalAt_reparam.
A smooth curve is timelike when it has a timelike representative path.
Every representative is then timelike (isTimelikeSmoothCurve_ofPath_iff): a reparametrisation
φ multiplies the velocity by φ' ≠ 0, and g(cv, cv) = c² g(v, v) has the sign of g(v, v).
Blueprint: def:timelike-and-causal-smooth-curves
Equations
- M.IsTimelikeSmoothCurve c = ∃ (μ : M.SmoothPath), c = Physicslib4.Spacetime.SmoothCurve.ofPath M μ ∧ Physicslib4.Spacetime.SmoothPath.IsTimelike M μ
Instances For
A smooth curve is causal when it has a causal representative path.
As for IsTimelikeSmoothCurve, every representative is then causal
(isCausalSmoothCurve_ofPath_iff).
Blueprint: def:timelike-and-causal-smooth-curves
Equations
- M.IsCausalSmoothCurve c = ∃ (μ : M.SmoothPath), c = Physicslib4.Spacetime.SmoothCurve.ofPath M μ ∧ Physicslib4.Spacetime.SmoothPath.IsCausal M μ
Instances For
Future and past oriented smooth curves #
A smooth path is future-oriented for a time orientation t when its velocity μ̇(s) is future-pointing for every s in the parameter space.
A future-oriented path is causal (future-pointing vectors are timelike or null) and runs toward the future as the parameter increases.
Equations
- Physicslib4.Spacetime.SmoothPath.IsFutureOriented M μ t = ∀ s ∈ μ.parameterSpace, M.IsFuturePointing t (μ.tangent s)
Instances For
A smooth path is past-oriented for a time orientation t when its velocity μ̇(s) is past-pointing for every s in the parameter space.
Equations
- Physicslib4.Spacetime.SmoothPath.IsPastOriented M μ t = ∀ s ∈ μ.parameterSpace, M.IsPastPointing t (μ.tangent s)
Instances For
A smooth curve is future-oriented for a time orientation t when it has a future-oriented representative path.
A smooth curve does not fix the direction of its parameter, so the reversed representative of a
future-oriented curve is past-oriented, and the curve is then both future- and past-oriented
in this sense. The time orientation of a curve is well defined only on OrientedSmoothCurve
(IsFutureOrientedCurve).
Blueprint: def:future-and-past-oriented-smooth-curves
Equations
- M.IsFutureOrientedSmoothCurve t c = ∃ (μ : M.SmoothPath), c = Physicslib4.Spacetime.SmoothCurve.ofPath M μ ∧ Physicslib4.Spacetime.SmoothPath.IsFutureOriented M μ t
Instances For
A smooth curve is past-oriented for a time orientation t when it has a past-oriented representative path.
See IsFutureOrientedSmoothCurve for why this does not exclude being future-oriented.
Blueprint: def:future-and-past-oriented-smooth-curves
Equations
- M.IsPastOrientedSmoothCurve t c = ∃ (μ : M.SmoothPath), c = Physicslib4.Spacetime.SmoothCurve.ofPath M μ ∧ Physicslib4.Spacetime.SmoothPath.IsPastOriented M μ t
Instances For
Reparametrisation-invariance of future-orientedness. Two smooth paths
related by an orientation-preserving smooth reparametrisation
(OrientedSmoothPathEquiv) are future-oriented together: one is future-oriented
iff the other is. The forward direction uses the inverse diffeomorphism ψ for
surjectivity; both directions rest on the pointwise isFuturePointing_reparam,
with the reparametrisation derivative positive by hypothesis.
Reparametrisation-invariance of past-orientedness. The dual of
isFutureOriented_iff_of_orientedSmoothPathEquiv, via isPastPointing_reparam.
Well-definedness of the causal type on smooth curves #
Timelikeness and causality are invariant under any smooth reparametrisation, so
they descend to genuine predicates on SmoothCurve (the quotient by
SmoothPathEquiv): a curve is timelike/causal iff any chosen representative is.
The transfer along the quotient uses the equivalence closure of SmoothPathEquiv
(via Quot.eqvGen_exact) together with the per-reparametrisation iffs.
Timelikeness is invariant along the equivalence closure of SmoothPathEquiv.
Well-definedness of timelikeness on smooth curves. A smooth curve is
timelike (has a timelike representative) iff the chosen representative μ is
timelike; the value does not depend on the representative.
Causality is invariant along the equivalence closure of SmoothPathEquiv.
Well-definedness of causality on smooth curves.
Oriented smooth curves and well-definedness of orientation #
The time orientation of a curve (future- vs past-pointing) is not invariant under
orientation-reversing reparametrisations, so it does not descend to SmoothCurve.
It does descend to the finer quotient by OrientedSmoothPathEquiv, which is the
correct home for future/past-oriented curves.
An oriented smooth curve: a smooth path up to orientation-preserving reparametrisation.
The reparametrisations (OrientedSmoothPathEquiv) have positive derivative, φ' > 0, so they
multiply the velocity by a positive number and preserve future- and past-pointing vectors. Being
future-oriented or past-oriented is therefore a property of the oriented curve
(isFutureOrientedCurve_ofPath_iff), which SmoothCurve cannot provide. Forgetting the
orientation gives OrientedSmoothCurve.toSmoothCurve.
Implementation note: the type is the quotient Quot by OrientedSmoothPathEquiv, an
equivalence relation (equivalence_orientedSmoothPathEquiv), so the classes are exactly the
fibres of OrientedSmoothCurve.ofPath.
Blueprint: def:oriented-smooth-curve
Equations
Instances For
Every smooth path determines an oriented smooth curve.
Equations
Instances For
An oriented smooth curve is future-oriented (relative to a time orientation
t) if it admits a future-oriented representative smooth path.
Equations
- M.IsFutureOrientedCurve t c = ∃ (μ : M.SmoothPath), c = Physicslib4.Spacetime.OrientedSmoothCurve.ofPath M μ ∧ Physicslib4.Spacetime.SmoothPath.IsFutureOriented M μ t
Instances For
An oriented smooth curve is past-oriented (relative to a time orientation
t) if it admits a past-oriented representative smooth path.
Equations
- M.IsPastOrientedCurve t c = ∃ (μ : M.SmoothPath), c = Physicslib4.Spacetime.OrientedSmoothCurve.ofPath M μ ∧ Physicslib4.Spacetime.SmoothPath.IsPastOriented M μ t
Instances For
Future-orientedness is invariant along the equivalence closure of
OrientedSmoothPathEquiv.
Well-definedness of future-orientedness on oriented smooth curves.
Past-orientedness is invariant along the equivalence closure of
OrientedSmoothPathEquiv.
Well-definedness of past-orientedness on oriented smooth curves.
Projection to the coarser quotient #
Every orientation-preserving reparametrisation is a smooth reparametrisation, so
there is a canonical projection OrientedSmoothCurve → SmoothCurve forgetting the
orientation. It sends ofPath μ to ofPath μ, hence is compatible with the
(orientation-independent) timelike and causal predicates.
The canonical projection from oriented smooth curves to smooth curves,
forgetting the orientation. Well-defined because OrientedSmoothPathEquiv refines
SmoothPathEquiv.
Equations
- Physicslib4.Spacetime.OrientedSmoothCurve.toSmoothCurve M c = Quot.lift (fun (μ : M.SmoothPath) => Physicslib4.Spacetime.SmoothCurve.ofPath M μ) ⋯ c
Instances For
The projection is surjective: every smooth curve underlies an oriented one.
Compatibility with timelikeness. The smooth curve underlying an oriented
smooth curve ofPath μ is timelike iff μ is — the timelike predicate factors
through the projection.
Compatibility with causality.
A future-oriented oriented smooth curve projects to a causal smooth curve (future-pointing tangents are timelike or null).
A past-oriented oriented smooth curve projects to a causal smooth curve.
Endpoints #
A point p is an endpoint of a path μ : Σ → M when p = μ(s) for some s in the boundary ∂Σ of the parameter space in ℝ.
Endpoints do not depend on the parametrisation (IsEndpoint.of_pathEquiv), but which endpoint
is the past one and which the future one does; see IsPastEndpoint and IsFutureEndpoint.
Blueprint: def:endpoints
Equations
- M.IsEndpoint μ p = ∃ s ∈ frontier μ.parameterSpace, μ.toFun s = p
Instances For
A point p is a past endpoint of a path μ : Σ → M when p = μ(s) for the least element s of Σ.
The condition asks for an s ∈ Σ with s ≤ s' for every s' ∈ Σ, so Σ must be bounded below. A
path with both a past and a future endpoint therefore has Σ = [a, b] with a < b
(parameterSpace_eq_Icc_of_endpoints). No smoothness or causal condition is involved; trips
apply the notion to their future-oriented segments, so the past endpoint is where the segment
starts.
Implementation note: the definition quantifies over Σ rather than over its boundary ∂Σ, because Σ need not have two boundary points (for example Σ = [0, ∞) or Σ = ℝ), and then "the lesser boundary point" would not be defined.
Blueprint: def:endpoints
Equations
- M.IsPastEndpoint μ p = ∃ s ∈ μ.parameterSpace, μ.toFun s = p ∧ ∀ s' ∈ μ.parameterSpace, s ≤ s'
Instances For
A point q is a future endpoint of a path μ : Σ → M when q = μ(s) for the greatest element s of Σ.
This is the dual of IsPastEndpoint: it forces Σ to be bounded above.
Blueprint: def:endpoints
Equations
- M.IsFutureEndpoint μ p = ∃ s ∈ μ.parameterSpace, μ.toFun s = p ∧ ∀ s' ∈ μ.parameterSpace, s' ≤ s
Instances For
Extremal parameters and the shape of the parameter space #
These two results are what justify quantifying over the parameter space rather
than over its frontier in IsPastEndpoint and IsFutureEndpoint: a genuine
minimum or maximum automatically lies in the frontier, and having both forces the
parameter space to be a compact interval.
A minimal parameter lies in the frontier
(lmm:extremal-parameter-mem-frontier). If s is a minimum of the parameter
space then it cannot be interior: an interior point has a whole interval around it
inside the parameter space, which would contain smaller elements.
A maximal parameter lies in the frontier
(lmm:extremal-parameter-mem-frontier), the mirror of mem_frontier_of_isMin.
A past endpoint is in particular an endpoint
(lmm:extremal-parameter-mem-frontier, consequence).
A future endpoint is in particular an endpoint
(lmm:extremal-parameter-mem-frontier, consequence).
Two endpoints force a compact parameter interval
(lmm:endpoint-parameter-space-eq-Icc).
The past-endpoint witness is a minimum and the future-endpoint witness a maximum, so the parameter space is bounded on both sides; being also nonempty, connected and closed, it is the closed interval between them. It is non-degenerate because a path has more than one parameter.
Endpoints of curves #
An endpoint of a path is also called an endpoint of its associated curve. This is well defined because a reparametrisation carries the frontier of one parameter space onto the frontier of the other. Past and future endpoints are not defined on unoriented curves: an orientation-reversing reparametrisation exchanges them.
A point p is an endpoint of a curve c if it is an endpoint of a path
representing c. By isCurveEndpoint_ofPath_iff this does not depend on the
representative.
Equations
- M.IsCurveEndpoint c p = ∃ (μ : M.Path), c = Physicslib4.Spacetime.Curve.ofPath M μ ∧ M.IsEndpoint μ p
Instances For
A point p is an endpoint of a smooth curve c if it is an endpoint of a
smooth path representing c. By isSmoothCurveEndpoint_ofPath_iff this does not
depend on the representative.
Equations
- M.IsSmoothCurveEndpoint c p = ∃ (μ : M.SmoothPath), c = Physicslib4.Spacetime.SmoothCurve.ofPath M μ ∧ M.IsEndpoint μ.toPath p
Instances For
Endpoints are invariant under reparametrisation of paths.
Endpoints are invariant under smooth reparametrisation of smooth paths.
Well-definedness of endpoints of curves.
Well-definedness of endpoints of smooth curves.