Documentation

SphereEversion.Local.Corrugation

Theillière's corrugation operation #

This files introduces the fundamental calculus tool of convex integration. The version of convex integration that we formalize is Theillière's corrugation-based convex integration. It improves a map f : E → F by adding to it some corrugation map fun x ↦ (1/N) • ∫ t in 0..(N*π x), (γ x t - (γ x).average) where γ is a family of loops in F parametrized by E and N is some (very large) real number.

Under the assumption that ∀ x, (γ x).average = D f x p.v for some dual pair p, this improved map will have a derivative which is almost a value of γ x in direction p.v and almost the derivative of f in direction ker p.π. More precisely, its derivative will be almost p.update (D f x) (γ x (N*p.π x)). In addition the improved map will be very close to f in C⁰ topology. All those "almost" and "very close" refer to the asymptotic behavior when N is very large.

The main definition is corrugation. The main results are:

def corrugation {E : Type u_1} [NormedAddCommGroup E] [NormedSpace E] {F : Type u_2} [NormedAddCommGroup F] [NormedSpace F] (π : E →L[] ) (N : ) (γ : ELoop F) :
EF

Theillière's corrugations.

Equations
Instances For
    theorem per_corrugation {F : Type u_2} [NormedAddCommGroup F] [NormedSpace F] [FiniteDimensional F] (γ : Loop F) ( : ∀ (s t : ), IntervalIntegrable (↑γ) MeasureTheory.volume s t) :
    OnePeriodic fun (s : ) => (t : ) in 0 ..s, γ t - γ.average

    The integral appearing in corrugations is periodic.

    @[simp]
    theorem corrugation_const {E : Type u_1} [NormedAddCommGroup E] [NormedSpace E] {F : Type u_2} [NormedAddCommGroup F] [NormedSpace F] [FiniteDimensional F] {π : E →L[] } (N : ) (γ : ELoop F) {x : E} (h : (γ x).IsConst) :
    corrugation π N γ x = 0
    theorem corrugation_eq_zero {E : Type u_1} [NormedAddCommGroup E] [NormedSpace E] {F : Type u_2} [NormedAddCommGroup F] [NormedSpace F] [FiniteDimensional F] (π : E →L[] ) (N : ) (γ : ELoop F) (x : E) (H : xLoop.support γ) :
    corrugation π N γ x = 0
    theorem corrugation.c0_small_on {E : Type u_1} [NormedAddCommGroup E] [NormedSpace E] {F : Type u_2} [NormedAddCommGroup F] [NormedSpace F] [FiniteDimensional F] (π : E →L[] ) [FirstCountableTopology E] [LocallyCompactSpace E] {γ : ELoop F} {K : Set E} (hK : IsCompact K) (h_le : ∀ (x : E), t0, γ t x = γ 0 x) (h_ge : ∀ (x : E), t1, γ t x = γ 1 x) (hγ_cont : Continuous γ) {ε : } (ε_pos : 0 < ε) :
    ∀ᶠ (N : ) in Filter.atTop, xK, ∀ (t : ), corrugation π N (γ t) x < ε
    theorem corrugation.contDiff' {E : Type u_1} [NormedAddCommGroup E] [NormedSpace E] {F : Type u_2} [NormedAddCommGroup F] [NormedSpace F] [FiniteDimensional F] {G : Type u_3} [NormedAddCommGroup G] [NormedSpace G] {H : Type u_4} [NormedAddCommGroup H] [NormedSpace H] [FiniteDimensional H] (π : E →L[] ) (N : ) {n : ℕ∞} {γ : GELoop F} (hγ_diff : 𝒞 n γ) {x : HE} (hx : 𝒞 (↑n) x) {g : HG} (hg : 𝒞 (↑n) g) :
    𝒞 n fun (h : H) => corrugation π N (γ (g h)) (x h)
    theorem corrugation.contDiff {E : Type u_1} [NormedAddCommGroup E] [NormedSpace E] {F : Type u_2} [NormedAddCommGroup F] [NormedSpace F] [FiniteDimensional F] (π : E →L[] ) (N : ) {γ : ELoop F} [FiniteDimensional E] {n : ℕ∞} (hγ_diff : 𝒞 n γ) :
    𝒞 (↑n) (corrugation π N γ)
    def corrugation.remainder {E : Type u_1} [NormedAddCommGroup E] [NormedSpace E] {F : Type u_2} [NormedAddCommGroup F] [NormedSpace F] (π : E) (N : ) (γ : ELoop F) :
    EE →L[] F

    The remainder appearing when differentiating a corrugation.

    Equations
    Instances For
      theorem remainder_eq {E : Type u_1} [NormedAddCommGroup E] [NormedSpace E] {F : Type u_2} [NormedAddCommGroup F] [NormedSpace F] [FiniteDimensional F] (π : E →L[] ) [FiniteDimensional E] (N : ) {γ : ELoop F} (h : 𝒞 1 γ) :
      corrugation.remainder (⇑π) N γ = fun (x : E) => (1 / N) (t : ) in 0 ..N * π x, (Loop.diff γ x).normalize t
      theorem remainder_eq_corrugation {E : Type u_1} [NormedAddCommGroup E] [NormedSpace E] {F : Type u_2} [NormedAddCommGroup F] [NormedSpace F] [FiniteDimensional F] (π : E →L[] ) [FiniteDimensional E] (N : ) {γ : ELoop F} (h : 𝒞 1 γ) :
      corrugation.remainder (⇑π) N γ = corrugation π N fun (x : E) => Loop.diff γ x
      @[simp]
      theorem remainder_eq_zero {E : Type u_1} [NormedAddCommGroup E] [NormedSpace E] {F : Type u_2} [NormedAddCommGroup F] [NormedSpace F] [FiniteDimensional F] (π : E →L[] ) [FiniteDimensional E] (N : ) {γ : ELoop F} (h : 𝒞 1 γ) {x : E} (hx : xLoop.support γ) :
      corrugation.remainder (⇑π) N γ x = 0
      theorem corrugation.fderiv_eq {E : Type u_1} [NormedAddCommGroup E] [NormedSpace E] {F : Type u_2} [NormedAddCommGroup F] [NormedSpace F] [FiniteDimensional F] (π : E →L[] ) {γ : ELoop F} [FiniteDimensional E] {N : } (hN : N 0) (hγ_diff : 𝒞 1 γ) :
      D (corrugation π N γ) = fun (x : E) => (((γ x) (N * π x) - (γ x).average) π) + remainder (⇑π) N γ x
      theorem corrugation.fderiv_apply {E : Type u_1} [NormedAddCommGroup E] [NormedSpace E] {F : Type u_2} [NormedAddCommGroup F] [NormedSpace F] [FiniteDimensional F] (π : E →L[] ) (N : ) {γ : ELoop F} [FiniteDimensional E] (hN : N 0) (hγ_diff : 𝒞 1 γ) (x v : E) :
      (D (corrugation π N γ) x) v = π v ((γ x) (N * π x) - (γ x).average) + (remainder (⇑π) N γ x) v
      theorem fderiv_corrugated_map {E : Type u_1} [NormedAddCommGroup E] [NormedSpace E] {F : Type u_2} [NormedAddCommGroup F] [NormedSpace F] [FiniteDimensional F] (N : ) {γ : ELoop F} [FiniteDimensional E] (hN : N 0) (hγ_diff : 𝒞 1 γ) {f : EF} (hf : 𝒞 1 f) (p : DualPair E) {x : E} (hfγ : (γ x).average = (D f x) p.v) :
      D (f + corrugation p.π N γ) x = p.update (D f x) ((γ x) (N * p.π x)) + corrugation.remainder (⇑p.π) N γ x
      theorem Remainder.smooth {E : Type u_1} [NormedAddCommGroup E] [NormedSpace E] {F : Type u_2} [NormedAddCommGroup F] [NormedSpace F] [FiniteDimensional F] {G : Type u_3} [NormedAddCommGroup G] [NormedSpace G] {H : Type u_4} [NormedAddCommGroup H] [NormedSpace H] [FiniteDimensional H] (π : E →L[] ) (N : ) [FiniteDimensional E] {γ : GELoop F} (hγ_diff : 𝒞 γ) {x : HE} (hx : 𝒞 (↑) x) {g : HG} (hg : 𝒞 (↑) g) :
      𝒞 fun (h : H) => corrugation.remainder (⇑π) N (γ (g h)) (x h)
      theorem remainder_c0_small_on {E : Type u_1} [NormedAddCommGroup E] [NormedSpace E] {F : Type u_2} [NormedAddCommGroup F] [NormedSpace F] [FiniteDimensional F] (π : E →L[] ) {γ : ELoop F} [FiniteDimensional E] {K : Set E} (hK : IsCompact K) (hγ_diff : 𝒞 1 γ) {ε : } (ε_pos : 0 < ε) :
      ∀ᶠ (N : ) in Filter.atTop, xK, corrugation.remainder (⇑π) N γ x < ε