Documentation

LeanPool.HighContrastHomogenization.Entry.Multiscale.Global.RunState

High-contrast homogenization: Entry.Multiscale.Global.RunState #

Imported from the Apache-2.0 HighContrastHomogenization development at commit 7a13dbcd8d6609264a713373f5c69ceeac870472.

The finite run of p.scale.selection: the state and the entry/initialization lemmas #

This file carries the continuing datum of the run that closes global_run (p.global.selection) and the three landed lemmas that do not mention a step:

The steps are in HCPoly.Entry.Multiscale.Global.RunSteps and HCPoly.Entry.Multiscale.Global.RunStepsChange, the stop and the stopping argument in HCPoly.Entry.Multiscale.Global.RunStop, and the assembly with the two Selects projections in HCPoly.Entry.Multiscale.Global.RunAssembly.

§1 The run state #

structure HCPolySupport.HighContrast.Multiscale.RunState {d : ℕ} (P : MeasureTheory.Measure (CoeffSpace d)) (γ : ℝ) (S : SelectionData) (ε σ B : ℝ) (E : BlockMat d) (H jStar : ℕ) (n₀ : ℤ) :

The continuing datum of the run (p.global.selection) together with the entry invariants of SelectionData.Selects. i is the step index; n₀ is the entry generation of initial_provider_input.

  • m : Mat d

    The retained metric 𝔪_i.

  • k : ℤ

    The retained generation k_i of the geometry.

  • n : ℤ

    The current generation n_i.

  • i : ℕ

    The step index i.

  • hm : Matrix.PosDef self.m

    𝔪_i > 0.

  • hk : ↑jStar ≤ self.k

    j_* ≤ k_i.

  • hkn : self.k ≤ self.n

    k_i ≤ n_i.

  • hecc : 1 / 2 * Real.log (‖self.m‖ * ‖self.m⁻¹‖) ≤ ε / ↑(S.L ε σ) * (↑self.k - ↑jStar - ↑⌈B * Real.logb 3 (2 + aspectRatio E)⌉)

    e.renormalization.eccentricity.output at (𝔪_i, k_i).

  • hone : self.k = self.n → profile P γ (Geometry.explicitRoundedGrid jStar self.m) jStar self.n self.n + determinantDrift P γ (Geometry.explicitRoundedGrid jStar self.m) jStar self.n ≤ 1

    e.renormalization.output, first clause.

  • hgap : self.k < self.n → self.k + ↑S.h ≤ self.n

    e.renormalization.output, second clause.

  • hpr : projectiveDistance 1 self.m ≤ ε * (↑self.i + 1)

    Accumulated projective displacement (p.global.selection).

  • hgen : self.n ≤ n₀ + (2 * ↑(S.L ε σ) + ↑H + ↑S.h) * (↑self.i + 1)

    Generation budget (p.global.selection).

  • hlt : self.k < self.n

    k_i < n_i. Every step lemma needs k < n, and the stop configuration asserts it; at k = n the only clause SelectionData.Selects offers is the Alternative-1 start-up, which by design is not a counted step. run_initial produces k = n₀ < n₀ + S.h and every step output keeps it.

Instances For
    noncomputable def HCPolySupport.HighContrast.Multiscale.runGauge {d : ℕ} (P : MeasureTheory.Measure (CoeffSpace d)) (γ : ℝ) (jStar : ℕ) (η a w : ℝ) (h : ℕ) (m : Mat d) (k n : ℤ) :

    The transferred Lyapunov gauge Φ_tilde = Φ + w·R of run_energy_transfer: the potential plus w times the determinant reserve of the retained grid.

    Equations
    • One or more equations did not get rendered due to their size.
    Instances For

      §2 Entry premises of Selects (landed) #

      theorem HCPolySupport.HighContrast.Multiscale.run_entry_containment {d : ℕ} (hd : 2 ≤ d) (jStar : ℕ) (hjStar : 2 * d ≤ 3 ^ jStar) (m mP : Mat d) (hm : Matrix.PosDef m) (hmP : Matrix.PosDef mP) (j jP : ℤ) (e : ℝ) (he : 0 ≤ e) (hecc : 1 / 2 * Real.log (‖m‖ * ‖m⁻¹‖) ≤ e) (heccP : 1 / 2 * Real.log (‖mP‖ * ‖mP⁻¹‖) ≤ e) (hj : ↑j + (Real.logb 3 (2 * √(4 * ↑d)) + e / Real.log 3) ≤ 2 * ↑jStar) (hjP : ↑jP + (Real.logb 3 (2 * √(4 * ↑d)) + e / Real.log 3) ≤ 2 * ↑jStar) :

      (R1) Entry containment. The containment premise of Selects, for two grids whose metrics both have eccentricity at most e. Route: explicitRoundedGrid_opNorm_le gives ‖𝒬(𝔪)‖ ≤ 2(‖𝔪‖‖𝔪⁻¹‖)^{1/2} ≤ 2 e^{e}, and adaptedCell_subset_centeredCube_of_opNorm at ρ := 2 * Real.exp e needs (j:ℝ) + logb 3 (2√d · 2e^{e}) ≤ 2 j_*; since 2√d · 2 = 2√(4d), that is the hypothesis hj (the factor 2 of explicitRoundedGrid_opNorm_le absorbed by instantiating containment_arith at d := 4d), and logb 3 (2√(4d) · e^{e}) = logb 3 (2√(4d)) + e / log 3.

      §3 Initialization (landed) #

      theorem HCPolySupport.HighContrast.Multiscale.run_initial {d : ℕ} (hd : 2 ≤ d) (γ : ℝ) (hγ : γ ∈ Set.Ico 0 1) (P : MeasureTheory.Measure (CoeffSpace d)) (E : BlockMat d) (Ψ : ℝ → ℝ) (K : ℝ) (Src : CoeffSpace d → ℝ) (hP : MeasureTheory.IsProbabilityMeasure P) (hst : IsStationaryLaw P) (hur : IsUnitRangeLaw P) (hce : CoarseEllipticityDagger P γ E Ψ K Src) (S : SelectionData) (ε σ B : ℝ) (hε : ε ∈ Set.Ioc 0 S.eps0) (hσ : σ ∈ Set.Ioc 0 ε) (hB : 1 ≤ B) (H jStar : ℕ) (hjStar : 2 * d ≤ 3 ^ jStar) (hh1 : 1 ≤ S.h) (hL1 : 1 ≤ S.L ε σ) (n₀ : ℤ) (hn₀ : ↑jStar + ⌈B * Real.logb 3 (2 + aspectRatio E)⌉ ≤ n₀) (a C C' Cdet Cgeom : ℝ) (hC : 1 ≤ C) (ha1 : 1 ≤ a) (hCdet : 0 ≤ Cdet) (hCgeom : 0 < Cgeom) (hgeo : projectiveDistance 1 (explicitCanonicalMetric (adaptedMean P 1 n₀)) ≤ Cgeom * Real.log (2 + 4 * aspectRatio E)) (hdet : detIncrement P (Geometry.explicitRoundedGrid jStar 1) n₀ (n₀ + ↑S.h) ≤ Cdet * Real.log (2 + aspectRatio E)) (harith : ∀ (AR Δ : ℝ), 0 ≤ AR → 0 ≤ Δ → Δ ≤ Cdet * Real.log (2 + AR) → Real.log (1 + C * ↑S.h) + ↑(bigQ d γ) * Δ + a * Cgeom * Real.log (2 + 4 * AR) ≤ C' * Real.logb 3 (2 + AR)) (hinit : profile P γ (Geometry.explicitRoundedGrid jStar 1) jStar n₀ n₀ + determinantDrift P γ (Geometry.explicitRoundedGrid jStar 1) jStar n₀ ≤ 1) (hstart : profile P γ (Geometry.explicitRoundedGrid jStar 1) jStar n₀ (n₀ + ↑S.h) + determinantDrift P γ (Geometry.explicitRoundedGrid jStar 1) jStar (n₀ + ↑S.h) ≤ C * (profile P γ (Geometry.explicitRoundedGrid jStar 1) jStar n₀ n₀ + determinantDrift P γ (Geometry.explicitRoundedGrid jStar 1) jStar n₀ + Real.exp (↑(bigQ d γ) * detIncrement P (Geometry.explicitRoundedGrid jStar 1) n₀ (n₀ + ↑S.h)) - 1)) (hone' : n₀ = n₀ + ↑S.h → profile P γ (Geometry.explicitRoundedGrid jStar 1) jStar (n₀ + ↑S.h) (n₀ + ↑S.h) + determinantDrift P γ (Geometry.explicitRoundedGrid jStar 1) jStar (n₀ + ↑S.h) ≤ 1) :
      ∃ (st : RunState P γ S ε σ B E H jStar n₀), st.m = 1 ∧ st.k = n₀ ∧ st.n = n₀ + ↑S.h ∧ st.i = 0 ∧ potential P γ jStar (S.eta ε σ) a st.m st.k st.n ≤ C' * Real.logb 3 (2 + aspectRatio E)

      (R4) The initial state and the initial potential (p.global.selection). initial_provider_input gives n₀ with 𝒫 + D ≤ ηinit = 1 at (Id, n₀, n₀) and d_pr(Id, m(𝐀_{n₀,Id})) ≤ Cgeom log(2+4Π); the Alt-1 start-up disjunct of Selects at that tuple (hstart) advances to (Id, n₀, n₀ + h), which is the paper's (𝔪₁, 𝔮₁, k₁, n₁). The potential bound is scalar_span (ScalarLemmas.lean, ℓ = 1) followed by the arithmetic comparison of the logarithmic terms supplied by harith, whose premise Δ ≤ Cdet log(2+Π) at n₀ is hdet, obtained from blockLogDet_le_of_initial_sandwich + refBlock_le_six_aspect applied to the sandwich hsand₁/hsand₂. The invariants: hm is Matrix.PosDef.one; hecc is ‖1‖‖1⁻¹‖ = 1 and hn₀; hone is vacuous for 1 ≤ S.h; hgap is rfl-level; hpr is projectiveDistance_self; hgen is hn₀.

      theorem HCPolySupport.HighContrast.Multiscale.run_initial_reserve {d : ℕ} (hd : 2 ≤ d) (γ : ℝ) (hγ : γ ∈ Set.Ico 0 1) (P : MeasureTheory.Measure (CoeffSpace d)) (E : BlockMat d) (Ψ : ℝ → ℝ) (K : ℝ) (Src : CoeffSpace d → ℝ) (hP : MeasureTheory.IsProbabilityMeasure P) (hst : IsStationaryLaw P) (hur : IsUnitRangeLaw P) (hce : CoarseEllipticityDagger P γ E Ψ K Src) (jStar : ℕ) (hjStar : 2 * d ≤ 3 ^ jStar) (h : ℕ) (n₀ : ℤ) (hjn₀ : ↑jStar ≤ n₀) (hEs : IsSymmetricBlockMat E) (hE : Book.Ch02.BlockPosDef E) (hAR : 0 < aspectRatio E) (hsand₁ : BlockMatLoewnerLE (blockScale (1 / 2) (ofFullBlockMat (toFullBlockMat (blockSwap d) * (toFullBlockMat E)⁻¹ * toFullBlockMat (blockSwap d)))) (adaptedMean P 1 n₀)) (hsand₂ : BlockMatLoewnerLE (adaptedMean P 1 n₀) (blockScale 2 E)) :
      runReserve (fun (r : ℤ) => blockLogDet (adaptedMean P (Geometry.explicitRoundedGrid jStar 1) r)) h n₀ (n₀ + ↑h) ≤ (↑h + 2) * (↑d * Real.log (24 * aspectRatio E))

      (R5) The charge budget, as the initial reserve bound (p.global.selection). The determinant charges are transferred into the reserve step by step (run_energy_transfer), so exists_stop_of_potential runs with charge ≡ 0 and Bud = 0 and the paper's budget Φ₁ + aC(h+2)log(24Π) is exactly potential ≤ C' log₃(2+Π) (R4) plus this bound on the initial reserve. Route: run_reserve_initial (with the extra binder hjn₀ : (jStar : ℤ) ≤ n₀) with monotonicity of r ↦ blockLogDet (adaptedMean P (𝒬 Id) r) from the annealed order, then blockLogDet_le_of_initial_sandwich (whose hsix is refBlock_le_six_aspect) at the sandwich hsand₁/hsand₂ of initial_provider_input.