Time #
In this module we define the type Time
, corresponding to time in a given
(but arbitary) set of units, with a given (but arbitary) choice of origin (time zero),
and a choice of orientation (i.e. a positive time direction).
We note that this is the version of time most often used in undergraduate and non-mathematical physics.
The choice of units or origin can be made on a case-by-case basis, as
long as they are done consistently. However, since the choice of units and origin is
left implicit, Lean will not catch inconsistencies in the choice of units or origin when
working with Time
.
For example, for the classical mechanics system corresponding to the harmonic oscillator,
one can take the origin of time to be the time at which the initial conditions are specified,
and the units can be taken as anything as long as the units chosen for time t
and
the angular frequency ω
are consistent.
With this notion of Time
, becomes a 1d vector space over ℝ
with an inner product.
Within other modules e.g. TimeMan
and TimeTransMan
, we define
versions of time with less choices made, and relate them to Time
via a choice of units
or origin.
Coercions #
The choice of zero, one, and orientation #
Equations
- One or more equations did not get rendered due to their size.
Equations
- Time.instAddCommGroup = { toAddGroup := Time.instAddGroup, add_comm := Time.instAddCommGroup._proof_1 }
Equations
- One or more equations did not get rendered due to their size.
Equations
- One or more equations did not get rendered due to their size.
Equations
- One or more equations did not get rendered due to their size.
Equations
- Time.instNormedSpaceReal = { toModule := Time.instModuleReal, norm_smul_le := Time.instNormedSpaceReal._proof_1 }
Equations
- One or more equations did not get rendered due to their size.
Equations
- t1.instDecidableEq t2 = decidable_of_iff (t1.val = t2.val) ⋯
Equations
Equations
- One or more equations did not get rendered due to their size.
The continuous linear map from Time
to ℝ
.
Equations
- Time.toRealCLM = LinearMap.toContinuousLinearMap { toFun := Time.val, map_add' := Time.toRealCLM._proof_8, map_smul' := Time.toRealCLM._proof_9 }
Instances For
Derivatives #
Given a function f : Time → M
the derivative of f
.
Equations
- Time.deriv f t = (fderiv ℝ f t) 1
Instances For
Given a function f : Time → M
the derivative of f
.
Equations
- Time.«term∂ₜ» = Lean.ParserDescr.node `Time.«term∂ₜ» 1024 (Lean.ParserDescr.symbol "∂ₜ")