Documentation

LeanPool.Superdiffusion.Algsuperdiff.Section3.Provider.Multiscale.HsepReduction

HsepReduction #

Ported from scottnarmstrong/Superdiffusion at 7f20476385d4af418f110303085ad0740c9eba46. Module imports, support namespace and local option directives adapted for Lean Pool.

The 3^{gamma hsep} reduction: the Orlicz half #

Step 3 of p.bfA.multiscalebound (ABK26) reduces the prefactor 3^{gamma hsep} to 2 + (something of size exp(-c gamma^{-1})).

3^{gamma hsep}  <=  1 + 3 gamma hsep 1_{gamma hsep <= 3^{-4}}
                       + 3^{gamma hsep} 1_{gamma hsep > 3^{-4}}
                <=  2 + 3^{gamma hsep} 1_{gamma hsep > 3^{-4}}
                <=  2 + O_{Gamma_4}(1) . O_{Gamma_4}(exp(-c gamma^{-1})) .

The deterministic half is proved: ConclusionArithmetic.three_rpow_le_two_add_indicator. This module proves the Orlicz half, i.e. the last line, at explicit exponents and an explicit scale, out of the three ingredients names:

Exponent bookkeeping #

prints Gamma_4 on both factors and on the product. At this repository's proved amplitude index the input is Gamma_{1-sigma} with sigma > 0, i.e. sigma_1 < 1, so what is proved is

Gamma_tau ,   tau = (1-sigma) sigma_2 / ((1-sigma) + sigma_2)

on the product. sigma_2 > 0 is free, so tau can be made any value below `1

What is not proved #

The final numerical comparison "(K 3^{-b floor((81 gamma)^{-1})})^{(1-sigma)/sigma_2} <= C exp(-c gamma^{-1})" is not proved: the scale is carried in the exact closed form above, which is stronger than any exp(-c gamma^{-1}) claim and avoids inventing a c. A consumer that wants the printed shape can bound floor((81 gamma)^{-1}) >= (81 gamma)^{-1} - 1.

References #

Monotonicity of the weak-Orlicz bound #

A pointwise-smaller variable inherits the Gamma_sigma bound at the same scale: the upper-tail events are nested. (CoarseGraining carries mono_scale; this is the missing mono in the function argument.)

The O(1) factor: 3^{gamma hsep} at Gamma_{1-sigma} #

theorem Algsuperdiff.Section3.Provider.Multiscale.isBigOWith_gammaSigma_three_rpow_gamma_hsep_of_gates {d : ℕ} (M : ABKModel d) {m : ℤ} {E sigma b gam : ℝ} (hd : 2 ≤ d) (hE : 1 ≤ E) (hS : Frozen.Section3.inductionState M (m - 1) ⟨E, hE⟩) (hsigma0 : 0 < sigma) (hsigma : sigma ≤ 1 / 2) (hb0 : 0 < b) (hb1 : b ≤ 1 / 8) (hEexp : Real.exp (Percolation.badClustersConst d / sigma) ≤ E) (hE4 : 4 ≤ E) (hunit : BadEvents.unitGate M) (hgamma20 : M.gamma ≤ 1 / 20) (hinvSq : E⁻¹ ^ 2 ≤ Disorder.cstar M) (hEb : Percolation.badClustersConst d / b ≤ E) (hgamma : M.gamma ≤ E ^ (-5)) (hgammab : gam ≤ b) :

e.hsep.tails read at the Step-3 prefactor ('s O_{Gamma_4}(1) factor). Under gamma <= b, the prefactor 3^{gamma hsep} inherits the proved Gamma_{1-sigma} bound of 3^{b hsep} at the same amplitude.

The indicator factor: e.indc.O.sigma at the threshold #

theorem Algsuperdiff.Section3.Provider.Multiscale.indicator_gamma_hsep_gt_le_indicator_natLt {d : ℕ} (M : ABKModel d) {m : ℤ} {E b gam : ℝ} (hgam : 0 < gam) (omega : Cutoff.CutoffSample d) :
(if 81⁻¹ < gam * ↑(Percolation.hsep M m E b omega) then 1 else 0) ≤ {omega : Cutoff.CutoffSample d | ⌊(81 * gam)⁻¹⌋₊ < Percolation.hsep M m E b omega}.indicator (fun (x : Cutoff.CutoffSample d) => 1) omega

The threshold event, discretized: gamma hsep > 3^{-4} forces hsep > (81 gamma)^{-1}, hence floor((81 gamma)^{-1}) < hsep.

theorem Algsuperdiff.Section3.Provider.Multiscale.isBigOWith_gammaSigma_indicator_gamma_hsep_gt_of_gates {d : ℕ} (M : ABKModel d) {m : ℤ} {E sigma sigma2 b gam : ℝ} (hd : 2 ≤ d) (hE : 1 ≤ E) (hS : Frozen.Section3.inductionState M (m - 1) ⟨E, hE⟩) (hsigma0 : 0 < sigma) (hsigma : sigma ≤ 1 / 2) (hsigma2 : 0 < sigma2) (hb0 : 0 < b) (hb1 : b ≤ 1 / 8) (hEexp : Real.exp (Percolation.badClustersConst d / sigma) ≤ E) (hE4 : 4 ≤ E) (hunit : BadEvents.unitGate M) (hgamma20 : M.gamma ≤ 1 / 20) (hinvSq : E⁻¹ ^ 2 ≤ Disorder.cstar M) (hEb : Percolation.badClustersConst d / b ≤ E) (hgamma : M.gamma ≤ E ^ (-5)) (hgam : 0 < gam) :

e.indc.O.sigma's indicator. The indicator `1_{gamma hsep

3^{-4}}isO_{Gamma_{sigma_2}}` at the scale

  (K 3^{-b floor((81 gamma)^{-1})})^{(1-sigma)/sigma_2} ,
  K = hsepAmplitude sigma b ,

which is's own exp(-c gamma^{-1}) size (the exponent is linear in gamma^{-1}). The free exponent sigma_2 > 0 is e.indc.O.sigma's own t = 1/sigma_2.

The product: e.multGammasig #

theorem Algsuperdiff.Section3.Provider.Multiscale.isBigOWith_gammaSigma_three_rpow_gamma_hsep_mul_indicator_of_gates {d : ℕ} (M : ABKModel d) {m : ℤ} {E sigma sigma2 b gam : ℝ} (hd : 2 ≤ d) (hE : 1 ≤ E) (hS : Frozen.Section3.inductionState M (m - 1) ⟨E, hE⟩) (hsigma0 : 0 < sigma) (hsigma : sigma ≤ 1 / 2) (hsigma2 : 0 < sigma2) (hb0 : 0 < b) (hb1 : b ≤ 1 / 8) (hEexp : Real.exp (Percolation.badClustersConst d / sigma) ≤ E) (hE4 : 4 ≤ E) (hunit : BadEvents.unitGate M) (hgamma20 : M.gamma ≤ 1 / 20) (hinvSq : E⁻¹ ^ 2 ≤ Disorder.cstar M) (hEb : Percolation.badClustersConst d / b ≤ E) (hgamma : M.gamma ≤ E ^ (-5)) (hgam : 0 < gam) (hgammab : gam ≤ b) :
HCPolySupport.IndependentSums.IsBigOWith (↑(Cutoff.cutoffSampleLaw M)) (HCPolySupport.IndependentSums.gammaSigma ((1 - sigma) * sigma2 / (1 - sigma + sigma2))) (fun (omega : Cutoff.CutoffSample d) => 3 ^ (gam * ↑(Percolation.hsep M m E b omega)) * if 81⁻¹ < gam * ↑(Percolation.hsep M m E b omega) then 1 else 0) (HCPolySupport.Book.Ch04.gammaProductConst (1 - sigma) sigma2 * Percolation.hsepAmplitude sigma b * truncationIndicatorScale b sigma sigma2 (Percolation.hsepAmplitude sigma b) ⌊(81 * gam)⁻¹⌋₊)

The Orlicz half's display. The random summand's corrected inequality is Gamma_tau with tau = (1-sigma) sigma_2/((1-sigma) + sigma_2) at the explicit scale

  gammaProductConst (1-sigma) sigma_2 . hsepAmplitude sigma b
    . (hsepAmplitude sigma b . 3^{-b floor((81 gamma)^{-1})})^{(1-sigma)/sigma_2} .
theorem Algsuperdiff.Section3.Provider.Multiscale.three_rpow_gamma_hsep_le_two_add_orlicz_of_gates {d : ℕ} (M : ABKModel d) {m : ℤ} {E sigma sigma2 b gam : ℝ} (hd : 2 ≤ d) (hE : 1 ≤ E) (hS : Frozen.Section3.inductionState M (m - 1) ⟨E, hE⟩) (hsigma0 : 0 < sigma) (hsigma : sigma ≤ 1 / 2) (hsigma2 : 0 < sigma2) (hb0 : 0 < b) (hb1 : b ≤ 1 / 8) (hEexp : Real.exp (Percolation.badClustersConst d / sigma) ≤ E) (hE4 : 4 ≤ E) (hunit : BadEvents.unitGate M) (hgamma20 : M.gamma ≤ 1 / 20) (hinvSq : E⁻¹ ^ 2 ≤ Disorder.cstar M) (hEb : Percolation.badClustersConst d / b ≤ E) (hgamma : M.gamma ≤ E ^ (-5)) (hgam : 0 < gam) (hgammab : gam ≤ b) :
(∀ (omega : Cutoff.CutoffSample d), 3 ^ (gam * ↑(Percolation.hsep M m E b omega)) ≤ 2 + 3 ^ (gam * ↑(Percolation.hsep M m E b omega)) * if 81⁻¹ < gam * ↑(Percolation.hsep M m E b omega) then 1 else 0) ∧ HCPolySupport.IndependentSums.IsBigOWith (↑(Cutoff.cutoffSampleLaw M)) (HCPolySupport.IndependentSums.gammaSigma ((1 - sigma) * sigma2 / (1 - sigma + sigma2))) (fun (omega : Cutoff.CutoffSample d) => 3 ^ (gam * ↑(Percolation.hsep M m E b omega)) * if 81⁻¹ < gam * ↑(Percolation.hsep M m E b omega) then 1 else 0) (HCPolySupport.Book.Ch04.gammaProductConst (1 - sigma) sigma2 * Percolation.hsepAmplitude sigma b * truncationIndicatorScale b sigma sigma2 (Percolation.hsepAmplitude sigma b) ⌊(81 * gam)⁻¹⌋₊)

The Step 3 display, both halves. Pointwise the prefactor is <= 2 + Z, and Z is Gamma_tau at the explicit exp(-c gamma^{-1})-sized scale:

3^{gamma hsep}  <=  2 + 3^{gamma hsep} 1_{gamma hsep > 3^{-4}} ,
3^{gamma hsep} 1_{gamma hsep > 3^{-4}}
    <=  O_{Gamma_tau}( C . K . (K 3^{-b floor((81 gamma)^{-1})})^{(1-sigma)/sigma_2} ) .

The first line is ConclusionArithmetic.three_rpow_le_two_add_indicator (ABK26's own deterministic split, at 3 . 3^{-4} < 1); the second is isBigOWith_gammaSigma_three_rpow_gamma_hsep_mul_indicator. Together they are exactly the corrected display of ABK26, with the printed O_{Gamma_4}(exp(-c gamma^{-1})) summand of the right-hand side removed as ABK26 requires.