Documentation

LeanPool.NavierStokesAndEuler.Euler.Foundations.PacketExistence

Packet Existence #

noncomputable def EulerPacketExistence.extendCurve {E : Type u_1} [NormedAddCommGroup E] {a b : } (t₀ : (Set.Icc a b)) (α : C((Set.Icc a b), E)) (t : ) :
E

Extend a continuous curve from a compact interval by endpoint values.

Equations
Instances For
    theorem EulerPacketExistence.continuous_extendCurve {E : Type u_1} [NormedAddCommGroup E] {a b : } (t₀ : (Set.Icc a b)) (α : C((Set.Icc a b), E)) :
    theorem EulerPacketExistence.extendCurve_of_mem {E : Type u_1} [NormedAddCommGroup E] {a b : } (t₀ : (Set.Icc a b)) (α : C((Set.Icc a b), E)) {t : } (ht : t Set.Icc a b) :
    extendCurve t₀ α t = α t, ht
    theorem EulerPacketExistence.continuous_comp_extendCurve {E : Type u_1} [NormedAddCommGroup E] {a b : } (t₀ : (Set.Icc a b)) {f : EE} (hf : Continuous (Function.uncurry f)) (α : C((Set.Icc a b), E)) :
    Continuous fun (t : ) => f t (extendCurve t₀ α t)
    noncomputable def EulerPacketExistence.picardStep {E : Type u_1} [NormedAddCommGroup E] {a b : } (t₀ : (Set.Icc a b)) {f : EE} (hf : Continuous (Function.uncurry f)) [NormedSpace E] [CompleteSpace E] (x : E) (α : C((Set.Icc a b), E)) :
    C((Set.Icc a b), E)

    The Volterra map on all continuous curves, without a spatial-radius restriction. Global Lipschitz continuity makes an iterate contractive.

    Equations
    Instances For
      theorem EulerPacketExistence.picardStep_apply {E : Type u_1} [NormedAddCommGroup E] {a b : } (t₀ : (Set.Icc a b)) {f : EE} (hf : Continuous (Function.uncurry f)) [NormedSpace E] [CompleteSpace E] (x : E) (α : C((Set.Icc a b), E)) (t : (Set.Icc a b)) :
      (picardStep t₀ hf x α) t = x + (s : ) in t₀..t, f s (extendCurve t₀ α s)
      theorem EulerPacketExistence.picard_iterate_point_bound {E : Type u_1} [NormedAddCommGroup E] {a b : } (t₀ : (Set.Icc a b)) {f : EE} (hf : Continuous (Function.uncurry f)) [NormedSpace E] [CompleteSpace E] {K : NNReal} (hLip : ∀ (t : ), LipschitzWith K (f t)) (x : E) (α β : C((Set.Icc a b), E)) (n : ) (t : (Set.Icc a b)) :
      dist (((picardStep t₀ hf x)^[n] α) t) (((picardStep t₀ hf x)^[n] β) t) (K * |t - t₀|) ^ n / n.factorial * dist α β
      theorem EulerPacketExistence.picard_iterate_bound {E : Type u_1} [NormedAddCommGroup E] {a b : } (t₀ : (Set.Icc a b)) {f : EE} (hf : Continuous (Function.uncurry f)) [NormedSpace E] [CompleteSpace E] {K : NNReal} (hLip : ∀ (t : ), LipschitzWith K (f t)) (x : E) (α β : C((Set.Icc a b), E)) (n : ) :
      dist ((picardStep t₀ hf x)^[n] α) ((picardStep t₀ hf x)^[n] β) (K * max (b - t₀) (t₀ - a)) ^ n / n.factorial * dist α β
      theorem EulerPacketExistence.exists_picard_fixed_point {E : Type u_1} [NormedAddCommGroup E] {a b : } (t₀ : (Set.Icc a b)) {f : EE} (hf : Continuous (Function.uncurry f)) [NormedSpace E] [CompleteSpace E] {K : NNReal} (hLip : ∀ (t : ), LipschitzWith K (f t)) (x : E) :
      ∃ (α : C((Set.Icc a b), E)), Function.IsFixedPt (picardStep t₀ hf x) α
      theorem EulerPacketExistence.exists_solution_on_compact_interval {E : Type u_1} [NormedAddCommGroup E] {a b : } (t₀ : (Set.Icc a b)) {f : EE} (hf : Continuous (Function.uncurry f)) [NormedSpace E] [CompleteSpace E] {K : NNReal} (hLip : ∀ (t : ), LipschitzWith K (f t)) (x : E) :
      ∃ (α : E), α t₀ = x tSet.Icc a b, HasDerivAt α (f t (α t)) t

      A globally Lipschitz time-dependent vector field has a solution on every finite interval. Full derivatives also hold at the endpoints.

      theorem EulerPacketExistence.exists_global_solution {E : Type u_1} [NormedAddCommGroup E] [NormedSpace E] [CompleteSpace E] {f : EE} {K : NNReal} (hf : Continuous (Function.uncurry f)) (hLip : ∀ (t : ), LipschitzWith K (f t)) (x : E) :
      ∃ (u : E), u 0 = x ∀ (t : ), HasDerivAt u (f t (u t)) t

      Global existence for a jointly continuous vector field with a uniform global Lipschitz constant in the state variable. Finite-interval solutions are glued using the proved ODE uniqueness theorem.

      noncomputable def EulerPacketExistence.scalarCoefficientA (β t : ) :

      The displacement coefficient in the first-order form of equation (30).

      Equations
      Instances For
        noncomputable def EulerPacketExistence.scalarCoefficientB (β t : ) :

        The velocity coefficient in the first-order form of equation (30).

        Equations
        Instances For
          noncomputable def EulerPacketExistence.scalarVectorField (β t : ) (x : × ) :

          The scalar equation as a globally Lipschitz two-dimensional system.

          Equations
          Instances For
            theorem EulerPacketExistence.lipschitz_scalarVectorField {β : } ( : 0 β) (hβupper : β 1) (t : ) :
            theorem EulerPacketExistence.equation30_exists_global {β : } ( : 0 β) (hβupper : β 1) (v₀ v₁ : ) :
            ∃ (V : ) (V₁ : ), V 0 = v₀ V₁ 0 = v₁ (∀ (t : ), HasDerivAt V (V₁ t) t) ∀ (t : ), HasDerivAt (fun (s : ) => (1 + (β * s ^ 2) ^ 2) * V₁ s) (2 * (1 - β * (β * t ^ 2)) * V t) t

            Global construction of equation (30) for arbitrary real initial data.

            theorem EulerPacketExistence.equation30_exists_growing_primary {ε lam : } ( : 0 < ε) (hεsmall : ε 1 / 4) (hlam : 0 lam) :
            ∃ (V : ) (V₁ : ), V 0 = 1 V₁ 0 = lam (∀ (t : ), HasDerivAt V (V₁ t) t) (∀ (t : ), HasDerivAt (fun (s : ) => (1 + (ε ^ 2 * s ^ 2) ^ 2) * V₁ s) (2 * (1 - ε ^ 2 * (ε ^ 2 * t ^ 2)) * V t) t) Real.exp (1 / (4 * ε)) V (1 / ε) (∀ (t : ), 0 t0 < V t) (∀ (t : ), 1 t|V₁ t / V t| 4) ∀ (y : ), 0 < yy 1 / 2have z := -ε * EulerPacketGrowth.invertedScalarDeriv ε V V₁ y / EulerPacketGrowth.invertedScalar ε V y; |z ^ 2 - 2 / (1 + y ^ 4)| 360 * ε

            A constructed primary scalar solution has the exponential growth, positivity, and uniform logarithmic-slope properties used in the source. There is no solution-existence hypothesis in this statement.

            theorem EulerPacketExistence.equation30_exists_fundamental_system {β : } ( : 0 β) (hβupper : β 1) :
            ∃ (F : ) (F₁ : ) (G : ) (G₁ : ), F 0 = 1 F₁ 0 = 0 G 0 = 0 G₁ 0 = 1 (∀ (t : ), HasDerivAt F (F₁ t) t) (∀ (t : ), HasDerivAt G (G₁ t) t) (∀ (t : ), HasDerivAt (fun (s : ) => (1 + (β * s ^ 2) ^ 2) * F₁ s) (2 * (1 - β * (β * t ^ 2)) * F t) t) ∀ (t : ), HasDerivAt (fun (s : ) => (1 + (β * s ^ 2) ^ 2) * G₁ s) (2 * (1 - β * (β * t ^ 2)) * G t) t

            Construction of the two exact fundamental solutions required by the relative propagator and Duhamel estimates.