Basic definitions and properties of loops #
Definition and periodicity lemmas #
Equations
- instCoeFunLoopForallReal X = { coe := fun (γ : Loop X) => ↑γ }
Any function φ : α → loop X
can be seen as a function α × ℝ → X
.
Equations
- hasUncurryLoop X = { uncurry := fun (φ : α → Loop X) (p : α × ℝ) => ↑(φ p.1) p.2 }
Equations
- Loop.Zero = { zero := Loop.const 0 }
Equations
- Loop.instInhabited = { default := Loop.const default }
Equations
Shifting a loop, or equivalently, adding a constant value to a loop.
Equations
- Loop.instVAddOfAdd = { vadd := fun (x : X) (γ : Loop X) => γ.transform fun (y : X) => x + y }
Equations
Reparametrizing loop γ
using an equivariant map φ
.
Instances For
Support of a loop family #
A loop is constant if it takes the same value at every time.
See also Loop.isConst_iff_forall_avg
and Loop.isConst_iff_const_avg
for characterizations in
terms of average values.
Instances For
From paths to loops #
Turn a path into a loop.
Equations
- Loop.ofPath γ = { toFun := fun (t : ℝ) => γ.extend (Int.fract t), per' := ⋯ }
Instances For
Loop.ofPath
is continuous, general version.
Loop.ofPath
is continuous, where the endpoints of γ
are fixed. TODO: remove
Round trips #
The round-trip defined by γ
is γ
followed by γ⁻¹
.
Equations
- Loop.roundTrip γ = Loop.ofPath (γ.trans γ.symm)
Instances For
The round trip loop family associated to a path γ
. For each parameter t
,
the loop roundTripFamily γ t
backtracks at γ t
.
Equations
- Loop.roundTripFamily γ = fun (t : ℝ) => Loop.roundTrip ((γ.truncate 0 t).cast ⋯ ⋯)
Instances For
Average value of a loop #
The average value of a loop.
Instances For
The normalization of a loop γ
is the loop γ - γ.average
.
Instances For
Differentiation of loop families #
Differential of a loop family with respect to the parameter.