Leray Limit Main #
Supporting estimates for the Navier–Stokes development.
theorem
CKN.Leray.lerayLimit_eLpNorm_two_sq_eq_lintegral
{α : Type u_1}
{E : Type u_2}
[MeasurableSpace α]
[NormedAddCommGroup E]
{μ : MeasureTheory.Measure α}
{f : α → E}
(hf : MeasureTheory.AEStronglyMeasurable f μ)
:
theorem
CKN.Leray.lerayLimit_contDiff_spatial_slices
(u : Foundation.Parabolic.ParabolicPoint → Foundation.Parabolic.Vec3)
(P : Set Foundation.Parabolic.ParabolicPoint)
(hC1 : ∀ (i : Fin 3), ContDiffOn ℝ 1 (fun (z : Foundation.Parabolic.ParabolicPoint) => u z i) P)
(hP : ∀ (t : ℝ), 0 < t → ∀ (x : Foundation.Parabolic.Vec3), (x, t) ∈ P)
(t : ℝ)
:
theorem
CKN.Leray.lerayLimit_regularised_basic_data
(ρ : RegMollifierProfile)
(uε :
(a : Foundation.Parabolic.Vec3 → Foundation.Parabolic.Vec3) →
IsInJ a → ℝ → Foundation.Parabolic.ParabolicPoint → Foundation.Parabolic.Vec3)
(pε :
(a : Foundation.Parabolic.Vec3 → Foundation.Parabolic.Vec3) → IsInJ a → ℝ → Foundation.Parabolic.ParabolicPoint → ℝ)
(hregularised :
∀ (a : Foundation.Parabolic.Vec3 → Foundation.Parabolic.Vec3) (ha : IsInJ a) (ε : ℝ) (hε : 0 < ε),
have u := uε a ha ε;
have p := pε a ha ε;
have D := fun (z : Foundation.Parabolic.ParabolicPoint) (i j : Fin 3) =>
spatialPartial (fun (y : Foundation.Parabolic.ParabolicPoint) => u y i) j z;
have DD := fun (z : Foundation.Parabolic.ParabolicPoint) (i j k : Fin 3) =>
spatialPartial
(fun (y : Foundation.Parabolic.ParabolicPoint) =>
spatialPartial (fun (x : Foundation.Parabolic.ParabolicPoint) => u x i) j y)
k z;
have Dt := fun (z : Foundation.Parabolic.ParabolicPoint) (i : Fin 3) =>
timePartial (fun (y : Foundation.Parabolic.ParabolicPoint) => u y i) z;
have Dp := fun (z : Foundation.Parabolic.ParabolicPoint) (i : Fin 3) =>
spatialPartial (fun (y : Foundation.Parabolic.ParabolicPoint) => p y) i z;
(∃ (hSlice :
∀ (t : ℝ),
0 ≤ t → MeasureTheory.MemLp (fun (x : Foundation.Parabolic.Vec3) => u (x, t)) 2 MeasureTheory.volume),
(Continuous fun (t : ↑(Set.Ici 0)) =>
realVectorL2OfCoordinateFunction (fun (x : Foundation.Parabolic.Vec3) => u (x, ↑t)) ⋯) ∧ (fun (x : Foundation.Parabolic.Vec3) => u (x, 0)) =ᵐ[MeasureTheory.volume]
regUniformMollifiedInitial ρ ε hε a ∧ ∀ (t : ℝ), 0 ≤ t → IsWeakDivFreeL2 fun (x : Foundation.Parabolic.Vec3) => u (x, t)) ∧ (∀ (i : Fin 3),
ContinuousOn (fun (z : Foundation.Parabolic.ParabolicPoint) => u z i) (spaceTimeSet Set.univ (Set.Ioi 0))) ∧ (∀ (i j : Fin 3),
ContinuousOn (fun (z : Foundation.Parabolic.ParabolicPoint) => D z i j)
(spaceTimeSet Set.univ (Set.Ioi 0))) ∧ (∀ (i j k : Fin 3),
ContinuousOn (fun (z : Foundation.Parabolic.ParabolicPoint) => DD z i j k)
(spaceTimeSet Set.univ (Set.Ioi 0))) ∧ (∀ (i : Fin 3),
ContinuousOn (fun (z : Foundation.Parabolic.ParabolicPoint) => Dt z i)
(spaceTimeSet Set.univ (Set.Ioi 0))) ∧ ContinuousOn p (spaceTimeSet Set.univ (Set.Ioi 0)) ∧ (∀ (i : Fin 3),
ContinuousOn (fun (z : Foundation.Parabolic.ParabolicPoint) => Dp z i)
(spaceTimeSet Set.univ (Set.Ioi 0))) ∧ (∀ (i : Fin 3),
ContDiffOn ℝ 1 (fun (z : Foundation.Parabolic.ParabolicPoint) => u z i)
(spaceTimeSet Set.univ (Set.Ioi 0))) ∧ (∀ z ∈ spaceTimeSet Set.univ (Set.Ioi 0),
∀ (i j : Fin 3),
DifferentiableAt ℝ (fun (x : Foundation.Parabolic.Vec3) => D (x, z.2) i j) z.1) ∧ (∀ z ∈ spaceTimeSet Set.univ (Set.Ioi 0),
DifferentiableAt ℝ (fun (x : Foundation.Parabolic.Vec3) => p (x, z.2)) z.1) ∧ (∀ (δ T : ℝ),
0 < δ →
δ < T →
∃ (C : ℝ),
0 ≤ C ∧ ∀ z ∈ spaceTimeSet Set.univ (Set.Icc δ T),
Foundation.Parabolic.vec3EuclideanNorm (u z) ≤ C ∧ |p z| ≤ C ∧ (∀ (i j : Fin 3), |D z i j| ≤ C) ∧ (∀ (i j k : Fin 3), |DD z i j k| ≤ C) ∧ (∀ (i : Fin 3), |Dt z i| ≤ C) ∧ ∀ (i : Fin 3), |Dp z i| ≤ C) ∧ (∀ (δ T : ℝ),
0 < δ →
δ < T →
(∀ (i : Fin 3),
MeasureTheory.MemLp (fun (z : Foundation.Parabolic.ParabolicPoint) => u z i) 2
(MeasureTheory.volume.restrict (spaceTimeSet Set.univ (Set.Ioo δ T)))) ∧ (∀ (i j : Fin 3),
MeasureTheory.MemLp (fun (z : Foundation.Parabolic.ParabolicPoint) => D z i j) 2
(MeasureTheory.volume.restrict (spaceTimeSet Set.univ (Set.Ioo δ T)))) ∧ (∀ (i j k : Fin 3),
MeasureTheory.MemLp
(fun (z : Foundation.Parabolic.ParabolicPoint) => DD z i j k) 2
(MeasureTheory.volume.restrict (spaceTimeSet Set.univ (Set.Ioo δ T)))) ∧ (∀ (i : Fin 3),
MeasureTheory.MemLp
(fun (z : Foundation.Parabolic.ParabolicPoint) => Dt z i) 2
(MeasureTheory.volume.restrict (spaceTimeSet Set.univ (Set.Ioo δ T)))) ∧ MeasureTheory.MemLp p 2
(MeasureTheory.volume.restrict (spaceTimeSet Set.univ (Set.Ioo δ T)))) ∧ (∀ (z : Foundation.Parabolic.ParabolicPoint),
0 < z.2 →
∀ (i : Fin 3),
Dt z i - ∑ j : Fin 3, DD z i j j + ∑ j : Fin 3, regUniformMollifiedVelocity ρ ε hε u z j * D z i j + Dp z i = 0) ∧ (∀ (t : ℝ),
0 < t →
∃ (hF :
∀ (i j : Fin 3),
MeasureTheory.MemLp
(fun (x : Foundation.Parabolic.Vec3) =>
regUniformMollifiedVelocity ρ ε hε u (x, t) i * u (x, t) j)
(ENNReal.ofReal 2) MeasureTheory.volume),
((fun (x : Foundation.Parabolic.Vec3) => p (x, t)) =ᵐ[MeasureTheory.volume]
rieszPressureSliceRepresentative 2 lerayLimit_regularised_basic_data._proof_55
fun (i j : Fin 3) =>
MeasureTheory.MemLp.toLp
(fun (x : Foundation.Parabolic.Vec3) =>
regUniformMollifiedVelocity ρ ε hε u (x, t) i * u (x, t) j)
⋯) ∧ ∀ (ψ : Foundation.Parabolic.Vec3 → ℝ),
ContDiff ℝ (↑⊤) ψ →
HasCompactSupport ψ →
∫ (x : Foundation.Parabolic.Vec3), p (x, t) * spatialLaplacian ψ x = -∑ i : Fin 3,
∑ j : Fin 3,
∫ (x : Foundation.Parabolic.Vec3), regUniformMollifiedVelocity ρ ε hε u (x, t) i * u (x, t) j * mixedSecond ψ i j x) ∧ ∀ (t : ℝ),
0 ≤ t →
MeasureTheory.eLpNorm (regUniformVelocitySlice u t) 2 MeasureTheory.volume ^ 2 + 2 * regUniformDissipation u D t = MeasureTheory.eLpNorm (regMollifyVector ρ ε hε (regUniformSpatialField a)) 2
MeasureTheory.volume ^ 2)
(a : Foundation.Parabolic.Vec3 → Foundation.Parabolic.Vec3)
(ha : IsInJ a)
(ε : ℝ)
(hε : 0 < ε)
:
(∀ (t : ℝ),
0 ≤ t → MeasureTheory.MemLp (fun (x : Foundation.Parabolic.Vec3) => uε a ha ε (x, t)) 2 MeasureTheory.volume) ∧ (∀ (i : Fin 3),
ContinuousOn (fun (z : Foundation.Parabolic.ParabolicPoint) => uε a ha ε z i)
(spaceTimeSet Set.univ (Set.Ioi 0))) ∧ (∀ (i j : Fin 3),
ContinuousOn
(fun (z : Foundation.Parabolic.ParabolicPoint) =>
spatialPartial (fun (y : Foundation.Parabolic.ParabolicPoint) => uε a ha ε y i) j z)
(spaceTimeSet Set.univ (Set.Ioi 0))) ∧ have D := fun (z : Foundation.Parabolic.ParabolicPoint) (i j : Fin 3) =>
spatialPartial (fun (y : Foundation.Parabolic.ParabolicPoint) => uε a ha ε y i) j z;
∀ (t : ℝ),
0 ≤ t →
MeasureTheory.eLpNorm (regUniformVelocitySlice (uε a ha ε) t) 2 MeasureTheory.volume ^ 2 + 2 * regUniformDissipation (uε a ha ε) D t = MeasureTheory.eLpNorm (regMollifyVector ρ ε hε (regUniformSpatialField a)) 2 MeasureTheory.volume ^ 2
noncomputable def
CKN.Leray.lerayLimitPiecewise
{α : Type u_1}
{β : Type u_2}
(s : Set α)
(f g : α → β)
:
α → β
A piecewise field with the classical membership decision made explicit.
Equations
- CKN.Leray.lerayLimitPiecewise s f g = s.piecewise f g
Instances For
theorem
CKN.Leray.lerayLimit_regularised_energy_bounds
(ρ : RegMollifierProfile)
(a : Foundation.Parabolic.Vec3 → Foundation.Parabolic.Vec3)
(ha : IsInJ a)
(ε : ℝ)
(hε : 0 < ε)
(u : Foundation.Parabolic.ParabolicPoint → Foundation.Parabolic.Vec3)
(D : Foundation.Parabolic.ParabolicPoint → Fin 3 → Foundation.Parabolic.Vec3)
(hucont :
∀ (i : Fin 3),
ContinuousOn (fun (z : Foundation.Parabolic.ParabolicPoint) => u z i) (spaceTimeSet Set.univ (Set.Ioi 0)))
(hDcont :
∀ (i j : Fin 3),
ContinuousOn (fun (z : Foundation.Parabolic.ParabolicPoint) => D z i j) (spaceTimeSet Set.univ (Set.Ioi 0)))
(henergy :
∀ (t : ℝ),
0 ≤ t →
MeasureTheory.eLpNorm (regUniformVelocitySlice u t) 2 MeasureTheory.volume ^ 2 + 2 * regUniformDissipation u D t = MeasureTheory.eLpNorm (regMollifyVector ρ ε hε (regUniformSpatialField a)) 2 MeasureTheory.volume ^ 2)
:
(∀ (t : ℝ),
0 ≤ t →
MeasureTheory.eLpNorm
(regUniformVelocitySlice
(lerayLimitPiecewise (spaceTimeSet Set.univ (Set.Ioi 0)) u
fun (z : Foundation.Parabolic.ParabolicPoint) => regUniformMollifiedInitial ρ ε hε a z.1)
t)
2 MeasureTheory.volume ^ 2 ≤ MeasureTheory.eLpNorm (regUniformSpatialField a) 2 MeasureTheory.volume ^ 2) ∧ 2 * ∫⁻ (z : Foundation.Parabolic.ParabolicPoint), ENNReal.ofReal
(spatialGradientSq
(lerayLimitPiecewise (spaceTimeSet Set.univ (Set.Ioi 0)) u
fun (z : Foundation.Parabolic.ParabolicPoint) => regUniformMollifiedInitial ρ ε hε a z.1)
(lerayLimitPiecewise (spaceTimeSet Set.univ (Set.Ioi 0)) D
fun (x : Foundation.Parabolic.ParabolicPoint) => 0)
z) ∂regUniformPositiveTimeMeasure ≤ MeasureTheory.eLpNorm (regUniformSpatialField a) 2 MeasureTheory.volume ^ 2 ∧ ∫⁻ (t : ℝ) in Set.Ioi 0, ∫⁻ (x : Foundation.Parabolic.Vec3), ENNReal.ofReal
(spatialGradientSq
(lerayLimitPiecewise (spaceTimeSet Set.univ (Set.Ioi 0)) u
fun (z : Foundation.Parabolic.ParabolicPoint) => regUniformMollifiedInitial ρ ε hε a z.1)
(lerayLimitPiecewise (spaceTimeSet Set.univ (Set.Ioi 0)) D
fun (x : Foundation.Parabolic.ParabolicPoint) => 0)
(x, t)) ≤ MeasureTheory.eLpNorm (regUniformSpatialField a) 2 MeasureTheory.volume ^ 2
The regularized energy identity gives uniform slice and dissipation bounds
on positive time, after extending the fields measurably outside their source
domain. This is the energy input to prop:leray-limit.
theorem
CKN.Leray.lerayLimit_regularised_h1_slices
(ρ : RegMollifierProfile)
(uε :
(a : Foundation.Parabolic.Vec3 → Foundation.Parabolic.Vec3) →
IsInJ a → ℝ → Foundation.Parabolic.ParabolicPoint → Foundation.Parabolic.Vec3)
(pε :
(a : Foundation.Parabolic.Vec3 → Foundation.Parabolic.Vec3) → IsInJ a → ℝ → Foundation.Parabolic.ParabolicPoint → ℝ)
(hregularised :
∀ (a : Foundation.Parabolic.Vec3 → Foundation.Parabolic.Vec3) (ha : IsInJ a) (ε : ℝ) (hε : 0 < ε),
have u := uε a ha ε;
have p := pε a ha ε;
have D := fun (z : Foundation.Parabolic.ParabolicPoint) (i j : Fin 3) =>
spatialPartial (fun (y : Foundation.Parabolic.ParabolicPoint) => u y i) j z;
have DD := fun (z : Foundation.Parabolic.ParabolicPoint) (i j k : Fin 3) =>
spatialPartial
(fun (y : Foundation.Parabolic.ParabolicPoint) =>
spatialPartial (fun (x : Foundation.Parabolic.ParabolicPoint) => u x i) j y)
k z;
have Dt := fun (z : Foundation.Parabolic.ParabolicPoint) (i : Fin 3) =>
timePartial (fun (y : Foundation.Parabolic.ParabolicPoint) => u y i) z;
have Dp := fun (z : Foundation.Parabolic.ParabolicPoint) (i : Fin 3) =>
spatialPartial (fun (y : Foundation.Parabolic.ParabolicPoint) => p y) i z;
(∃ (hSlice :
∀ (t : ℝ),
0 ≤ t → MeasureTheory.MemLp (fun (x : Foundation.Parabolic.Vec3) => u (x, t)) 2 MeasureTheory.volume),
(Continuous fun (t : ↑(Set.Ici 0)) =>
realVectorL2OfCoordinateFunction (fun (x : Foundation.Parabolic.Vec3) => u (x, ↑t)) ⋯) ∧ (fun (x : Foundation.Parabolic.Vec3) => u (x, 0)) =ᵐ[MeasureTheory.volume]
regUniformMollifiedInitial ρ ε hε a ∧ ∀ (t : ℝ), 0 ≤ t → IsWeakDivFreeL2 fun (x : Foundation.Parabolic.Vec3) => u (x, t)) ∧ (∀ (i : Fin 3),
ContinuousOn (fun (z : Foundation.Parabolic.ParabolicPoint) => u z i) (spaceTimeSet Set.univ (Set.Ioi 0))) ∧ (∀ (i j : Fin 3),
ContinuousOn (fun (z : Foundation.Parabolic.ParabolicPoint) => D z i j)
(spaceTimeSet Set.univ (Set.Ioi 0))) ∧ (∀ (i j k : Fin 3),
ContinuousOn (fun (z : Foundation.Parabolic.ParabolicPoint) => DD z i j k)
(spaceTimeSet Set.univ (Set.Ioi 0))) ∧ (∀ (i : Fin 3),
ContinuousOn (fun (z : Foundation.Parabolic.ParabolicPoint) => Dt z i)
(spaceTimeSet Set.univ (Set.Ioi 0))) ∧ ContinuousOn p (spaceTimeSet Set.univ (Set.Ioi 0)) ∧ (∀ (i : Fin 3),
ContinuousOn (fun (z : Foundation.Parabolic.ParabolicPoint) => Dp z i)
(spaceTimeSet Set.univ (Set.Ioi 0))) ∧ (∀ (i : Fin 3),
ContDiffOn ℝ 1 (fun (z : Foundation.Parabolic.ParabolicPoint) => u z i)
(spaceTimeSet Set.univ (Set.Ioi 0))) ∧ (∀ z ∈ spaceTimeSet Set.univ (Set.Ioi 0),
∀ (i j : Fin 3),
DifferentiableAt ℝ (fun (x : Foundation.Parabolic.Vec3) => D (x, z.2) i j) z.1) ∧ (∀ z ∈ spaceTimeSet Set.univ (Set.Ioi 0),
DifferentiableAt ℝ (fun (x : Foundation.Parabolic.Vec3) => p (x, z.2)) z.1) ∧ (∀ (δ T : ℝ),
0 < δ →
δ < T →
∃ (C : ℝ),
0 ≤ C ∧ ∀ z ∈ spaceTimeSet Set.univ (Set.Icc δ T),
Foundation.Parabolic.vec3EuclideanNorm (u z) ≤ C ∧ |p z| ≤ C ∧ (∀ (i j : Fin 3), |D z i j| ≤ C) ∧ (∀ (i j k : Fin 3), |DD z i j k| ≤ C) ∧ (∀ (i : Fin 3), |Dt z i| ≤ C) ∧ ∀ (i : Fin 3), |Dp z i| ≤ C) ∧ (∀ (δ T : ℝ),
0 < δ →
δ < T →
(∀ (i : Fin 3),
MeasureTheory.MemLp (fun (z : Foundation.Parabolic.ParabolicPoint) => u z i) 2
(MeasureTheory.volume.restrict (spaceTimeSet Set.univ (Set.Ioo δ T)))) ∧ (∀ (i j : Fin 3),
MeasureTheory.MemLp (fun (z : Foundation.Parabolic.ParabolicPoint) => D z i j) 2
(MeasureTheory.volume.restrict (spaceTimeSet Set.univ (Set.Ioo δ T)))) ∧ (∀ (i j k : Fin 3),
MeasureTheory.MemLp
(fun (z : Foundation.Parabolic.ParabolicPoint) => DD z i j k) 2
(MeasureTheory.volume.restrict (spaceTimeSet Set.univ (Set.Ioo δ T)))) ∧ (∀ (i : Fin 3),
MeasureTheory.MemLp
(fun (z : Foundation.Parabolic.ParabolicPoint) => Dt z i) 2
(MeasureTheory.volume.restrict (spaceTimeSet Set.univ (Set.Ioo δ T)))) ∧ MeasureTheory.MemLp p 2
(MeasureTheory.volume.restrict (spaceTimeSet Set.univ (Set.Ioo δ T)))) ∧ (∀ (z : Foundation.Parabolic.ParabolicPoint),
0 < z.2 →
∀ (i : Fin 3),
Dt z i - ∑ j : Fin 3, DD z i j j + ∑ j : Fin 3, regUniformMollifiedVelocity ρ ε hε u z j * D z i j + Dp z i = 0) ∧ (∀ (t : ℝ),
0 < t →
∃ (hF :
∀ (i j : Fin 3),
MeasureTheory.MemLp
(fun (x : Foundation.Parabolic.Vec3) =>
regUniformMollifiedVelocity ρ ε hε u (x, t) i * u (x, t) j)
(ENNReal.ofReal 2) MeasureTheory.volume),
((fun (x : Foundation.Parabolic.Vec3) => p (x, t)) =ᵐ[MeasureTheory.volume]
rieszPressureSliceRepresentative 2 lerayLimit_regularised_basic_data._proof_55
fun (i j : Fin 3) =>
MeasureTheory.MemLp.toLp
(fun (x : Foundation.Parabolic.Vec3) =>
regUniformMollifiedVelocity ρ ε hε u (x, t) i * u (x, t) j)
⋯) ∧ ∀ (ψ : Foundation.Parabolic.Vec3 → ℝ),
ContDiff ℝ (↑⊤) ψ →
HasCompactSupport ψ →
∫ (x : Foundation.Parabolic.Vec3), p (x, t) * spatialLaplacian ψ x = -∑ i : Fin 3,
∑ j : Fin 3,
∫ (x : Foundation.Parabolic.Vec3), regUniformMollifiedVelocity ρ ε hε u (x, t) i * u (x, t) j * mixedSecond ψ i j x) ∧ ∀ (t : ℝ),
0 ≤ t →
MeasureTheory.eLpNorm (regUniformVelocitySlice u t) 2 MeasureTheory.volume ^ 2 + 2 * regUniformDissipation u D t = MeasureTheory.eLpNorm (regMollifyVector ρ ε hε (regUniformSpatialField a)) 2
MeasureTheory.volume ^ 2)
(a : Foundation.Parabolic.Vec3 → Foundation.Parabolic.Vec3)
(ha : IsInJ a)
(ε : ℝ)
(hε : 0 < ε)
:
∀ᵐ (t : ℝ) ∂MeasureTheory.volume.restrict (Set.Ioi 0), ∃ (h : Fin 3 → H1Function Set.univ),
(∀ (i : Fin 3) (x : Vec 3), (h i).toFun x = uε a ha ε (x, t) i) ∧ ∀ (i : Fin 3) (x : Vec 3) (j : Fin 3),
(h i).grad x j = spatialPartial (fun (y : Foundation.Parabolic.ParabolicPoint) => uε a ha ε y i) j (x, t)