Documentation

LeanPool.HighContrastHomogenization.Setup.SpectralBound

High-contrast homogenization: Setup.SpectralBound #

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

The scalar Loewner bound and the positive semidefinite square root #

The reference text writes |M| for the spectral norm of a symmetric positive semidefinite matrix and m^{1/2} for the positive square root. This file proves that the encodings specBound and matSqrt are those objects: specBound M is the least t ≥ 0 with M ≤ t I, and matSqrt M is the positive semidefinite square root, independently of the choice made in its definition.

specBound is nonnegative, junk branch included.

theorem HCPolySupport.HighContrast.specBound_le {d : ℕ} {M : Mat d} {t : ℝ} (h0 : 0 ≤ t) (h : MatLoewnerLE M (t • 1)) :

specBound M is a lower bound for the admissible scalar Loewner bounds.

The scalar Loewner order between multiples of the identity.

Every matrix admits a scalar Loewner bound, so the infimum defining specBound is taken over a nonempty set.

specBound M is itself an admissible scalar Loewner bound.

theorem HCPolySupport.HighContrast.specBound_le_iff {d : ℕ} {M : Mat d} {t : ℝ} (ht : 0 ≤ t) :

specBound characterization. specBound M is the least nonnegative t with M ≤ t I; on symmetric positive semidefinite data this is the norm |M| of the reference text.

The positive semidefinite square root #

theorem HCPolySupport.HighContrast.exists_posSemidef_mul_self {n : Type u_1} [Fintype n] {M : Matrix n n ℝ} (hM : M.PosSemidef) :
∃ (B : Matrix n n ℝ), B.PosSemidef ∧ B * B = M

The positive semidefinite square root exists on positive semidefinite data.

theorem HCPolySupport.HighContrast.posSemidef_mul_self_unique {n : Type u_1} [Fintype n] {M B B' : Matrix n n ℝ} (hB : B.PosSemidef) (hB' : B'.PosSemidef) (h : B * B = M) (h' : B' * B' = M) :
B = B'

The positive semidefinite square root is unique.

Specification of matSqrt on positive semidefinite data.

theorem HCPolySupport.HighContrast.matSqrt_eq {n : Type u_1} [Fintype n] [DecidableEq n] {M B : Matrix n n ℝ} (hM : M.PosSemidef) (hB : B.PosSemidef) (h : B * B = M) :

matSqrt is independent of the choice made in its definition: it is the unique positive semidefinite square root.

Junk guards on the contrast constants #

The intrinsic contrast is nonnegative, junk branch included.

theorem HCPolySupport.HighContrast.blockContrast_le {d : ℕ} {H : BlockMat d} {t : ℝ} (h0 : 0 ≤ t) {h : Mat d} (hskew : IsSkewMat h) (hle : MatLoewnerLE (schurSigma H + matTranspose (schurSkew H - h) * H.lowerRight * (schurSkew H - h)) (t • schurSigmaStar H)) :

The intrinsic contrast is a lower bound for the admissible Loewner scalings.

Λ_0 is nonnegative, junk branch included.

The reference aspect ratio is nonnegative, so the logarithm of 2 + Π K in the entry theorem is taken at an argument at least 2.