Documentation

LeanPool.NavierStokesAndEuler.Euler.TransversePacketForwardGradeBounds

Fixed source costs close the direct-forward packet grade bounds. The profile's positive scalar factor cancels exactly; one spare shift pays the fixed operator costs, with no change of external radius.

The genuine direct-forward solution has amplitude-linear estimates at one source-dependent radius, for arbitrary admissible initial data and forcing.

Homogeneity restores a common arbitrary envelope for genuine forcing and initial data, without adding either envelope to the radius guards.

theorem EulerTransversePacketProvider.pair_amplitude_bound {P : } [Fact (0 < P)] {U : Type u_1} [NormedAddCommGroup U] [InnerProductSpace U] {D : Data U} {ι : Type u_2} [Fintype ι] (S : {r : EulerPacketProfileRecursion.VectorField} → Forcing P D rInitialData P DC((Set.Icc 0 D.T), (EulerLiftedGradientSpace.LiftL2 P))) (hs : ∀ {r : EulerPacketProfileRecursion.VectorField} (G : Forcing P D r) (I : InitialData P D), ContDiff fun (a : EulerLiftedGradientSpace.LiftTangent) => (EulerLpCylinderTranslation.pathTranslate P a) (S G I)) (hm : ∀ {r r' : EulerPacketProfileRecursion.VectorField} (G : Forcing P D r) (H : Forcing P D r') (I J : InitialData P D) (a : ), H.path = a G.pathJ.value = a I.valueS H J = a S G I) (g : C((Set.Icc 0 D.T), )) (hg : ∀ (t : (Set.Icc 0 D.T)), 0 < g t) (directions : ιEulerLiftedGradientSpace.LiftTangent) (q : ) (R C : ) (d e : ) (hunit : ∀ {r : EulerPacketProfileRecursion.VectorField} (G : Forcing P D r) (I : InitialData P D), (∀ (n : ), EulerParameterWordGevrey.block directions q (fun (a : EulerLiftedGradientSpace.LiftTangent) => (EulerLpCylinderTranslation.pathTranslate P a) ((EulerContinuousTimeWeight.normalize g hg) (HistoryData.forcingPath G))) n 0 EulerGevrey.majorant R d n)(∀ (n : ), EulerParameterWordGevrey.block directions q (fun (a : EulerLiftedGradientSpace.LiftTangent) => (EulerLpCylinderTranslation.translate P a) I.value) n 0 EulerGevrey.majorant R d n)∀ (n : ), EulerParameterWordGevrey.block directions q (fun (a : EulerLiftedGradientSpace.LiftTangent) => (EulerLpCylinderTranslation.pathTranslate P a) ((EulerContinuousTimeWeight.normalize g hg) (S G I))) n 0 C * EulerGevrey.majorant R e n) {r : EulerPacketProfileRecursion.VectorField} (G : Forcing P D r) (I : InitialData P D) (A : ) (hA : 0 A) (hb : ∀ (n : ), EulerParameterWordGevrey.block directions q (fun (a : EulerLiftedGradientSpace.LiftTangent) => (EulerLpCylinderTranslation.pathTranslate P a) ((EulerContinuousTimeWeight.normalize g hg) (HistoryData.forcingPath G))) n 0 A * EulerGevrey.majorant R d n) (hi : ∀ (n : ), EulerParameterWordGevrey.block directions q (fun (a : EulerLiftedGradientSpace.LiftTangent) => (EulerLpCylinderTranslation.translate P a) I.value) n 0 A * EulerGevrey.majorant R d n) (n : ) :

All eight genuine direct-forward outputs obey one fixed mixed-word Sobolev budget. The input radius is retained, both data amplitudes remain outside the solve, and at most two derivative shifts are spent. All normalization uses the literal positive time profile without differentiating that profile.

Same-radius estimates for the actual corrector, divided by the prescribed time profile.

theorem EulerTransversePacketProvider.Forcing.potentialTimePath_normalized_bound {P : } [Fact (0 < P)] {U : Type u_1} [NormedAddCommGroup U] [InnerProductSpace U] [CompleteSpace U] {D : Data U} {raw : EulerPacketProfileRecursion.VectorField} (G : Forcing P D raw) (I : InitialData P D) (g : C((Set.Icc 0 D.T), )) (hg : ∀ (t : (Set.Icc 0 D.T)), 0 < g t) (q : ) (Rc C R A : ) (hRc : 0 Rc) (hC : 0 C) (hA : 0 A) (hR : EulerParameterWordGevrey.sobolevCoefficientRadius (Fin 4) Rc R) (d : ) (hbA : ∀ (n : ), EulerParameterWordGevrey.block EulerCylinderSobolev.standardDirection q (fun (a : EulerLiftedGradientSpace.LiftTangent) => (EulerLpCylinderTranslation.pathTranslate P a) ((EulerContinuousTimeWeight.normalize g hg) (G.fullVelocityPath I))) n 0 A * EulerGevrey.majorant R d n) (hbAt : ∀ (n : ), EulerParameterWordGevrey.block EulerCylinderSobolev.standardDirection q (fun (a : EulerLiftedGradientSpace.LiftTangent) => (EulerLpCylinderTranslation.pathTranslate P a) ((EulerContinuousTimeWeight.normalize g hg) (G.fullDerivativePath I))) n 0 A * EulerGevrey.majorant R d n) (hbK : ∀ (n : ) (a : EulerSmoothLimit.Space), iteratedFDeriv n (EulerMeanCoefficients.translateCoefficientPath D.potentialCoefficientPath) a C * EulerGevrey.majorant Rc 0 n) (hbKt : ∀ (n : ) (a : EulerSmoothLimit.Space), iteratedFDeriv n (EulerMeanCoefficients.translateCoefficientPath D.potentialDerivative) a C * EulerGevrey.majorant Rc 0 n) (n : ) :
theorem EulerTransversePacketProvider.Forcing.correctorPath_normalized_bound {P : } [Fact (0 < P)] {U : Type u_1} [NormedAddCommGroup U] [InnerProductSpace U] [CompleteSpace U] {D : Data U} {raw : EulerPacketProfileRecursion.VectorField} (G : Forcing P D raw) (I : InitialData P D) (g : C((Set.Icc 0 D.T), )) (hg : ∀ (t : (Set.Icc 0 D.T)), 0 < g t) (q : ) (Rc C R A : ) (hRc : 0 Rc) (hC : 0 C) (hA : 0 A) (hR : EulerParameterWordGevrey.sobolevCoefficientRadius (Fin 4) Rc R) (d : ) (hbA : ∀ (n : ), EulerParameterWordGevrey.block EulerCylinderSobolev.standardDirection q (fun (a : EulerLiftedGradientSpace.LiftTangent) => (EulerLpCylinderTranslation.pathTranslate P a) ((EulerContinuousTimeWeight.normalize g hg) (G.fullVelocityPath I))) n 0 A * EulerGevrey.majorant R d n) (hbK : ∀ (n : ) (a : EulerSmoothLimit.Space), iteratedFDeriv n (EulerMeanCoefficients.translateCoefficientPath D.potentialCoefficientPath) a C * EulerGevrey.majorant Rc 0 n) (hbI : ∀ (n : ) (a : EulerSmoothLimit.Space), iteratedFDeriv n (EulerMeanCoefficients.translateCoefficientPath D.FInv.field) a C * EulerGevrey.majorant Rc 0 n) (n : ) :
theorem EulerTransversePacketProvider.Forcing.correctorTimePath_normalized_bound {P : } [Fact (0 < P)] {U : Type u_1} [NormedAddCommGroup U] [InnerProductSpace U] [CompleteSpace U] {D : Data U} {raw : EulerPacketProfileRecursion.VectorField} (G : Forcing P D raw) (I : InitialData P D) (g : C((Set.Icc 0 D.T), )) (hg : ∀ (t : (Set.Icc 0 D.T)), 0 < g t) (q : ) (Rc C R A : ) (hRc : 0 Rc) (hC : 0 C) (hA : 0 A) (hR : EulerParameterWordGevrey.sobolevCoefficientRadius (Fin 4) Rc R) (d : ) (hbA : ∀ (n : ), EulerParameterWordGevrey.block EulerCylinderSobolev.standardDirection q (fun (a : EulerLiftedGradientSpace.LiftTangent) => (EulerLpCylinderTranslation.pathTranslate P a) ((EulerContinuousTimeWeight.normalize g hg) (G.fullVelocityPath I))) n 0 A * EulerGevrey.majorant R d n) (hbAt : ∀ (n : ), EulerParameterWordGevrey.block EulerCylinderSobolev.standardDirection q (fun (a : EulerLiftedGradientSpace.LiftTangent) => (EulerLpCylinderTranslation.pathTranslate P a) ((EulerContinuousTimeWeight.normalize g hg) (G.fullDerivativePath I))) n 0 A * EulerGevrey.majorant R d n) (hbK : ∀ (n : ) (a : EulerSmoothLimit.Space), iteratedFDeriv n (EulerMeanCoefficients.translateCoefficientPath D.potentialCoefficientPath) a C * EulerGevrey.majorant Rc 0 n) (hbKt : ∀ (n : ) (a : EulerSmoothLimit.Space), iteratedFDeriv n (EulerMeanCoefficients.translateCoefficientPath D.potentialDerivative) a C * EulerGevrey.majorant Rc 0 n) (hbI : ∀ (n : ) (a : EulerSmoothLimit.Space), iteratedFDeriv n (EulerMeanCoefficients.translateCoefficientPath D.FInv.field) a C * EulerGevrey.majorant Rc 0 n) (hbIt : ∀ (n : ) (a : EulerSmoothLimit.Space), iteratedFDeriv n (EulerMeanCoefficients.translateCoefficientPath D.inverseDerivative) a C * EulerGevrey.majorant Rc 0 n) (n : ) :

Bounds for the actual high-pressure gradient from the normalized forcing and solved velocity.

theorem EulerTransversePacketProvider.Forcing.source_pressure_gradient_bound {P : } [Fact (0 < P)] {U : Type u_1} [NormedAddCommGroup U] [InnerProductSpace U] [CompleteSpace U] {D : Data U} {raw : EulerPacketProfileRecursion.VectorField} (G : Forcing P D raw) (I : InitialData P D) (g : C((Set.Icc 0 D.T), )) (hg : ∀ (t : (Set.Icc 0 D.T)), 0 < g t) (q : ) (Rc Cm CM Ri R Af Av : ) (hRc : 0 Rc) (hCm : 0 Cm) (hCM : 0 CM) (hAf : 0 Af) (hAv : 0 Av) (hRi : 2 * EulerTimeLpGramGevrey.gramCost D.normalLower Cm 1 * (Rc + 1) Ri) (hR : EulerParameterWordGevrey.sobolevCoefficientRadius (Fin 4) (4 * Ri) R) (hm : ∀ (n : ) (t : (Set.Icc 0 D.T)) (x : EulerSmoothLimit.Space), iteratedFDeriv n (⇑(D.normal.field t)) x Cm * EulerGevrey.majorant Rc 0 n) (hM : ∀ (n : ) (t : (Set.Icc 0 D.T)) (x : EulerSmoothLimit.Space), iteratedFDeriv n (⇑(D.M.field t)) x CM * EulerGevrey.majorant Rc 0 n) (d : ) (hf : ∀ (n : ), EulerParameterWordGevrey.block EulerCylinderSobolev.standardDirection q (fun (a : EulerLiftedGradientSpace.LiftTangent) => (EulerLpCylinderTranslation.pathTranslate P a) ((EulerContinuousTimeWeight.normalize g hg) ((EulerLpCylinderPaths.includePath P D.support ) G.path))) n 0 Af * EulerGevrey.majorant R d n) (hv : ∀ (n : ), EulerParameterWordGevrey.block EulerCylinderSobolev.standardDirection q (fun (a : EulerLiftedGradientSpace.LiftTangent) => (EulerLpCylinderTranslation.pathTranslate P a) ((EulerContinuousTimeWeight.normalize g hg) ((EulerLpCylinderPaths.includePath P D.support ) (G.velocityPath I)))) n 0 Av * EulerGevrey.majorant R d n) (n : ) :

Pressure amplitude, given by P*pressureCost (Fin 4) q N.Ri N.C N.C 1 L.commonCost.

Equations
Instances For

    Potential amplitude, given by 3*N.blockAmplitude*(P*L.commonCost).

    Equations
    Instances For

      Potential time amplitude, given by 6*N.blockAmplitude*(P*L.commonCost).

      Equations
      Instances For

        Corrector amplitude, given by 27*N.blockAmplitude^2*(P*L.commonCost).

        Equations
        Instances For

          Corrector time amplitude, given by 108*N.blockAmplitude^2*(P*L.commonCost).

          Equations
          Instances For

            The unscaled data cost is fixed before the positive amplitude and grade. It is one for forced profiles and the literal compact-wave cost for the primary.

            Instances For
              theorem EulerTransversePacketForward.Budget.grade_fields {P : } [Fact (0 < P)] {U : Type u_1} [NormedAddCommGroup U] [InnerProductSpace U] [CompleteSpace U] {D : EulerTransversePacketProvider.Data U} (L : Budget D (Fin 4) 6) (N : EulerTransversePacketJoin.NormalBudget D 6 L.R) (C : ) (W : L.GradeGuards N C) {raw : EulerPacketProfileRecursion.VectorField} (G : EulerTransversePacketProvider.Forcing P D raw) (I : EulerTransversePacketProvider.InitialData P D) (c : ) (hc : 0 < c) (d e : ) (hroom : d + 3 e) (hforce : ∀ (n : ), EulerParameterWordGevrey.block EulerCylinderSobolev.standardDirection 6 (fun (a : EulerLiftedGradientSpace.LiftTangent) => (EulerLpCylinderTranslation.pathTranslate P a) ((EulerContinuousTimeWeight.normalize L.g ) (EulerTransversePacketProvider.HistoryData.forcingPath G))) n 0 c * C * EulerGevrey.majorant L.R d n) (hinitial : ∀ (n : ), EulerParameterWordGevrey.block EulerCylinderSobolev.standardDirection 6 (fun (a : EulerLiftedGradientSpace.LiftTangent) => (EulerLpCylinderTranslation.translate P a) I.value) n 0 c * C * EulerGevrey.majorant L.R d n) :
              ((G.vectorField I).normalized (c L.g) ).WordBound 6 L.R 1 e ((G.vectorDerivativeField I).normalized (c L.g) ).WordBound 6 L.R 1 e ((G.curlCorrectorField I).normalized (c L.g) ).WordBound 6 L.R 1 e ((G.correctorDerivativeField I).normalized (c L.g) ).WordBound 6 L.R 1 e ((G.scalarGradientField I).normalized (c L.g) ).WordBound 6 L.R 1 e