Documentation

LeanPool.HighContrastHomogenization.Entry.Response.Kernel.CoarseBlockPerCellInput

High-contrast homogenization: Entry.Response.Kernel.CoarseBlockPerCellInput #

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

The coarse-block identification and the per-cell energy-map input #

This file identifies the Chapter-2 coarse-block matrix of a recentred coefficient on an aligned adapted cell with the shear congruence of the cell's set-level coarse block, for both signs. It reduces the diagonal weak-norm estimate's remaining analytic hypothesis to two real-arithmetic facts, and packages its per-cell hypothesis from either a bound by fixed constants or a bound by the metric and the cell size. It then composes the recent-difference energy map with this bookkeeping on an aligned cell, for the recentred sample and, tracking the extra congruence the flux flip introduces, for its adjoint twin. It serves the weak-norm estimate e.response.weak.estimate.

The Chapter-2 coarse block of an adapted cell is the shear congruence #

This module discharges the identification that the recent-difference and parent energy maps carry as an explicit hypothesis: the Chapter-2 coarse block matrix of the recentred coefficient on an aligned adapted cell is the shear congruence of the cell's set-level coarse block.

The two coarse-block carriers are not syntactically the same object. Chapter 2 builds the block from the doubled variational quantity 𝐀(U; a) through the sigma/kappa recovery package, while the set-level block is assembled directly from Mu by polarization. The two constructions agree on every Chapter-2 domain: Chapter-2's doubledMu is the set-level Mu of the coefficient field (book_doubledMu_eq_Mu), and a block is determined by its Mu quadratic form (IsCoarseBlockMatrix and eq_coarseBlockMatrix_of_isCoarseBlockMatrix). That is the content of coarseBlockMatrix_domain_eq_set.

The shear congruence itself is the set-level identity for a field recentred by a skew matrix: the quadratic form of a x - g is the quadratic form of a at the sheared state (p, g p + q), so the recentred block is Gα΅€ 𝐀 G. This is isCoarseBlockMatrix_respCoeffMinus; the adjoint twin isCoarseBlockMatrix_respCoeffPlus composes it with the flux sign flip D = diag(Id, -Id).

The Chapter-2 coarse block of a Domain is the set-level coarse block of its representative. Chapter-2's doubledMu is the set-level Mu of the coefficient field, and a symmetric block is determined by its Mu quadratic form, so the two constructions coincide.

The coarse block of a field on an aligned adapted cell satisfies the variational characterization. A pointwise elliptic representative exists on the cell; CG's convex-domain recovery supplies the Mu quadratic form for that representative, and Mu is insensitive to changing the field on a null set.

theorem HCPolySupport.HighContrast.Multiscale.coarseBlockMatrix_sub_skew_of_isCoarseBlockMatrix {d : β„•} {U : Set (Vec d)} {a : CoeffField d} {g : Mat d} {A : BlockMat d} (hg : matTranspose g = -g) (hA : IsCoarseBlockMatrix U a A) :
(coarseBlockMatrix U fun (x : Vec d) => a x - g) = blockCongr { upperLeft := 1, upperRight := 0, lowerLeft := g, lowerRight := 1 } A

The set-level shear identity from the variational characterization. If the set-level coarse block of a is characterized by Mu, then recentring by a skew matrix g turns the recentred block into the congruence of the block by G = ((1, 0), (g, 1)). This is the IsCoarseBlockMatrix form of the shear step, which avoids a separate quadraticity hypothesis.

The recentred coarse block of an aligned cell is the shear congruence of the cell's coarse block, minus sign. This is the identity the recent-difference energy map consumes: the Chapter-2 block of the recentred coefficient equals Gα΅€ 𝐀 G for the cell's set-level coarse block.

The recentred coarse block of an aligned cell is the composed congruence of the cell's coarse block, plus sign. The recentred adjoint field is respCoeffPlus F a = aα΅€ + g, so the shear identity applies at the adjoint field with skew -g, and the adjoint block is the flux sign flip D of the primal block. This matches the hcoarse shape of the adjoint energy map.

The analytic per-scale input, reduced to its two analytic facts #

What this file does and does not do #

recentHead_actual_le (DiagonalWeakNormAssembly.lean) has exactly ONE remaining hypothesis, its hscale: the analytic per-scale bound on the average-defect family. That bound is diagonalWeak_recent_average_bound.

Reading the proof of that theorem, its content splits cleanly in two:

This file proves the spine and states the two analytic inputs as explicit hypotheses in this tree's own language. It does NOT prove those two inputs; their root energy_map_metric_le rests on doubledResponseValue_le / doubledResponseValue_zero_left_eq and on the reflection-order layer (blockSharp, 444 lines plus its VariationalIdentities.lean base of 323), none of which exists in this tree OR in the CoarseGraining dependency.

What is gained is nonetheless the substance of the bound: after this file, the per-scale bound is reduced to TWO named inequalities, stated on this tree's carriers, whose conjunction discharges hscale mechanically.

Nothing is imported from an external development and no file is copied; the spine is stated on this tree's inline √(|Z|⁻¹ βˆ‘ βŸͺΒ·,·⟫) carrier, which is what weakCellSum, h6a_besovSeminorm_head_tail_le and hscale all spell.

theorem HCPolySupport.HighContrast.Multiscale.scaleInput_spine_le {d : β„•} {iota : Type u_1} (Z : Finset iota) (R : BlockMat d) (Ξ” : iota β†’ BlockVec d) (G : iota β†’ ℝ) (K B L D : ℝ) (hK : 0 ≀ K) (hB : 0 ≀ B) (hL : 0 ≀ L) (hD : 0 ≀ D) (hcell : βˆ€ w ∈ Z, blockVecDot (blockMatVecMul R (Ξ” w)) (blockMatVecMul R (Ξ” w)) ≀ (K * B) ^ 2 * G w) (henergy : (↑Z.card)⁻¹ * βˆ‘ w ∈ Z, G w ≀ 2 * L ^ 2 * D) :
√((↑Z.card)⁻¹ * βˆ‘ w ∈ Z, blockVecDot (blockMatVecMul R (Ξ” w)) (blockMatVecMul R (Ξ” w))) ≀ √2 * K * B * L * √D

The algebraic spine of the per-scale input, on an arbitrary index Finset.

This is diagonalWeak_recent_average_bound with its two analytic inputs abstracted into the hypotheses hcell and henergy, and with blockAvsumL2 unfolded to this tree's inline √(|Z|⁻¹ βˆ‘ βŸͺΒ·,·⟫).

hcell is the per-cell bound assembled from metricBlockNormSq_recent_difference_le together with the all-scale-maximum bound on the response size; henergy is diagonalWeak_recent_difference_energy_le. Everything after them is real arithmetic β€” Finset.sum_le_sum, a nonnegative rescaling, and √(cΒ²x) = c√x.

The spine at the exact shape of hscale. #

theorem HCPolySupport.HighContrast.Multiscale.scaleInput_of_analytic {d : β„•} (P : MeasureTheory.Measure (CoeffSpace d)) (Ξ³ : ℝ) (jStar : β„•) (F : BlockMat d) (t : β„€) (e : Vec d) (a : CoeffSpace d) (n : β„•) (Y : (Fin d β†’ β„€) β†’ Vec d β†’ BlockVec d) (G : (Fin d β†’ β„€) β†’ ℝ) (hLsq : 0 ≀ respLsqMinus P jStar F t e) (hcell : βˆ€ w ∈ triadicIndexBox d n, blockVecDot (blockMatVecMul (blockSqrt (respM0 F)) (cellAverage (adaptedCellAtCenter (respGrid jStar F) (t - ↑n) w) (Y w))) (blockMatVecMul (blockSqrt (respM0 F)) (cellAverage (adaptedCellAtCenter (respGrid jStar F) (t - ↑n) w) (Y w))) ≀ (√(blockSpecBound (normalizedBlock (respEhatMinus P jStar F t) (respM0 F))) * (1 + √(respAllScaleMax P Ξ³ jStar F t a) * 3 ^ (Quenched.contrastRho Ξ³ * ↑n / 2))) ^ 2 * G w) (henergy : (↑(triadicIndexBox d n).card)⁻¹ * βˆ‘ w ∈ triadicIndexBox d n, G w ≀ 2 * respLsqMinus P jStar F t e * β€–toFullBlockMat (weakAverageDefect (respGrid jStar F) t n (respEhatMinus P jStar F t) (respCoeffMinus F a))β€–) :
√((↑(triadicIndexBox d n).card)⁻¹ * βˆ‘ w ∈ triadicIndexBox d n, blockVecDot (blockMatVecMul (blockSqrt (respM0 F)) (cellAverage (adaptedCellAtCenter (respGrid jStar F) (t - ↑n) w) (Y w))) (blockMatVecMul (blockSqrt (respM0 F)) (cellAverage (adaptedCellAtCenter (respGrid jStar F) (t - ↑n) w) (Y w)))) ≀ √2 * √(blockSpecBound (normalizedBlock (respEhatMinus P jStar F t) (respM0 F))) * (1 + √(respAllScaleMax P Ξ³ jStar F t a) * 3 ^ (Quenched.contrastRho Ξ³ * ↑n / 2)) * √(respLsqMinus P jStar F t e) * βˆšβ€–toFullBlockMat (weakAverageDefect (respGrid jStar F) t n (respEhatMinus P jStar F t) (respCoeffMinus F a))β€–

The per-scale input, reduced to its two analytic inputs. This is scaleInput_spine_le instantiated at exactly the shape of the remaining hypothesis hscale (recentHead_actual_le, DiagonalWeakNormAssembly.lean): the index set is triadicIndexBox d n, the root is blockSqrt (respM0 F), and the four scalars are the printed ones β€”

  • K = √(blockSpecBound (normalizedBlock Ê⁻ Mβ‚€)), the diagonalWeakMetricFactor m E;
  • B = 1 + √(respAllScaleMax) Β· 3^{ρn/2}, the all-scale-maximum factor;
  • L = √(respLsqMinus), the diagonalWeakLoadMinus E p r;
  • D = β€–weakAverageDefect …‖, the blockSize (diagonalWeakAverageDefect …) (blockIdentity d).

The field family Y is left abstract: recentHead_actual_le instantiates it at Y w = fun x => optimizerField b u x - optimizerField b (V n w) x, which matches definitionally.

The two hypotheses are precisely the two analytic inputs, in this tree's language:

  • hcell is metricBlockNormSq_recent_difference_le composed with the response-size bound blockSize (adaptedResponse …) E ≀ BΒ², which is derived from sqrt_blockSize_adaptedResponse_le_of_maximum_finite;
  • henergy is diagonalWeak_recent_difference_energy_le.

Neither is proved in this tree. What this theorem establishes is that NOTHING ELSE is needed: given those two, hscale follows mechanically, and with it the entire first printed summand of diagonalWeakNorm_primal_le.

The per-cell hypothesis of the per-scale input, from its two inputs #

The per-scale input scaleInput_of_analytic consumes a per-cell hypothesis bounding the metric square of a cell average by a fixed printed constant times a weight G. The energy-map layer delivers that bound with a different constant: a product k * e of two Loewner sizes. This file is the bookkeeping that turns the second shape into the first, given the numerical comparison between the two constants.

Both statements are monotonicity of multiplication by a nonnegative weight. No matrix identity is used beyond the nonnegativity of the quantities involved, and the first statement is the generic core of the second.

theorem HCPolySupport.HighContrast.Multiscale.perCellHypothesis_of_constants {iota : Type u_1} (Z : Finset iota) (V G : iota β†’ ℝ) (c₁ cβ‚‚ : ℝ) (hc₁ : 0 ≀ c₁) (hG : βˆ€ w ∈ Z, 0 ≀ G w) (hcc : c₁ ≀ cβ‚‚) (hmetric : βˆ€ w ∈ Z, V w ≀ c₁ * G w) (w : iota) :
w ∈ Z β†’ V w ≀ cβ‚‚ * G w

Monotonicity of a per-cell bound in its constant. If V w ≀ c₁ * G w for every w in a finite index set and the weight G is nonnegative there, then the same bound holds with any larger constant cβ‚‚. The nonnegativity of c₁ is carried because the constant in the analytic per-scale input is a product of Loewner sizes, but the monotonicity step itself needs only c₁ ≀ cβ‚‚ and 0 ≀ G w.

theorem HCPolySupport.HighContrast.Multiscale.perCellHypothesis_of_metric_and_size {d : β„•} (P : MeasureTheory.Measure (CoeffSpace d)) (Ξ³ : ℝ) (jStar : β„•) (F : BlockMat d) (t : β„€) (a : CoeffSpace d) (n : β„•) (Y : (Fin d β†’ β„€) β†’ Vec d β†’ BlockVec d) (G : (Fin d β†’ β„€) β†’ ℝ) (k e : ℝ) (hk : 0 ≀ k) (he : 0 ≀ e) (hG : βˆ€ w ∈ triadicIndexBox d n, 0 ≀ G w) (hsize : k * e ≀ (√(blockSpecBound (normalizedBlock (respEhatMinus P jStar F t) (respM0 F))) * (1 + √(respAllScaleMax P Ξ³ jStar F t a) * 3 ^ (Quenched.contrastRho Ξ³ * ↑n / 2))) ^ 2) (hmetric : βˆ€ w ∈ triadicIndexBox d n, blockVecDot (blockMatVecMul (blockSqrt (respM0 F)) (cellAverage (adaptedCellAtCenter (respGrid jStar F) (t - ↑n) w) (Y w))) (blockMatVecMul (blockSqrt (respM0 F)) (cellAverage (adaptedCellAtCenter (respGrid jStar F) (t - ↑n) w) (Y w))) ≀ k * e * G w) (w : Fin d β†’ β„€) :
w ∈ triadicIndexBox d n β†’ blockVecDot (blockMatVecMul (blockSqrt (respM0 F)) (cellAverage (adaptedCellAtCenter (respGrid jStar F) (t - ↑n) w) (Y w))) (blockMatVecMul (blockSqrt (respM0 F)) (cellAverage (adaptedCellAtCenter (respGrid jStar F) (t - ↑n) w) (Y w))) ≀ (√(blockSpecBound (normalizedBlock (respEhatMinus P jStar F t) (respM0 F))) * (1 + √(respAllScaleMax P Ξ³ jStar F t a) * 3 ^ (Quenched.contrastRho Ξ³ * ↑n / 2))) ^ 2 * G w

The per-cell hypothesis of the per-scale input, obtained from the energy-map bound. The cell-average metric square is bounded by (k * e) * G w for the two Loewner sizes k and e; the comparison hsize turns the product into the printed square (√Kβ‚€ Β· (1 + √M Β· 3^{ρn/2}))Β², and the nonnegative weight yields the conclusion. The index set is triadicIndexBox d n, the root is blockSqrt (respM0 F), and the two constants and the response sample are those of the weak-norm estimate (e.response.weak.estimate).

The recent-difference energy map on an aligned cell #

This composes the recent-difference energy map on the doubled response space with the per-cell bookkeeping of the weak-norm estimate. The response-size input is taken at the square of the printed geometric factor, and the metric factor is the operator norm of the normalized reference block, which on positive definite carriers is the printed spectral bound.

The remaining input is the identification of the Chapter-2 coarse block with the shear congruence of the cell's coarse block. The two coarse-block carriers used here β€” the Chapter-2 coarseBlockMatrix on a Domain and the set-level coarseBlockMatrix on the cell β€” are not identified by any declaration in this module's import closure, so that identification is carried as an explicit hypothesis.

theorem HCPolySupport.HighContrast.Multiscale.recentEnergyMap_port {d : β„•} [NeZero d] (P : MeasureTheory.Measure (CoeffSpace d)) (Ξ³ : ℝ) (jStar : β„•) (F : BlockMat d) (t : β„€) (hgrid : IsUnit (respGrid jStar F)) (a : CoeffSpace d) (n : β„•) (aU : (w : Fin d β†’ β„€) β†’ Book.Ch02.CoeffOn (adaptedDomainAt (respGrid jStar F) hgrid (t - ↑n) w)) (u v : (w : Fin d β†’ β„€) β†’ Book.Ch02.Solution (adaptedDomainAt (respGrid jStar F) hgrid (t - ↑n) w) (aU w)) (hEll : βˆ€ (w : Fin d β†’ β„€), IsEllipticFieldOn (aU w).lam (aU w).Lam (adaptedCellAtCenter (respGrid jStar F) (t - ↑n) w) (aU w).toCoeffField) (hm : Matrix.PosDef (explicitCanonicalMetric F)) (hEmean : Matrix.PosDef (toFullBlockMat (respMean P jStar F t))) (hEhat : Matrix.PosDef (toFullBlockMat (respEhatMinus P jStar F t))) (hM0 : Matrix.PosDef (toFullBlockMat (respM0 F))) (hbdd : BddAbove {y : ℝ | βˆƒ (m : β„•), βˆƒ z ∈ triadicIndexBox d m, y = 3 ^ (-(Quenched.contrastRho Ξ³ * ↑m)) * blockSpecBound (blockSub (normalizedBlock (coarseBlock (adaptedCellAtCenter (respGrid jStar F) (t - ↑m) z) a) (respMean P jStar F t)) (Book.Ch02.blockIdentity d))}) (hcoarse : βˆ€ w ∈ triadicIndexBox d n, Book.Ch02.coarseBlockMatrix (adaptedDomainAt (respGrid jStar F) hgrid (t - ↑n) w) (aU w) = blockCongr (respG F) (coarseBlock (adaptedCellAtCenter (respGrid jStar F) (t - ↑n) w) a)) (hG : βˆ€ w ∈ triadicIndexBox d n, 0 ≀ Book.Ch02.average (adaptedDomainAt (respGrid jStar F) hgrid (t - ↑n) w) fun (x : Vec d) => blockVecDot (optimizerField (aU w).toCoeffField (u w) x - optimizerField (aU w).toCoeffField (v w) x) (blockMatVecMul (Book.Ch02.blockMatrixField (aU w) x) (optimizerField (aU w).toCoeffField (u w) x - optimizerField (aU w).toCoeffField (v w) x))) (w : Fin d β†’ β„€) :
w ∈ triadicIndexBox d n β†’ blockVecDot (blockMatVecMul (blockSqrt (respM0 F)) (cellAverage (adaptedCellAtCenter (respGrid jStar F) (t - ↑n) w) fun (x : Vec d) => optimizerField (aU w).toCoeffField (u w) x - optimizerField (aU w).toCoeffField (v w) x)) (blockMatVecMul (blockSqrt (respM0 F)) (cellAverage (adaptedCellAtCenter (respGrid jStar F) (t - ↑n) w) fun (x : Vec d) => optimizerField (aU w).toCoeffField (u w) x - optimizerField (aU w).toCoeffField (v w) x)) ≀ (√(blockSpecBound (normalizedBlock (respEhatMinus P jStar F t) (respM0 F))) * (1 + √(respAllScaleMax P Ξ³ jStar F t a) * 3 ^ (Quenched.contrastRho Ξ³ * ↑n / 2))) ^ 2 * Book.Ch02.average (adaptedDomainAt (respGrid jStar F) hgrid (t - ↑n) w) fun (x : Vec d) => blockVecDot (optimizerField (aU w).toCoeffField (u w) x - optimizerField (aU w).toCoeffField (v w) x) (blockMatVecMul (Book.Ch02.blockMatrixField (aU w) x) (optimizerField (aU w).toCoeffField (u w) x - optimizerField (aU w).toCoeffField (v w) x))

The recent-difference energy map on an aligned cell, with the response-size factor supplied through the shear congruence. For every index w in the triadic box, the metric square of the cell average of the doubled difference of two optimizers is bounded by the printed geometric square times the actual difference energy on that cell.

The hypothesis hcoarse identifies the Chapter-2 coarse block of the recentred coefficient with the shear congruence of the cell's coarse block; it is the shape the shear identity produces and the one input this module cannot discharge from its own imports.

The recent-difference energy map, adjoint sign, as a split proof #

The energy map of CoarseBlockPerCellInput is stated for the recentred sample respEhatMinus. The + copy of the cell-average estimate needs the adjoint twin, whose sample is respEhatPlus = blockAdjoint (respEhatMinus …). Because the adjoint adds one congruence by the flux flip D, the response-size input is no longer a bound for the shear factor respG F alone: it is the composed factor D ∘ respG F. This file splits the port in two so that the large block terms are elaborated once each: the per-cell step carries the two Loewner constants abstract, and the second theorem feeds it the adjoint size inputs.

The remaining input of the second theorem is the identification of the Chapter-2 coarse block of the recentred adjoint field with the composed congruence of the cell's coarse block; the two coarse-block carriers used here β€” the Chapter-2 coarseBlockMatrix on a Domain and the set-level coarseBlock on the cell β€” are not identified by any declaration in this module's import closure, so that identification is carried as an explicit hypothesis, exactly as for the minus sign.

theorem HCPolySupport.HighContrast.Multiscale.recentEnergyMap_cell_plus {d : β„•} (P : MeasureTheory.Measure (CoeffSpace d)) (jStar : β„•) (F : BlockMat d) (t : β„€) (hgrid : IsUnit (respGrid jStar F)) (n : β„•) (aU : (w : Fin d β†’ β„€) β†’ Book.Ch02.CoeffOn (adaptedDomainAt (respGrid jStar F) hgrid (t - ↑n) w)) (u v : (w : Fin d β†’ β„€) β†’ Book.Ch02.Solution (adaptedDomainAt (respGrid jStar F) hgrid (t - ↑n) w) (aU w)) (hEll : βˆ€ (w : Fin d β†’ β„€), IsEllipticFieldOn (aU w).lam (aU w).Lam (adaptedCellAtCenter (respGrid jStar F) (t - ↑n) w) (aU w).toCoeffField) (hm : Matrix.PosDef (explicitCanonicalMetric F)) (hEhat : Matrix.PosDef (toFullBlockMat (respEhatPlus P jStar F t))) (k e : ℝ) (hk : 0 < k) (he : 0 < e) (hEM : toFullBlockMat (respEhatPlus P jStar F t) ≀ k β€’ toFullBlockMat (respM0 F)) (hAE : βˆ€ w ∈ triadicIndexBox d n, toFullBlockMat (Book.Ch02.coarseBlockMatrix (adaptedDomainAt (respGrid jStar F) hgrid (t - ↑n) w) (aU w)) ≀ e β€’ toFullBlockMat (respEhatPlus P jStar F t)) (w : Fin d β†’ β„€) :
w ∈ triadicIndexBox d n β†’ blockVecDot (blockMatVecMul (blockSqrt (respM0 F)) (cellAverage (adaptedCellAtCenter (respGrid jStar F) (t - ↑n) w) fun (x : Vec d) => optimizerField (aU w).toCoeffField (u w) x - optimizerField (aU w).toCoeffField (v w) x)) (blockMatVecMul (blockSqrt (respM0 F)) (cellAverage (adaptedCellAtCenter (respGrid jStar F) (t - ↑n) w) fun (x : Vec d) => optimizerField (aU w).toCoeffField (u w) x - optimizerField (aU w).toCoeffField (v w) x)) ≀ k * e * Book.Ch02.average (adaptedDomainAt (respGrid jStar F) hgrid (t - ↑n) w) fun (x : Vec d) => blockVecDot (optimizerField (aU w).toCoeffField (u w) x - optimizerField (aU w).toCoeffField (v w) x) (blockMatVecMul (Book.Ch02.blockMatrixField (aU w) x) (optimizerField (aU w).toCoeffField (u w) x - optimizerField (aU w).toCoeffField (v w) x))

The per-cell step of the recent-difference energy map for the adjoint sample, with the two Loewner constants abstract. This is recent_difference_metric_le (ResponseFieldSize.lean) instantiated at an aligned child cell and the doubled optimizer difference: the reference sample is respEhatPlus, the root is blockSqrt (respM0 F), and arbitrary positive k, e are supplied through the two Loewner hypotheses hEM, hAE.

theorem HCPolySupport.HighContrast.Multiscale.recentEnergyMap_port_plus {d : β„•} [NeZero d] (P : MeasureTheory.Measure (CoeffSpace d)) (Ξ³ : ℝ) (jStar : β„•) (F : BlockMat d) (t : β„€) (hgrid : IsUnit (respGrid jStar F)) (a : CoeffSpace d) (n : β„•) (aU : (w : Fin d β†’ β„€) β†’ Book.Ch02.CoeffOn (adaptedDomainAt (respGrid jStar F) hgrid (t - ↑n) w)) (u v : (w : Fin d β†’ β„€) β†’ Book.Ch02.Solution (adaptedDomainAt (respGrid jStar F) hgrid (t - ↑n) w) (aU w)) (hEll : βˆ€ (w : Fin d β†’ β„€), IsEllipticFieldOn (aU w).lam (aU w).Lam (adaptedCellAtCenter (respGrid jStar F) (t - ↑n) w) (aU w).toCoeffField) (hm : Matrix.PosDef (explicitCanonicalMetric F)) (hEmean : Matrix.PosDef (toFullBlockMat (respMean P jStar F t))) (hEhat : Matrix.PosDef (toFullBlockMat (respEhatPlus P jStar F t))) (hM0 : Matrix.PosDef (toFullBlockMat (respM0 F))) (hbdd : BddAbove {y : ℝ | βˆƒ (m : β„•), βˆƒ z ∈ triadicIndexBox d m, y = 3 ^ (-(Quenched.contrastRho Ξ³ * ↑m)) * blockSpecBound (blockSub (normalizedBlock (coarseBlock (adaptedCellAtCenter (respGrid jStar F) (t - ↑m) z) a) (respMean P jStar F t)) (Book.Ch02.blockIdentity d))}) (hcoarse : βˆ€ w ∈ triadicIndexBox d n, Book.Ch02.coarseBlockMatrix (adaptedDomainAt (respGrid jStar F) hgrid (t - ↑n) w) (aU w) = blockCongr (blockD d) (blockCongr (respG F) (coarseBlock (adaptedCellAtCenter (respGrid jStar F) (t - ↑n) w) a))) (hG : βˆ€ w ∈ triadicIndexBox d n, 0 ≀ Book.Ch02.average (adaptedDomainAt (respGrid jStar F) hgrid (t - ↑n) w) fun (x : Vec d) => blockVecDot (optimizerField (aU w).toCoeffField (u w) x - optimizerField (aU w).toCoeffField (v w) x) (blockMatVecMul (Book.Ch02.blockMatrixField (aU w) x) (optimizerField (aU w).toCoeffField (u w) x - optimizerField (aU w).toCoeffField (v w) x))) (w : Fin d β†’ β„€) :
w ∈ triadicIndexBox d n β†’ blockVecDot (blockMatVecMul (blockSqrt (respM0 F)) (cellAverage (adaptedCellAtCenter (respGrid jStar F) (t - ↑n) w) fun (x : Vec d) => optimizerField (aU w).toCoeffField (u w) x - optimizerField (aU w).toCoeffField (v w) x)) (blockMatVecMul (blockSqrt (respM0 F)) (cellAverage (adaptedCellAtCenter (respGrid jStar F) (t - ↑n) w) fun (x : Vec d) => optimizerField (aU w).toCoeffField (u w) x - optimizerField (aU w).toCoeffField (v w) x)) ≀ (√(blockSpecBound (normalizedBlock (respEhatPlus P jStar F t) (respM0 F))) * (1 + √(respAllScaleMax P Ξ³ jStar F t a) * 3 ^ (Quenched.contrastRho Ξ³ * ↑n / 2))) ^ 2 * Book.Ch02.average (adaptedDomainAt (respGrid jStar F) hgrid (t - ↑n) w) fun (x : Vec d) => blockVecDot (optimizerField (aU w).toCoeffField (u w) x - optimizerField (aU w).toCoeffField (v w) x) (blockMatVecMul (Book.Ch02.blockMatrixField (aU w) x) (optimizerField (aU w).toCoeffField (u w) x - optimizerField (aU w).toCoeffField (v w) x))

The recent-difference energy map on an aligned cell for the adjoint sample. This is the adjoint twin of recentEnergyMap_port (CoarseBlockPerCellInput.lean): the sample is respEhatPlus, and the response-size input hcoarse identifies the Chapter-2 coarse block of the recentred field with the composed congruence D ∘ respG F, the factor the adjoint carries. The per-cell step is recentEnergyMap_cell_plus above.