5.7 Sparsity and obstructions on the disk
The results below give both sparsity patterns and entries that cannot vanish. The classification depends on the polynomial family and on whether a bandwidth bound must hold uniformly; sparsity for one example alone does not establish such a bound.
Reference details: Canonical finite Gram factor and support and related results
For any ordered basis of a finite polynomial subspace and any measure with finite moments and positive definite polynomial pairing, choose the unique positive upper triangular Gram factor. Its offset support can be checked using any positive upper triangular factor of the same Gram matrix. No separated target orthogonal system is assumed.
Lean Formalisation
theorem MvPolynomial.integralGramFactor_spec.{u_1} {σ : Type u_1} [Fintype σ] {n : ℕ} (μ : MeasureTheory.Measure (σ → ℝ))
(hμ : MvPolynomial.HasFiniteMoments μ) (hpos : MvPolynomial.HasPositiveDefiniteIntegral μ)
{V : Submodule ℝ (MvPolynomial σ ℝ)} (b : Module.Basis (Fin n) ℝ ↥V) :
(MvPolynomial.integralGramFactor μ hμ hpos b).IsUpperTriangular ∧
(∀ (i : Fin n), 0 < MvPolynomial.integralGramFactor μ hμ hpos b i i) ∧
MvPolynomial.integralGram μ (fun i => ↑(b i)) ⋯ =
(MvPolynomial.integralGramFactor μ hμ hpos b).transpose * MvPolynomial.integralGramFactor μ hμ hpos b
Lean proof
/-- The chosen factor is upper triangular, has positive diagonal, and factors the Gram matrix. -/
theorem integralGramFactor_spec :
(integralGramFactor μ hμ hpos b).IsUpperTriangular ∧
(∀ i, 0 < integralGramFactor μ hμ hpos b i i) ∧
integralGram μ (fun i => (b i : MvPolynomial σ ℝ)) =
(integralGramFactor μ hμ hpos b).transpose * integralGramFactor μ hμ hpos b :=
(existsUnique_pos_upperTriangular_integralGram_factor μ hμ hpos b).choose_spec.1
source A function \(F:X\times Z\to K\) over a field is of the form \(a(x)b(z)\) if and only if every rectangle identity \(F(x,z)F(x',z')=F(x,z')F(x',z)\) holds.
Lean Formalisation
theorem Function.isProductSeparated_iff.{u_1, u_2, u_3} {α : Type u_1} {β : Type u_2} {K : Type u_3} [Field K] (f : α → β → K) :
Function.IsProductSeparated f ↔ ∀ (x x' : α) (y y' : β), f x y * f x' y' = f x y' * f x' y
Lean proof
/-- Product separation is equivalent to all two-by-two rectangle minors vanishing. -/
theorem isProductSeparated_iff (f : α → β → K) :
IsProductSeparated f ↔ ∀ x x' y y', f x y * f x' y' = f x y' * f x' y := by
constructor
· rintro ⟨a,b,h⟩ x x' y y'
simp only [h]
ring
· intro h
by_cases hz : ∀ x y, f x y = 0
· exact ⟨fun _ => 0, fun _ => 0, by simpa using hz⟩
· push Not at hz
obtain ⟨x₀,y₀,h₀⟩ := hz
refine ⟨fun x => f x y₀, fun y => f x₀ y / f x₀ y₀, ?_⟩
intro x y
rw [← mul_div_assoc]
exact (eq_div_iff h₀).mpr (h x x₀ y y₀)
source This characterizes product separation; it does not assert a converse from sparse Gram factors.
The pullback \(A+Bx^2+C(1-x^2)z^2\) separates as a product of functions of \(x\) and \(z\) exactly when \(C=0\) or \(A+B=0\). The physical density \(A+Bx^2+Cy^2\) is nonnegative on the unit disk exactly when \(A\ge 0\), \(A+B\ge 0\) and \(A+C\ge 0\). In particular, positivity does not imply product separation: \(1+y^2\) is an example.
Lean Formalisation
theorem Polynomial.quadraticDiskPullback_isProductSeparated_iff (A B C : ℝ) :
(Function.IsProductSeparated fun x z => A + B * x ^ 2 + C * (1 - x ^ 2) * z ^ 2) ↔ C = 0 ∨ A + B = 0
Lean proof
/-- A quadratic disk density separates in Cartesian disk coordinates exactly
when it is an outer-only change or a multiple of (1-x²). -/
theorem quadraticDiskPullback_isProductSeparated_iff (A B C : ℝ) :
Function.IsProductSeparated (fun x z : ℝ => A+B*x^2+C*(1-x^2)*z^2) ↔
C = 0 ∨ A+B = 0 := by
constructor
· intro h
have he := (Function.isProductSeparated_iff _).mp h 0 1 0 1
have hz : C*(A+B) = 0 := by nlinarith [he]
exact mul_eq_zero.mp hz
· rintro (hC | hAB)
· refine ⟨fun x => A+B*x^2, fun _ => 1, ?_⟩
intro x z
simp [hC]
· refine ⟨fun x => 1-x^2, fun z => A+C*z^2, ?_⟩
intro x z
have hB : B = -A := by linarith
rw [hB]
ring
source Reference details: Elimination zeros force vanishing minors and related results
Let \(W=LU\) with \(L\) lower triangular, and select the first \(n\) rows and any \(n\) columns. If some row of the selected upper-factor submatrix vanishes, the corresponding determinant of \(W\) is zero. Thus a nonzero bordered minor obstructs proposed upper-factor zeros. This is a finite necessary condition, not an all-degree sparsity classification.
Lean Formalisation
theorem Matrix.lowerTriangular_mul_submatrix {n m : ℕ} (L U : Matrix (Fin (n + m)) (Fin (n + m)) ℝ)
(hL : L.transpose.IsUpperTriangular) (col : Fin n → Fin (n + m)) :
(L * U).submatrix (Fin.castAdd m) col = L.submatrix (Fin.castAdd m) (Fin.castAdd m) * U.submatrix (Fin.castAdd m) col
Lean proof
/-- Restricting leading rows of a lower-triangular product needs no trailing summands. -/
theorem lowerTriangular_mul_submatrix (L U : Matrix (Fin (n+m)) (Fin (n+m)) ℝ)
(hL : L.transpose.IsUpperTriangular) (col : Fin n → Fin (n+m)) :
(L*U).submatrix (Fin.castAdd m) col =
L.submatrix (Fin.castAdd m) (Fin.castAdd m) * U.submatrix (Fin.castAdd m) col := by
ext i j
simp only [submatrix_apply, mul_apply, Fin.sum_univ_add]
have hz : (∑ k : Fin m, L (Fin.castAdd m i) (Fin.natAdd n k)*U (Fin.natAdd n k) (col j)) = 0 := by
apply Finset.sum_eq_zero
intro k _
have hi : Fin.castAdd m i < Fin.natAdd n k := by
simp only [Fin.lt_def, Fin.val_castAdd, Fin.val_natAdd]
omega
have he : L (Fin.castAdd m i) (Fin.natAdd n k) = 0 := hL hi
rw [he, zero_mul]
rw [hz, add_zero]
source Put \(v=n+\lambda +4\). With denominators cleared, two parameter raisings give
The identities hold over every commutative rational algebra. Degree two and three have the corresponding two-term identities with denominators cleared.
Lean Formalisation
theorem Polynomial.gegenbauer_double_conversion.{u_1} {R : Type u_1} [CommRing R] [Algebra ℚ R] (lam : R) (n : ℕ) :
Polynomial.C ((↑n + lam + 4) * (↑n + lam + 5) * (↑n + lam + 3)) * Polynomial.gegenbauer lam (n + 4) =
Polynomial.C (lam * (lam + 1) * (↑n + lam + 3)) * Polynomial.gegenbauer (lam + 2) (n + 4) -
Polynomial.C (2 * lam * (lam + 1) * (↑n + lam + 4)) * Polynomial.gegenbauer (lam + 2) (n + 2) +
Polynomial.C (lam * (lam + 1) * (↑n + lam + 5)) * Polynomial.gegenbauer (lam + 2) n
Lean proof
/-- Two parameter raisings with all denominators cleared. -/
theorem gegenbauer_double_conversion (lam : R) (n : ℕ) :
C (((n : R)+lam+4)*((n : R)+lam+5)*((n : R)+lam+3)) *
gegenbauer lam (n+4) =
C (lam*(lam+1)*((n : R)+lam+3)) * gegenbauer (lam+2) (n+4) -
C (2*lam*(lam+1)*((n : R)+lam+4)) * gegenbauer (lam+2) (n+2) +
C (lam*(lam+1)*((n : R)+lam+5)) * gegenbauer (lam+2) n := by
have h₀ := gegenbauer_conversion lam (n+2)
have h₁ := gegenbauer_conversion (lam+1) (n+2)
have h₂ := gegenbauer_conversion (lam+1) n
have he : lam+1+1 = lam+2 := by ring
simp only [Nat.cast_add, Nat.cast_ofNat, he] at h₀ h₁ h₂
change C (((n : R)+lam+4)*((n : R)+lam+5)*((n : R)+lam+3)) *
gegenbauer lam (n+2+2) = _
simp only [map_mul, map_add, map_natCast, map_ofNat, map_one] at h₀ h₁ h₂ ⊢
linear_combination
(((n : R[X])+C lam+5)*((n : R[X])+C lam+3))*h₀ +
C lam*((n : R[X])+C lam+3)*h₁ -
C lam*((n : R[X])+C lam+5)*h₂
source Let \(M\) be a finite real matrix, with integer index levels \(\ell (i)\), and suppose \(M_{ij}=0\) when \(\ell (j){\gt}\ell (i)+1\). Then \((M^r)_{ij}=0\) when \(\ell (j){\gt}\ell (i)+r\). At equality, \(M^r\) has the same entry as the power of the matrix retaining only entries with \(\ell (j)=\ell (i)+1\). For an entrywise nonnegative matrix, a positive path of length \(r\) gives a strictly positive entry of its \(r\)-th power. Diagonal signs \(s_i^2=1\) telescope: \((\operatorname {diag}(s)M\operatorname {diag}(s))^r_{ij}=s_i(M^r)_{ij}s_j\).
Lean Formalisation
theorem Matrix.pow_apply_eq_zero_of_level_gap.{u_1} {ι : Type u_1} [Fintype ι] [DecidableEq ι] (A : Matrix ι ι ℝ)
(level : ι → ℤ) (hA : ∀ (i j : ι), level i + 1 < level j → A i j = 0) (n : ℕ) (i j : ι)
(hgap : level i + ↑n < level j) : (A ^ n) i j = 0
Lean proof
/-- An n-fold product cannot raise the level by more than n. -/
theorem pow_apply_eq_zero_of_level_gap (A : Matrix ι ι ℝ) (level : ι → ℤ)
(hA : ∀ i j, level i+1 < level j → A i j = 0)
(n : ℕ) (i j : ι) (hgap : level i+n < level j) : (A^n) i j = 0 := by
induction n generalizing i j with
| zero =>
have hne : i ≠ j := by intro h; subst j; omega
simp [hne]
| succ n ih =>
rw [pow_succ', mul_apply]
apply Finset.sum_eq_zero
intro k _
by_cases hk : level i+1 < level k
· rw [hA i k hk, zero_mul]
· rw [ih k j (by omega), mul_zero]
source In any unital ring, \((1-x)y=1\) implies the exact identity \(y=\sum _{q{\lt}r}x^q+x^ry\). In a real algebra, let \(f\) be a real linear functional and \((1+tK)Y=1\). If \(f(K^q)=0\) for \(q{\lt}r\), then
In particular, this pairing is nonzero if \(t\ne 0\) and the last factor is nonzero. No infinite series or convergence hypothesis is used.
Lean Formalisation
theorem eq_geom_sum_add_pow_mul_of_one_sub_mul_eq_one.{u_1} {R : Type u_1} [Ring R] (x y : R) (hy : (1 - x) * y = 1) (n : ℕ) :
y = ∑ k ∈ Finset.range n, x ^ k + x ^ n * y
Lean proof
/-- A right inverse of `1-x` has a finite geometric expansion with an exact remainder. -/
theorem eq_geom_sum_add_pow_mul_of_one_sub_mul_eq_one {R : Type*} [Ring R]
(x y : R) (hy : (1-x)*y=1) (n : ℕ) :
y = (∑ k ∈ Finset.range n, x^k) + x^n*y := by
have h := congrArg (fun z : R => z*y) (geom_sum_mul_neg x n)
rw [mul_assoc, hy, mul_one, sub_mul, one_mul] at h
exact (eq_sub_iff_add_eq.mp h).symm
source Let \(K\) lie in a normed real algebra, \(f\) be a continuous real linear functional, and \(Y(t)\) be continuous at zero with \(Y(0)=1\) and \((1+tK)Y(t)=1\) near zero. If \(f(K^q)=0\) for \(q{\lt}r\) but \(f(K^r)\ne 0\), then \(f(Y(t))\ne 0\) throughout some punctured neighbourhood of zero. Completeness and analyticity are not assumed.
Lean Formalisation
theorem ContinuousLinearMap.eventually_apply_rightInverse_ne_zero.{u_1} {R : Type u_1} [NormedRing R] [NormedAlgebra ℝ R]
(f : R →L[ℝ] ℝ) (K : R) (Y : ℝ → R) (hY : ContinuousAt Y 0) (h₀ : Y 0 = 1)
(hy : ∀ᶠ (t : ℝ) in nhds 0, (1 + t • K) * Y t = 1) (r : ℕ) (hz : ∀ q < r, f (K ^ q) = 0) (hr : f (K ^ r) ≠ 0) :
∀ᶠ (t : ℝ) in nhdsWithin 0 {0}ᶜ, f (Y t) ≠ 0
Lean proof
/-- Vanishing lower powers and a nonzero first surviving pairing force local nonvanishing. -/
theorem eventually_apply_rightInverse_ne_zero (f : R →L[ℝ] ℝ)
(K : R) (Y : ℝ → R) (hY : ContinuousAt Y 0) (h₀ : Y 0=1)
(hy : ∀ᶠ t in 𝓝 (0 : ℝ), (1+t • K)*Y t=1) (r : ℕ)
(hz : ∀ q < r, f (K^q)=0) (hr : f (K^r) ≠ 0) :
∀ᶠ t in 𝓝[≠] (0 : ℝ), f (Y t) ≠ 0 := by
have hc : ContinuousAt (fun t => f (K^r*Y t)) 0 :=
f.continuous.continuousAt.comp (continuousAt_const.mul hY)
have hn := hc.eventually_ne (by simpa [h₀] using hr)
filter_upwards [hn.filter_mono nhdsWithin_le_nhds,
hy.filter_mono nhdsWithin_le_nhds, self_mem_nhdsWithin] with t ht hi hne
exact f.toLinearMap.apply_rightInverse_ne_zero_of_powers_vanish K (Y t) t
(by simpa using hne) hi r hz ht
source Let \(K\) be a finite real square matrix and \(f\) a real linear functional on matrices. If \(f(K^q)=0\) for every \(q{\lt}r\) and \(f(K^r)\ne 0\), then \(f((I+tK)^{-1})\ne 0\) for all sufficiently small nonzero real \(t\).
Lean Formalisation
theorem Matrix.eventually_apply_inv_one_add_smul_ne_zero.{u_1} {ι : Type u_1} [Fintype ι] [DecidableEq ι]
(f : Matrix ι ι ℝ →ₗ[ℝ] ℝ) (K : Matrix ι ι ℝ) (r : ℕ) (hz : ∀ q < r, f (K ^ q) = 0) (hr : f (K ^ r) ≠ 0) :
∀ᶠ (t : ℝ) in nhdsWithin 0 {0}ᶜ, f (1 + t • K)⁻¹ ≠ 0
Lean proof
/-- A first nonzero power pairing survives in the inverse near the identity. -/
theorem eventually_apply_inv_one_add_smul_ne_zero
(f : Matrix ι ι ℝ →ₗ[ℝ] ℝ) (K : Matrix ι ι ℝ) (r : ℕ)
(hz : ∀ q < r, f (K^q) = 0) (hr : f (K^r) ≠ 0) :
∀ᶠ t in 𝓝[≠] (0 : ℝ), f ((1+t • K)⁻¹) ≠ 0 := by
have hM : Continuous (fun t : ℝ => (1 : Matrix ι ι ℝ)+t • K) := by fun_prop
have hi : ContinuousAt (fun t : ℝ => ((1 : Matrix ι ι ℝ)+t • K)⁻¹) 0 := by
have hh : ContinuousAt (fun M : Matrix ι ι ℝ => M⁻¹) (1 : Matrix ι ι ℝ) := by
apply continuousAt_matrix_inv
rw [det_one]
have he : (Ring.inverse : ℝ → ℝ) = (fun x => x⁻¹) :=
funext (fun x => Ring.inverse_eq_inv x)
rw [he]
exact continuousAt_inv₀ one_ne_zero
have hh' : ContinuousAt (fun M : Matrix ι ι ℝ => M⁻¹)
((1 : Matrix ι ι ℝ)+(0 : ℝ) • K) := by simpa using hh
apply ContinuousAt.comp (g := fun M : Matrix ι ι ℝ => M⁻¹)
(f := fun t : ℝ => (1 : Matrix ι ι ℝ)+t • K) hh'
exact hM.continuousAt
have hd := hM.matrix_det.continuousAt.eventually_ne
(by simp : ((1 : Matrix ι ι ℝ)+(0 : ℝ) • K).det ≠ 0)
have hf : Continuous f := f.continuous_of_finiteDimensional
have hc : ContinuousAt (fun t : ℝ => f (K^r*((1 : Matrix ι ι ℝ)+t • K)⁻¹)) 0 :=
hf.continuousAt.comp (continuousAt_const.mul hi)
have hn := hc.eventually_ne (by simpa using hr)
filter_upwards [hd.filter_mono nhdsWithin_le_nhds,
hn.filter_mono nhdsWithin_le_nhds, self_mem_nhdsWithin] with t ht hn ht0
exact f.apply_rightInverse_ne_zero_of_powers_vanish K ((1+t • K)⁻¹) t
(by simpa using ht0) (mul_nonsing_inv _ (isUnit_iff_ne_zero.mpr ht)) r hz hn
source For an upper block factor \(R=\begin{pmatrix} A & B \\ 0 & D \end{pmatrix}\) with \(A\) invertible, the Schur complement of the leading block of \(R^\mathsf {T}R\) is \(D^\mathsf {T}D\). Suppose \(D\) is upper triangular and
Then
If \((FK^qE)_{0j}=0\) for \(q{\lt}r\) and \((FK^rE)_{0j}\ne 0\), then for every sufficiently small nonzero \(t\), every such factorization has \(D_{0j}\ne 0\). Continuity of the selected factors is not required.
Lean Formalisation
theorem Matrix.schur_gram_upper_blocks.{u_1, u_2} {ι : Type u_1} {κ : Type u_2} [Fintype ι] [DecidableEq ι] [Fintype κ]
(A : Matrix ι ι ℝ) (B : Matrix ι κ ℝ) (D : Matrix κ κ ℝ) (hA : IsUnit A.det) :
B.transpose * B + D.transpose * D - B.transpose * A * (A.transpose * A)⁻¹ * (A.transpose * B) = D.transpose * D
Lean proof
/-- The Schur complement of an upper block Gram factor is the trailing Gram matrix. -/
theorem schur_gram_upper_blocks (A : Matrix ι ι ℝ) (B : Matrix ι κ ℝ)
(D : Matrix κ κ ℝ) (hA : IsUnit A.det) :
(B.transpose*B+D.transpose*D) -
(B.transpose*A)*(A.transpose*A)⁻¹*(A.transpose*B) = D.transpose*D := by
rw [mul_inv_rev]
have he : (B.transpose*A)*(A⁻¹*A.transpose⁻¹)*(A.transpose*B) = B.transpose*B := by
simp only [← Matrix.mul_assoc]
rw [mul_nonsing_inv_cancel_right A _ hA,
nonsing_inv_mul_cancel_right A.transpose _ (isUnit_det_transpose A hA)]
rw [he]
abel
source For \(\delta \in \mathbb R\), let \(D_\delta =\{ t\in \mathbb R:1-\delta +\delta t^2\ge 0\} \). The positive branch \(\phi _\delta :D_\delta \to \mathbb R\) is \(\phi _\delta (t)=\sqrt{1-\delta +\delta t^2}\).
Lean Formalisation
def Polynomial.diskDeformation (δ : ℝ) (x : { x // 0 ≤ 1 - δ + δ * x ^ 2 }) : ℝ
Lean definition
/-- The positive deformation branch on its entire classical real domain. -/
noncomputable def diskDeformation (δ : ℝ) (x : {x : ℝ // 0 ≤ 1-δ+δ*x^2}) : ℝ :=
Real.sqrt (1-δ+δ*(x : ℝ)^2)
source The branch is continuous and satisfies \(\phi _\delta (t)^2=1-\delta +\delta t^2\) on \(D_\delta \). If \(0\le \delta \le 1\), then \(D_\delta =\mathbb R\), and the branch maps \([-1,1]\) into \([-1,1]\).
Lean Formalisation
theorem Polynomial.continuous_diskDeformation (δ : ℝ) : Continuous (Polynomial.diskDeformation δ)
Lean proof
/-- The branch is continuous on its classical domain. -/
theorem continuous_diskDeformation (δ : ℝ) : Continuous (diskDeformation δ) := by
unfold diskDeformation
fun_prop
source For a measure \(\mu \) on \(D_\delta \), define
For \(0\le \delta \le 1\), a real source measure is identified with its measure on \(D_\delta =\mathbb R\). In the Cartesian disk application, the scale remains \(\sqrt{1-x^2}\) and the inner factor measure is unchanged.
Lean Formalisation
def Polynomial.diskDeformedMeasure (δ : ℝ) (μ : MeasureTheory.Measure { x // 0 ≤ 1 - δ + δ * x ^ 2 }) :
MeasureTheory.Measure ℝ
Lean definition
/-- Average the two branches of a measure on the classical radicand domain. -/
noncomputable def diskDeformedMeasure (δ : ℝ)
(μ : Measure {x : ℝ // 0 ≤ 1-δ+δ*x^2}) : Measure ℝ :=
(1/2 : ℝ≥0) • (μ.map (diskDeformation δ) + μ.map (fun x => -diskDeformation δ x))
source For a finite measure \(\mu \) on \(D_\delta \) supported on \([-1,1]\) and continuous \(f\),
For even \(f\) this equals the single positive-branch integral. A nonzero source gives a nonzero deformed measure. If \(\delta \ne 0\), the branch has finite fibers.
Lean Formalisation
theorem Polynomial.integral_diskDeformedMeasure (δ : ℝ) {μ : MeasureTheory.Measure { x // 0 ≤ 1 - δ + δ * x ^ 2 }}
[MeasureTheory.IsFiniteMeasure μ] (hx : ∀ᵐ (x : { x // 0 ≤ 1 - δ + δ * x ^ 2 }) ∂μ, ↑x ∈ Set.Icc (-1) 1) {f : ℝ → ℝ}
(hf : Continuous f) :
∫ (x : ℝ), f x ∂Polynomial.diskDeformedMeasure δ μ =
1 / 2 * ∫ (t : { x // 0 ≤ 1 - δ + δ * x ^ 2 }), f (Polynomial.diskDeformation δ t) ∂μ +
1 / 2 * ∫ (t : { x // 0 ≤ 1 - δ + δ * x ^ 2 }), f (-Polynomial.diskDeformation δ t) ∂μ
Lean proof
/-- Continuous functions integrate by averaging their two classical branch pullbacks. -/
theorem integral_diskDeformedMeasure (δ : ℝ)
{μ : Measure {x : ℝ // 0 ≤ 1-δ+δ*x^2}} [IsFiniteMeasure μ]
(hx : ∀ᵐ x : {x : ℝ // 0 ≤ 1-δ+δ*x^2} ∂μ, (x : ℝ) ∈ Icc (-1 : ℝ) 1)
{f : ℝ → ℝ} (hf : Continuous f) :
∫ x, f x ∂diskDeformedMeasure δ μ =
(1/2 : ℝ) * (∫ t, f (diskDeformation δ t) ∂μ) +
(1/2 : ℝ) * (∫ t, f (-diskDeformation δ t) ∂μ) := by
have hclosed : IsClosed {x : ℝ | 0 ≤ 1-δ+δ*x^2} :=
isClosed_le continuous_const (by fun_prop)
have hcompact : IsCompact
(Subtype.val ⁻¹' Icc (-1 : ℝ) 1 : Set {x : ℝ // 0 ≤ 1-δ+δ*x^2}) :=
hclosed.isClosedEmbedding_subtypeVal.isCompact_preimage isCompact_Icc
have hi {g : {x : ℝ // 0 ≤ 1-δ+δ*x^2} → ℝ} (hg : Continuous g) :
Integrable g μ := by
have hh := hg.continuousOn.integrableOn_compact (μ := μ) hcompact
have hx' : ∀ᵐ x ∂μ, x ∈ Subtype.val ⁻¹' Icc (-1 : ℝ) 1 := hx
rwa [IntegrableOn, Measure.restrict_eq_self_of_ae_mem hx'] at hh
have hp0 : Integrable (fun x => f (diskDeformation δ x)) μ :=
hi (hf.comp (continuous_diskDeformation δ))
have hn0 : Integrable (fun x => f (-diskDeformation δ x)) μ :=
hi (hf.comp (continuous_diskDeformation δ).neg)
have hp := (integrable_map_measure hf.aestronglyMeasurable
(continuous_diskDeformation δ).measurable.aemeasurable).2 hp0
have hn := (integrable_map_measure hf.aestronglyMeasurable
(show Measurable (fun x => -diskDeformation δ x) from
(continuous_diskDeformation δ).neg.measurable).aemeasurable).2 hn0
rw [diskDeformedMeasure, integral_smul_nnreal_measure, integral_add_measure hp hn,
integral_map (continuous_diskDeformation δ).measurable.aemeasurable hf.aestronglyMeasurable,
integral_map (show Measurable (fun x => -diskDeformation δ x) from
(continuous_diskDeformation δ).neg.measurable).aemeasurable hf.aestronglyMeasurable]
norm_num [NNReal.smul_def, smul_eq_mul, mul_add]
source Let \(\mu \) be a nonzero finite measure supported on \([-1,1]\), giving zero mass to singletons. For \(0{\lt}\delta \le 1\), \(\mu _\delta \) is finite, even, supported on \([-1,1]\), has all polynomial moments, and has a strictly positive polynomial pairing. Consequently every shifted outer measure \((1-x^2)^k\, d\mu _\delta \) is admissible. For continuous \(f\), writing \(d\mu ^{[k]}=(1-t^2)^k\, d\mu (t)\),
The integral identity needs only finiteness and support, and also holds at \(\delta =0\).
Lean Formalisation
theorem Polynomial.ae_mem_Icc_diskDeformedMeasure {μ : MeasureTheory.Measure ℝ} {δ : ℝ} (hδ : 0 ≤ δ) (hδ1 : δ ≤ 1)
(hx : ∀ᵐ (x : ℝ) ∂μ, x ∈ Set.Icc (-1) 1) :
∀ᵐ (x : ℝ) ∂Polynomial.diskDeformedMeasure δ (MeasureTheory.Measure.comap Subtype.val μ), x ∈ Set.Icc (-1) 1
Lean proof
/-- The deformed transport of a supported real measure has unit-interval support. -/
@[aesop (rule_sets := [PolynomialIntegrability]) unsafe 80% apply]
theorem ae_mem_Icc_diskDeformedMeasure {μ : Measure ℝ} {δ : ℝ}
(hδ : 0 ≤ δ) (hδ1 : δ ≤ 1) (hx : ∀ᵐ x ∂μ, x ∈ Icc (-1 : ℝ) 1) :
∀ᵐ x ∂diskDeformedMeasure δ (μ.comap Subtype.val), x ∈ Icc (-1 : ℝ) 1 :=
ae_mem_Icc_diskDeformedMeasure_on_domain hδ hδ1 (ae_mem_Icc_comap_diskDeformation δ hx)
source For \(\delta \in \mathbb R\setminus \{ 0\} \) and a real polynomial \(p\), let \(E_p(s)=\sum _j[X^{2j}]p\, s^j\). Define \(\mathcal T_\delta p=E_p((X^2-1+\delta )/\delta )\).
Lean Formalisation
def Polynomial.evenDiskTransport (δ : { δ // δ ≠ 0 }) (p : Polynomial ℝ) : Polynomial ℝ
Lean definition
/-- Transport an even polynomial using the inverse affine squared coordinate. -/
noncomputable def evenDiskTransport (δ : {δ : ℝ // δ ≠ 0}) (p : ℝ[X]) : ℝ[X] :=
(p.contract 2).comp (C (δ : ℝ)⁻¹ * (X^2 - C (1-(δ : ℝ))))
source The transported polynomial is even. For every polynomial \(q\) and \(\delta \ne 0\), \(\mathcal T_\delta (q(X^2))=q((X^2-1+\delta )/\delta )\). More generally, \(\mathcal T_\delta p\) is the composition of \(E_p((X-1+\delta )/\delta )\) with \(X^2\).
Lean Formalisation
theorem Polynomial.evenDiskTransport_comp_sq (δ : { δ // δ ≠ 0 }) (q : Polynomial ℝ) :
Polynomial.evenDiskTransport δ (q.comp (Polynomial.X ^ 2)) =
q.comp (Polynomial.C (↑δ)⁻¹ * (Polynomial.X ^ 2 - Polynomial.C (1 - ↑δ)))
Lean proof
/-- For a polynomial in `X²`, transport is ordinary polynomial composition. -/
theorem evenDiskTransport_comp_sq (δ : {δ : ℝ // δ ≠ 0}) (q : ℝ[X]) :
evenDiskTransport δ (q.comp (X^2)) = q.comp (C (δ : ℝ)⁻¹ * (X^2-C (1-(δ : ℝ)))) := by
unfold evenDiskTransport
rw [← expand_eq_comp_X_pow, contract_expand 2 (by norm_num : (2 : ℕ) ≠ 0)]
source Every even real polynomial is \(p(x)=q(x^2)\). For \(\delta \ne 0\), its transport is
For \(\delta \ne 0\) this preserves degree and has inverse \(\mathcal T_{1/\delta }\) on even polynomials. Positive \(\delta \) preserves a positive leading coefficient. Whenever \(x^2=1-\delta +\delta t^2\), \((\mathcal T_\delta p)(x)=p(t)\). With \(E_p(s)=\sum _j[X^{2j}]p\, s^j\), every even \(p\) satisfies \(p(X)=E_p(X^2)\).
Lean Formalisation
theorem Polynomial.comp_sq_contract_of_even_coeff (p : Polynomial ℝ) (hp : ∀ (i : ℕ), i % 2 ≠ 0 → p.coeff i = 0) :
(Polynomial.contract 2 p).comp (Polynomial.X ^ 2) = p
Lean proof
/-- Every polynomial with vanishing odd coefficients is a polynomial in `X²`. -/
theorem comp_sq_contract_of_even_coeff (p : ℝ[X])
(hp : ∀ i, i % 2 ≠ 0 → p.coeff i = 0) :
(p.contract 2).comp (X^2) = p := by
rw [← expand_eq_comp_X_pow]
ext i
rw [coeff_expand (by norm_num : 0 < 2)]
split_ifs with hi
· rw [coeff_contract (by norm_num : (2 : ℕ) ≠ 0)]
congr 1
omega
· exact (hp i (by simpa only [Nat.dvd_iff_mod_eq_zero] using hi)).symm
source Let \(\mu \) be a finite even measure supported in \([-1,1]\) almost everywhere, with finite polynomial moments, and assume that \(\mu \) and \(\mu _\delta \) have positive definite polynomial pairings. For \(0{\lt}\delta \le 1\), transport multiplies the shifted pairing of even polynomials by \(\delta ^k\). If \(p_n^{[k]}\) and \(p_{\delta ,n}^{[k]}\) are the positive-leading orthonormal outer sequences, then for \(a,b\ge 0\) and \(0{\lt}\delta \le 1\),
Lean Formalisation
theorem Polynomial.integralInner_evenDiskTransport {μ : MeasureTheory.Measure ℝ} [MeasureTheory.IsFiniteMeasure μ]
(hx : ∀ᵐ (x : ℝ) ∂μ, x ∈ Set.Icc (-1) 1) {δ : ℝ} (hδ : 0 < δ) (hδ1 : δ ≤ 1) (k : ℕ) (p q : Polynomial ℝ)
(hp : ∀ (i : ℕ), i % 2 ≠ 0 → p.coeff i = 0) (hq : ∀ (i : ℕ), i % 2 ≠ 0 → q.coeff i = 0) :
Polynomial.integralInner
(Polynomial.diskOuterMeasure k
(MeasureTheory.Measure.comap Subtype.val
(Polynomial.diskDeformedMeasure δ (MeasureTheory.Measure.comap Subtype.val μ))))
(Polynomial.IntegrablePair.of
(Polynomial.diskOuterMeasure k
(MeasureTheory.Measure.comap Subtype.val
(Polynomial.diskDeformedMeasure δ (MeasureTheory.Measure.comap Subtype.val μ))))
(Polynomial.evenDiskTransport ⟨δ, ⋯⟩ p) (Polynomial.evenDiskTransport ⟨δ, ⋯⟩ q) ⋯) =
δ ^ k *
Polynomial.integralInner (Polynomial.diskOuterMeasure k (MeasureTheory.Measure.comap Subtype.val μ))
(Polynomial.IntegrablePair.of (Polynomial.diskOuterMeasure k (MeasureTheory.Measure.comap Subtype.val μ)) p q ⋯)
Lean proof
/-- Transport scales the shifted polynomial pairing by `δ^k`. -/
theorem integralInner_evenDiskTransport {μ : Measure ℝ} [IsFiniteMeasure μ]
(hx : ∀ᵐ x ∂μ, x ∈ Icc (-1 : ℝ) 1)
{δ : ℝ} (hδ : 0 < δ) (hδ1 : δ ≤ 1) (k : ℕ) (p q : ℝ[X])
(hp : ∀ i, i % 2 ≠ 0 → p.coeff i = 0)
(hq : ∀ i, i % 2 ≠ 0 → q.coeff i = 0) :
integralInner (diskOuterMeasure k ((diskDeformedMeasure δ (μ.comap Subtype.val)).comap Subtype.val)) (IntegrablePair.of (diskOuterMeasure k ((diskDeformedMeasure δ (μ.comap Subtype.val)).comap Subtype.val)) (evenDiskTransport ⟨δ,hδ.ne'⟩ p) (evenDiskTransport ⟨δ,hδ.ne'⟩ q) (h := ((hasFiniteMoments_diskDeformedMeasure hδ.le hδ1 hx).diskOuterMeasure (ae_mem_Icc_diskDeformedMeasure hδ.le hδ1 hx) _).integrable_mul _ _)) =
δ^k * integralInner (diskOuterMeasure k (μ.comap Subtype.val)) (IntegrablePair.of (diskOuterMeasure k (μ.comap Subtype.val)) p q (h := ((hasFiniteMoments_of_ae_mem_Icc hx).diskOuterMeasure hx _).integrable_mul _ _)) := by
unfold integralInner
rw [integral_diskOuterMeasure_diskDeformedMeasure_even hx hδ.le hδ1 k
(by fun_prop) (by
intro x
dsimp only
exact congrArg₂ (fun a b : ℝ => a*b)
(even_eval_evenDiskTransport ⟨δ,hδ.ne'⟩ p x) (even_eval_evenDiskTransport ⟨δ,hδ.ne'⟩ q x))]
congr 1
apply integral_congr_ae
apply Filter.Eventually.of_forall
intro t
dsimp only
rw [eval_evenDiskTransport_sq δ hδ.ne' p hp _ t (diskDeformation_sq_of_unitInterval hδ.le hδ1 t),
eval_evenDiskTransport_sq δ hδ.ne' q hq _ t (diskDeformation_sq_of_unitInterval hδ.le hδ1 t)]
source Let \(S,T\) be the canonical positive-leading Cartesian systems for \((\mu ,\nu )\) and \((\mu _\delta ,\nu )\) under the preceding hypotheses, with finite factor measures supported on \([-1,1]\) and positive polynomial pairings. For \(n=2a+2b\), \(k=2b\), \(t\in [-1,1]\), and \(z\in \mathbb R\),
Thus for any two even-even indices \(i,j\) and any \(A,B,C\in \mathbb R\),
where \(\sigma ,\sigma _\delta \) are the corresponding Cartesian disk measures.
Lean Formalisation
theorem MvPolynomial.eval_cartesianDiskPolynomial_evenDiskTransport {δ : ℝ} (hδ : 0 < δ) (b : ℕ) (p q : Polynomial ℝ)
(hp : ∀ (i : ℕ), i % 2 ≠ 0 → p.coeff i = 0) (hq : q.natDegree ≤ 2 * b)
(hpar : ∀ (j : ℕ), j % 2 ≠ 2 * b % 2 → q.coeff j = 0) (x t z : ℝ) (hx : x ∈ Set.Icc (-1) 1) (ht : t ∈ Set.Icc (-1) 1)
(hxt : x ^ 2 = 1 - δ + δ * t ^ 2) :
(MvPolynomial.eval ((fun v => ![v.1, √(1 - v.1 ^ 2) * v.2]) (x, z)))
(MvPolynomial.cartesianDiskPolynomial (δ⁻¹ ^ b • Polynomial.evenDiskTransport ⟨δ, ⋯⟩ p) q (2 * b)) =
(MvPolynomial.eval ((fun v => ![v.1, √(1 - v.1 ^ 2) * v.2]) (t, z)))
(MvPolynomial.cartesianDiskPolynomial p q (2 * b))
Lean proof
/-- The outer normalization exactly cancels the even inner-lift scaling. -/
theorem eval_cartesianDiskPolynomial_evenDiskTransport
{δ : ℝ} (hδ : 0 < δ) (b : ℕ) (p q : ℝ[X])
(hp : ∀ i, i % 2 ≠ 0 → p.coeff i = 0)
(hq : q.natDegree ≤ 2*b) (hpar : ∀ j, j % 2 ≠ (2*b) % 2 → q.coeff j = 0)
(x t z : ℝ) (hx : x ∈ Icc (-1 : ℝ) 1) (ht : t ∈ Icc (-1 : ℝ) 1)
(hxt : x^2 = 1-δ+δ*t^2) :
eval ((fun v : ℝ × ℝ ↦ (![v.1, Real.sqrt (1-v.1^2)*v.2] : Fin 2 → ℝ)) (x,z))
(cartesianDiskPolynomial (δ⁻¹^b • evenDiskTransport ⟨δ,hδ.ne'⟩ p) q (2*b)) =
eval ((fun v : ℝ × ℝ ↦ (![v.1, Real.sqrt (1-v.1^2)*v.2] : Fin 2 → ℝ)) (t,z)) (cartesianDiskPolynomial p q (2*b)) := by
rw [eval_cartesianDiskPolynomial _ _ _ hq hpar x z hx,
eval_cartesianDiskPolynomial _ _ _ hq hpar t z ht, Polynomial.eval_smul,
smul_eq_mul, eval_evenDiskTransport_sq δ hδ.ne' p hp x t hxt]
have hx0 : 0 ≤ 1-x^2 := by nlinarith [hx.1,hx.2]
have ht0 : 0 ≤ 1-t^2 := by nlinarith [ht.1,ht.2]
have he : 1-x^2 = δ*(1-t^2) := by rw [hxt]; ring
rw [pow_mul, pow_mul, Real.sq_sqrt hx0, Real.sq_sqrt ht0, he, mul_pow]
have hc : δ⁻¹^b * δ^b = 1 := by rw [← mul_pow, inv_mul_cancel₀ hδ.ne', one_pow]
linear_combination p.eval t * (1-t^2)^b * q.eval z * hc
source This identifies the even-even quadratic Gram entries as an affine function of \(\delta \); it does not assert nonvanishing of Cholesky entries.
For an orthogonal degree-indexed sequence with finite moments, a polynomial of degree \(n\) pairs with its \(n\)th member through the ratio of leading coefficients. Two symmetric Jacobi parameter raisings express \(P_n^{(\beta ,\beta )}\) in target degrees \(n,n-2,n-4\), with strictly positive, negative, positive coefficients when present, throughout \(\beta {\gt}-1\). Missing initial-degree terms have zero coefficients. The corresponding pairings in the target weight have the same strict signs.
Lean Formalisation
theorem Polynomial.Sequence.IsOrthogonal.integralInner_eq_leadingCoeff_div_mul {μ : MeasureTheory.Measure ℝ}
(hμ : Polynomial.HasFiniteMoments μ) {P : Polynomial.Sequence ℝ} (hP : P.IsOrthogonal μ) {p : Polynomial ℝ} {n : ℕ}
(hp : p.degree = ↑n) :
Polynomial.integralInner μ (Polynomial.IntegrablePair.of μ p (↑P n) ⋯) =
p.leadingCoeff / (↑P n).leadingCoeff * Polynomial.integralInner μ (Polynomial.IntegrablePair.of μ (↑P n) (↑P n) ⋯)
Lean proof
/-- A polynomial of degree n pairs with the nth orthogonal polynomial through
its leading coefficient alone. -/
theorem IsOrthogonal.integralInner_eq_leadingCoeff_div_mul {μ : Measure ℝ}
(hμ : HasFiniteMoments μ) {P : Sequence ℝ} (hP : P.IsOrthogonal μ)
{p : ℝ[X]} {n : ℕ} (hp : p.degree = n) :
integralInner μ (IntegrablePair.of μ p (P n)) =
(p.leadingCoeff / (P n).leadingCoeff) * integralInner μ (IntegrablePair.of μ (P n) (P n)) := by
have hp0 : p ≠ 0 := by intro h; simp [h] at hp
have hP0 := leadingCoeff_ne_zero.mpr (P.ne_zero n)
let c := p.leadingCoeff / (P n).leadingCoeff
have hc : c ≠ 0 := div_ne_zero (leadingCoeff_ne_zero.mpr hp0) hP0
have hd : (p - c • P n).degree < n := by
have h := degree_sub_lt_left
(show p.degree = (c • P n).degree by
simp [hp, degree_smul_of_smul_regular _ (IsSMulRegular.of_ne_zero hc)])
hp0 (show p.leadingCoeff = (c • P n).leadingCoeff by
rw [leadingCoeff_smul_of_smul_regular _ (IsSMulRegular.of_ne_zero hc)]
simp [c, hP0])
simpa [hp] using h
have hz := hP.integralInner_eq_zero_of_degree_lt hμ hd
rw [integralInner_sub_left hμ, integralInner_smul_left (h := hμ.integrable_mul _ _)] at hz
exact sub_eq_zero.mp hz
source In the original Jacobi-normalized Dunkl–Xu basis, multiplication by \(y^2\) with inner-index increase two has total-degree changes \(+2,0,-2\) with strict signs \(+,-,+\). Invalid lower degrees are omitted; the top coefficient remains positive at outer degrees zero and one. These are signs of actual weighted pairings, valid for every disk parameter \(\beta {\gt}-1\).
Lean Formalisation
theorem MvPolynomial.integralInner_y_sq_dunklXuDisk_separated {β : ℝ} (hβ : -1 < β) (n k m j : ℕ) :
MvPolynomial.integralInner (MvPolynomial.dunklXuDiskMeasure β)
(MvPolynomial.IntegrablePair.of (MvPolynomial.dunklXuDiskMeasure β)
(MvPolynomial.X 1 ^ 2 * MvPolynomial.dunklXuDisk β n k) (MvPolynomial.dunklXuDisk β m j) ⋯) =
(∫ (x : ↑(Set.Ioo (-1) 1)),
↑((Polynomial.jacobiWeight (β + 1 / 2) (β + 1 / 2)) x) *
(Polynomial.eval (↑x) (Polynomial.jacobi (β + ↑k + 1 / 2) (β + ↑k + 1 / 2) (n - k)) *
Polynomial.eval (↑x) (Polynomial.jacobi (β + ↑j + 1 / 2) (β + ↑j + 1 / 2) (m - j)) *
√(1 - ↑x ^ 2) ^ (k + j + 2))) *
Polynomial.integralInner (Polynomial.jacobiMeasure β β)
(Polynomial.IntegrablePair.of (Polynomial.jacobiMeasure β β) (Polynomial.X ^ 2 * Polynomial.jacobi β β k)
(Polynomial.jacobi β β j) ⋯)
Lean proof
/-- Multiplication by y² separates into a radius-weighted outer pairing and
univariate multiplication by the inner coordinate squared. -/
theorem integralInner_y_sq_dunklXuDisk_separated {β : ℝ} (hβ : -1 < β)
(n k m j : ℕ) :
integralInner (dunklXuDiskMeasure β) (IntegrablePair.of (dunklXuDiskMeasure β) (X 1 ^ 2 * dunklXuDisk β n k) (dunklXuDisk β m j)) =
(∫ x : Ioo (-1 : ℝ) 1, (jacobiWeight (β + 1 / 2) (β + 1 / 2) x : ℝ) *
((jacobi (β + k + 1 / 2) (β + k + 1 / 2) (n - k)).eval (x : ℝ) *
(jacobi (β + j + 1 / 2) (β + j + 1 / 2) (m - j)).eval (x : ℝ) *
Real.sqrt (1 - (x : ℝ) ^ 2) ^ (k + j + 2))) *
Polynomial.integralInner (jacobiMeasure β β) (Polynomial.IntegrablePair.of (jacobiMeasure β β) (Polynomial.X ^ 2 * jacobi β β k) (jacobi β β j)) := by
let := isFiniteMeasure_jacobiMeasure hβ hβ
let := isFiniteMeasure_jacobiMeasure
(show -1 < β + 1 / 2 by linarith) (show -1 < β + 1 / 2 by linarith)
let : IsFiniteMeasure (volume.withDensity fun x : Ioo (-1 : ℝ) 1 ↦
(jacobiWeight (β+1/2) (β+1/2) x : ENNReal)) := by
apply (Measure.isFiniteMeasure_map_iff measurable_subtype_coe.aemeasurable).mp
change IsFiniteMeasure (jacobiMeasure (β+1/2) (β+1/2))
infer_instance
let p : MvPolynomial (Fin 2) ℝ := (X 1 ^ 2 * dunklXuDisk β n k) * dunklXuDisk β m j
have hi := integral_dunklXuDiskMeasure_open β
⟨fun v ↦ eval v p, integrable_dunklXuDiskMeasure hβ p.continuous_eval⟩
simp only [p, map_mul] at hi
rw [integralInner]
simp only [map_mul]
rw [hi, Polynomial.integralInner]
have hw := integral_withDensity_eq_integral_smul (μ := volume)
(jacobiWeight (β + 1/2) (β + 1/2)).continuous.measurable
(fun x : Ioo (-1 : ℝ) 1 ↦
(jacobi (β + k + 1/2) (β + k + 1/2) (n-k)).eval (x : ℝ) *
(jacobi (β + j + 1/2) (β + j + 1/2) (m-j)).eval (x : ℝ) *
Real.sqrt (1-(x : ℝ)^2)^(k+j+2))
simp only [NNReal.smul_def, smul_eq_mul] at hw
rw [← hw, ← integral_prod_mul]
apply integral_congr_ae
filter_upwards [] with v
rw [eval_dunklXuDisk_diskCoordinates β n k v.1 v.2 v.1.property,
eval_dunklXuDisk_diskCoordinates β m j v.1 v.2 v.1.property]
simp only [map_pow, eval_X, Polynomial.eval_mul,
Polynomial.eval_pow, Polynomial.eval_X, pow_add, Matrix.cons_val_one, Matrix.cons_val_zero]
ring
source In the normalized basis, the perturbation \(Cy^2-B(1-x^2)\) has symmetric multiplication matrix. Every polynomial in \(x\) preserves the inner index, so off-inner-diagonal entries depend only on \(C\). Inner gaps larger than two and opposite inner parities vanish exactly. Positive norm scalings preserve the preceding strict signs.
Lean Formalisation
theorem MvPolynomial.integralInner_outer_mul_dunklXuDisk_eq_zero {β : ℝ} (hβ : -1 < β) (p : Polynomial ℝ) (n k m j : ℕ)
(hkj : k ≠ j) :
MvPolynomial.integralInner (MvPolynomial.dunklXuDiskMeasure β)
(MvPolynomial.IntegrablePair.of (MvPolynomial.dunklXuDiskMeasure β)
(Polynomial.eval₂ MvPolynomial.C (MvPolynomial.X 0) p * MvPolynomial.dunklXuDisk β n k)
(MvPolynomial.dunklXuDisk β m j) ⋯) =
0
Lean proof
/-- Any polynomial in the first coordinate preserves the inner index. -/
theorem integralInner_outer_mul_dunklXuDisk_eq_zero {β : ℝ} (hβ : -1 < β)
(p : ℝ[X]) (n k m j : ℕ) (hkj : k ≠ j) :
integralInner (dunklXuDiskMeasure β) (IntegrablePair.of (dunklXuDiskMeasure β) (p.eval₂ C (X 0) * dunklXuDisk β n k) (dunklXuDisk β m j)) = 0 := by
have hα : -1 < β+1/2 := by linarith
let := isFiniteMeasure_jacobiMeasure hβ hβ
let := isFiniteMeasure_jacobiMeasure hα hα
have he := integralInner_cartesianDiskPolynomial
(μ := jacobiMeasure (β+1/2) (β+1/2)) (ν := jacobiMeasure β β)
(ae_mem_Icc_jacobiMeasure _ _)
(p*jacobi (β+k+1/2) (β+k+1/2) (n-k))
(jacobi (β+j+1/2) (β+j+1/2) (m-j))
(jacobi β β k) (jacobi β β j) k j
(natDegree_jacobi_le _ _ _) (natDegree_jacobi_le _ _ _)
(coeff_jacobi_symmetric_eq_zero_of_parity β k)
(coeff_jacobi_symmetric_eq_zero_of_parity β j)
(ho := (hasFiniteMoments_jacobiMeasure hα hα).integrable_disk_outer_factor
(ae_mem_Icc_jacobiMeasure _ _) _ _ _)
(hi := (hasFiniteMoments_jacobiMeasure hβ hβ).integrable_mul _ _)
rw [Polynomial.integralInner, integral_mul_jacobi_eq_zero hβ hβ hkj, mul_zero] at he
simpa only [integralInner, cartesianDiskPolynomial, dunklXuDisk, dunklXuDiskMeasure,
Polynomial.eval₂_mul, map_mul, mul_assoc] using he
source For a boundary row, \(q\) interior matrix steps and a boundary column, a level gap exceeding \(q+2\) forces the sandwich to vanish if each edge increases level by at most one. At gap exactly \(q+2\), only maximal steps contribute. Diagonal signs telescope through both boundary edges. Nonnegative signed entries and one positive path imply a strictly positive signed sandwich.
Lean Formalisation
theorem Matrix.sum_mul_pow_mul_eq_zero_of_level_gap.{u_1} {ι : Type u_1} [Fintype ι] [DecidableEq ι] (K : Matrix ι ι ℝ)
(F G : ι → ℝ) (level : ι → ℤ) (lo hi : ℤ) (hK : ∀ (i j : ι), level i + 1 < level j → K i j = 0)
(hF : ∀ (i : ι), lo + 1 < level i → F i = 0) (hG : ∀ (i : ι), level i + 1 < hi → G i = 0) (q : ℕ)
(hgap : lo + ↑q + 2 < hi) : ∑ i, ∑ j, F i * (K ^ q) i j * G j = 0
Lean proof
/-- Too few interior steps force a boundary-to-boundary sandwich to vanish. -/
theorem sum_mul_pow_mul_eq_zero_of_level_gap
(K : Matrix ι ι ℝ) (F G : ι → ℝ) (level : ι → ℤ) (lo hi : ℤ)
(hK : ∀ i j, level i + 1 < level j → K i j = 0)
(hF : ∀ i, lo + 1 < level i → F i = 0)
(hG : ∀ i, level i + 1 < hi → G i = 0)
(q : ℕ) (hgap : lo + q + 2 < hi) :
∑ i, ∑ j, F i * (K ^ q) i j * G j = 0 := by
apply Finset.sum_eq_zero
intro i _
apply Finset.sum_eq_zero
intro j _
by_cases hf : F i = 0
· simp [hf]
by_cases hg : G j = 0
· simp [hg]
have hfi : level i ≤ lo + 1 := by
by_contra h
exact hf (hF i (by omega))
have hgj : hi ≤ level j + 1 := by
by_contra h
exact hg (hG j (by omega))
rw [pow_apply_eq_zero_of_level_gap K level hK q i j (by omega)]
simp
source Reindex the even-even sector by \((n,k)=(2a+2b,2b)\). For every \(r\ge 2\), let \(I=\{ (a,b):a+b{\lt}r\} \), with boundary indices \((r,0)\) and \((0,r)\). For the perturbation \(y^2-B(1-x^2)\), write its interior block as \(K\) and boundary row and column as \(F,G\). For any interior matrix \(M\), define the real linear functional \(\Phi (M)=\sum _{i,j\in I}F_iM_{ij}G_j=FMG\). Then \(FK^qG=0\) for \(q{\lt}r-2\), but \(FK^{r-2}G\ne 0\). The diagonal sign \((-1)^a\) makes all maximal steps nonnegative. The strictly positive path enters at \((r-2,1)\), follows \((r-3,2),\ldots ,(0,r-1)\), and exits to \((0,r)\).
Lean Formalisation
theorem MvPolynomial.dunklXuInteriorPath_degree (r : ℕ) (hr : 2 ≤ r) (k : ℕ) :
↑(↑(MvPolynomial.dunklXuInteriorPath r hr k)).1 + ↑(↑(MvPolynomial.dunklXuInteriorPath r hr k)).2 = r - 1
Lean proof
/-- All interior path vertices lie on the last degree layer of the leading section. -/
theorem dunklXuInteriorPath_degree (r : ℕ) (hr : 2 ≤ r) (k : ℕ) :
((dunklXuInteriorPath r hr k).1.1 : ℕ) + (dunklXuInteriorPath r hr k).1.2 = r - 1 := by
dsimp [dunklXuInteriorPath]
omega
source For any \(C\ne 0\), any \(B\), and any \(r\ge 2\), the quadratic perturbation \(Cy^2-B(1-x^2)\), with interior block \(K\) and boundary factors \(F,G\) as in Theorem 5.7.25, has nonzero first allowed sandwich coefficient. Scaling contributes \(C^{q+2}\) to the \(q\)th power sandwich. Consequently \(F(I+tK)^{-1}G\ne 0\) for every sufficiently small nonzero real \(t\), where the neighborhood may depend on \(r,B,C\) and the disk parameter.
Lean Formalisation
theorem MvPolynomial.dunklXuQuadraticMatrix_scale {β : ℝ} (hβ : -1 < β) (u v : ℝ) (hv : v ≠ 0) (i j : (n : ℕ) × Fin (n + 1)) :
MvPolynomial.dunklXuQuadraticMatrix hβ u v i j = v * MvPolynomial.dunklXuQuadraticMatrix hβ (u / v) 1 i j
Lean proof
/-- Normalize the y² coefficient by factoring it out of every multiplication entry. -/
theorem dunklXuQuadraticMatrix_scale {β : ℝ} (hβ : -1 < β) (u v : ℝ) (hv : v ≠ 0)
(i j : Σ n : ℕ, Fin (n + 1)) :
dunklXuQuadraticMatrix hβ u v i j = v * dunklXuQuadraticMatrix hβ (u / v) 1 i j := by
have he : (C v * X 1 ^ 2 - C u * (1 - X 0 ^ 2) : MvPolynomial (Fin 2) ℝ) =
v • (C 1 * X 1 ^ 2 - C (u / v) * (1 - X 0 ^ 2)) := by
conv_rhs =>
rw [smul_eq_C_mul, map_one, one_mul, mul_sub,
← mul_assoc (C v) (C (u / v)), ← map_mul]
rw [show v * (u / v) = u by field_simp]
unfold dunklXuQuadraticMatrix
simp only [he, smul_mul_assoc]
rw [integralInner_smul_left (h := (hasFiniteMoments_dunklXuDiskMeasure hβ).integrable_mul _ _)]
source For the even-sector pencil \(I+tK_{\rm full}\) of \(Cy^2-B(1-x^2)\), \(C\ne 0\), and \(r\ge 2\), split at degree \(2r\). Any compatible upper block Gram factor \(\left(\begin{smallmatrix} A & B_0 \\ 0 & D \end{smallmatrix}\right)\) with invertible \(A\) and upper triangular \(D\) has \(D_{0,r}\ne 0\) for all sufficiently small nonzero \(t\). Compatibility means its four transpose-product blocks equal those of the displayed pencil.
Lean Formalisation
theorem MvPolynomial.dunklXuInteriorFunctional_eq_sandwich {β : ℝ} (hβ : -1 < β) (u v : ℝ) (r : ℕ)
(M : Matrix (MvPolynomial.DunklXuEvenInterior r) (MvPolynomial.DunklXuEvenInterior r) ℝ) :
(MvPolynomial.dunklXuInteriorFunctional hβ u v r) M =
(MvPolynomial.dunklXuQuadraticLeftBlock hβ u v r * M * MvPolynomial.dunklXuQuadraticRightBlock hβ u v r) 0
(Fin.last r)
Lean proof
/-- The scalar path functional is exactly the relevant matrix sandwich entry. -/
theorem dunklXuInteriorFunctional_eq_sandwich {β : ℝ} (hβ : -1 < β) (u v : ℝ) (r : ℕ)
(M : Matrix (DunklXuEvenInterior r) (DunklXuEvenInterior r) ℝ) :
dunklXuInteriorFunctional hβ u v r M =
(dunklXuQuadraticLeftBlock hβ u v r * M * dunklXuQuadraticRightBlock hβ u v r) 0
(Fin.last r) := by
simp only [dunklXuInteriorFunctional, LinearMap.coe_mk, AddHom.coe_mk, Matrix.mul_apply,
Finset.sum_mul, dunklXuQuadraticLeftBlock, dunklXuQuadraticRightBlock,
dunklXuEvenBoundary, Fin.val_zero, Fin.val_last, Nat.sub_zero, Nat.sub_self,
dunklXuInteriorLeft, dunklXuInteriorRight]
rw [Finset.sum_comm]
source The canonical ordered-factor conclusion is given in Theorem 5.7.33.
An upper triangular real factor with nonzero diagonal preserves every sector decomposition of its transpose-product Gram matrix: all cross-sector factor entries vanish. Restricting to a complete sector therefore commutes with forming the Gram matrix. Splitting such a sector into an earlier interior and a later boundary gives the usual four block Gram identities, even when other sectors are interleaved in the full ordering.
Lean Formalisation
theorem Matrix.IsUpperTriangular.apply_eq_zero_of_gram_sectors.{u_1} {n : ℕ} {γ : Type u_1} {R : Matrix (Fin n) (Fin n) ℝ}
(hR : R.IsUpperTriangular) (hd : ∀ (i : Fin n), R i i ≠ 0) (sector : Fin n → γ)
(hG : ∀ (i j : Fin n), sector i ≠ sector j → (R.transpose * R) i j = 0) (i j : Fin n) (hij : sector i ≠ sector j) :
R i j = 0
Lean proof
/-- A triangular Gram factor cannot couple orthogonal sectors. No contiguous
block ordering is required for the sector labels. -/
theorem IsUpperTriangular.apply_eq_zero_of_gram_sectors {n : ℕ} {γ : Type*}
{R : Matrix (Fin n) (Fin n) ℝ} (hR : R.IsUpperTriangular)
(hd : ∀ i, R i i ≠ 0) (sector : Fin n → γ)
(hG : ∀ i j, sector i ≠ sector j → (R.transpose * R) i j = 0)
(i j : Fin n) (hij : sector i ≠ sector j) : R i j = 0 := by
classical
have hrow (m : ℕ) : ∀ i : Fin n, i.val = m → ∀ j, sector i ≠ sector j → R i j = 0 := by
induction m using Nat.strong_induction_on with
| h m ih =>
intro i hi j hij
have hs : (R.transpose * R) i j = R i i * R i j := by
rw [mul_apply]
apply Finset.sum_eq_single i
· intro k _ hki
change R k i * R k j = 0
by_cases hk : k < i
· by_cases hsector : sector k = sector i
· rw [ih k.val (by omega) k rfl j (by simpa [hsector] using hij), mul_zero]
· rw [ih k.val (by omega) k rfl i hsector, zero_mul]
· rw [hR (by omega : i < k), zero_mul]
· simp
exact (mul_eq_zero.mp (hs.symm.trans (hG i j hij))).resolve_left (hd i)
exact hrow i.val i rfl j hij
source For factor measures \(\mu ,\nu \) on \(\mathbb R\) with \(\nu \) s-finite, evenness of either factor makes \(\mu \times \nu \) invariant under reflection of its corresponding coordinate. For even admissible outer and inner factor measures, the Cartesian polynomial indexed by \((n,k)\) has reflection signs \((-1)^{n-k}\) and \((-1)^k\). A diagonal quadratic density preserves these reflections. Its Gram matrix and canonical positive upper triangular factor have exact zeros between different parity pairs \(((n-k)\bmod 2,k\bmod 2)\). The canonical-factor statement assumes a nonnegative density and the moments and positivity needed to define that factor.
Lean Formalisation
theorem MeasureTheory.map_prod_neg_left (μ ν : MeasureTheory.Measure ℝ) [MeasureTheory.SFinite ν] [μ.IsNegInvariant] :
MeasureTheory.Measure.map (fun z => (-z.1, z.2)) (μ.prod ν) = μ.prod ν
Lean proof
/-- An even first factor makes the product measure invariant under first-coordinate
reflection. Reference: change of variables for product measures. -/
theorem map_prod_neg_left (μ ν : Measure ℝ) [SFinite ν] [μ.IsNegInvariant] :
Measure.map (fun z : ℝ × ℝ => (-z.1,z.2)) (μ.prod ν) = μ.prod ν := by
change Measure.map (Prod.map Neg.neg id) (μ.prod ν) = _
rw [← Measure.map_prod_map μ ν measurable_neg measurable_id]
simp [Measure.map_neg_eq_self]
source Reference details: Actual quadratic Gram pencil and full-factor implication and related results
Under \(x^2=1-\delta +\delta t^2\), the actual modified even-sector Gram matrix is \((A+B)I+\delta K\), where \(K\) is the normalized disk multiplication matrix of \(Cy^2-B(1-x^2)\). For \(A+B=1\), \(C\ne 0\), every complete-sector embedding into an upper triangular full factor inherits the distant-entry nonvanishing for all sufficiently small nonzero \(\delta \). The embedding includes the entire sector and respects interior-before-boundary and increasing boundary order.
Lean Formalisation
theorem MvPolynomial.integral_quadratic_deformed_eq_dunklXu_pencil {β : ℝ} (hβ : -1 < β) {δ : ℝ} (hδ : 0 < δ) (hδ1 : δ ≤ 1)
(hδpos :
Polynomial.HasPositiveDefiniteIntegral
(Polynomial.diskDeformedMeasure δ
(MeasureTheory.Measure.comap Subtype.val (Polynomial.jacobiMeasure (β + 1 / 2) (β + 1 / 2)))))
(T :
MvPolynomial.CartesianDiskSystem
(MeasureTheory.Measure.comap Subtype.val
(Polynomial.diskDeformedMeasure δ
(MeasureTheory.Measure.comap Subtype.val (Polynomial.jacobiMeasure (β + 1 / 2) (β + 1 / 2)))))
(Polynomial.jacobiMeasure β β))
(a b c d : ℕ) (A B C : ℝ) :
∫ (x : Fin 2 → ℝ),
(A + B * x 0 ^ 2 + C * x 1 ^ 2) *
((MvPolynomial.eval x) (T.polynomial (2 * a + 2 * b) (2 * b)) *
(MvPolynomial.eval x)
(T.polynomial (2 * c + 2 * d)
(2 *
d))) ∂MvPolynomial.cartesianDiskMeasure
(MeasureTheory.Measure.comap Subtype.val
(Polynomial.diskDeformedMeasure δ
(MeasureTheory.Measure.comap Subtype.val (Polynomial.jacobiMeasure (β + 1 / 2) (β + 1 / 2)))))
(MeasureTheory.ProductMeasureInput.ofSFinite
(MeasureTheory.Measure.comap Subtype.val
(Polynomial.diskDeformedMeasure δ
(MeasureTheory.Measure.comap Subtype.val (Polynomial.jacobiMeasure (β + 1 / 2) (β + 1 / 2)))))
(Polynomial.jacobiMeasure β β)) =
((A + B) * if (a, b) = (c, d) then 1 else 0) +
δ * MvPolynomial.dunklXuQuadraticMatrix hβ B C ⟨2 * a + 2 * b, ⟨2 * b, ⋯⟩⟩ ⟨2 * c + 2 * d, ⟨2 * d, ⋯⟩⟩
Lean proof
/-- Actual deformed Cartesian quadratic Gram entries equal the concrete
normalized disk affine pencil, throughout the admissible deformation range. -/
theorem integral_quadratic_deformed_eq_dunklXu_pencil {β : ℝ} (hβ : -1 < β)
{δ : ℝ} (hδ : 0 < δ) (hδ1 : δ ≤ 1)
(hδpos : Polynomial.HasPositiveDefiniteIntegral
(diskDeformedMeasure δ ((jacobiMeasure (β + 1 / 2) (β + 1 / 2)).comap Subtype.val)))
(T : CartesianDiskSystem (Measure.comap (Subtype.val : Set.Icc (-1 : ℝ) 1 → ℝ) (diskDeformedMeasure δ ((jacobiMeasure (β + 1 / 2) (β + 1 / 2)).comap Subtype.val))) (jacobiMeasure β β))
(a b c d : ℕ) (A B C : ℝ) :
(∫ x, (A + B * (x 0) ^ 2 + C * (x 1) ^ 2) *
(eval x (T.polynomial (2 * a + 2 * b) (2 * b)) *
eval x (T.polynomial (2 * c + 2 * d) (2 * d)))
∂cartesianDiskMeasure
(Measure.comap (Subtype.val : Set.Icc (-1 : ℝ) 1 → ℝ) (diskDeformedMeasure δ ((jacobiMeasure (β + 1 / 2) (β + 1 / 2)).comap Subtype.val))) (ProductMeasureInput.ofSFinite (hν := by infer_instance) (Measure.comap (Subtype.val : Set.Icc (-1 : ℝ) 1 → ℝ) (diskDeformedMeasure δ ((jacobiMeasure (β + 1 / 2) (β + 1 / 2)).comap Subtype.val))) (jacobiMeasure β β))) =
(A + B) * (if (a, b) = (c, d) then 1 else 0) +
δ * dunklXuQuadraticMatrix hβ B C
⟨2 * a + 2 * b, ⟨2 * b, by omega⟩⟩ ⟨2 * c + 2 * d, ⟨2 * d, by omega⟩⟩ := by
have hβ' : -1 < β + 1 / 2 := by linarith
let := isFiniteMeasure_jacobiMeasure hβ hβ
let := isFiniteMeasure_jacobiMeasure hβ' hβ'
let := isNegInvariant_jacobiMeasure (β + 1 / 2)
let S := dunklXuCartesianSystem hβ
rw [S.integral_quadratic_polynomial_diskDeformation
(ae_mem_Icc_jacobiMeasure _ _) (ae_mem_Icc_jacobiMeasure _ _)
(hasFiniteMoments_jacobiMeasure hβ' hβ') (hasPositiveDefiniteIntegral_jacobiMeasure hβ' hβ')
(hasFiniteMoments_jacobiMeasure hβ hβ) (hasPositiveDefiniteIntegral_jacobiMeasure hβ hβ)
hδ hδ1 hδpos T a b c d A B C]
rw [← normalizedDunklXuBasis_eq_cartesian hβ S ⟨2 * a + 2 * b, ⟨2 * b, by omega⟩⟩,
← normalizedDunklXuBasis_eq_cartesian hβ S ⟨2 * c + 2 * d, ⟨2 * d, by omega⟩⟩]
change (∫ x, _ ∂dunklXuDiskMeasure β) = _
rw [integral_affine_quadratic_normalizedDunklXuBasis]
congr 2
congr 1
apply propext
constructor
· intro h
have hn := congrArg Sigma.fst h
have hk := congrArg (fun i : Σ n : ℕ, Fin (n + 1) ↦ (i.2 : ℕ)) h
exact Prod.ext (by dsimp at hn hk; omega) (by dsimp at hk; omega)
· intro h
cases h
rfl
source For \(\beta {\gt}-1\) and \(0{\lt}\delta \le 1\), the deformed outer Jacobi factor defines an actual positive Cartesian system. The scalar conditions \(A\ge 0\), \(A+B{\gt}0\), \(A+C\ge 0\) make the diagonal quadratic modification nonnegative and preserve finite moments and strict polynomial positivity. A positive scalar Gram rescaling multiplies its canonical factor by the positive square root, preserving every zero.
Lean Formalisation
theorem Polynomial.hasPositiveDefiniteIntegral_diskDeformed_jacobiMeasure {α β : ℝ} (hα : -1 < α) (hβ : -1 < β) {δ : ℝ}
(hδ : 0 < δ) (hδ1 : δ ≤ 1) :
Polynomial.HasPositiveDefiniteIntegral
(Polynomial.diskDeformedMeasure δ (MeasureTheory.Measure.comap Subtype.val (Polynomial.jacobiMeasure α β)))
Lean proof
/-- Every admissible Jacobi factor remains polynomially positive after deformation. -/
@[aesop (rule_sets := [PolynomialIntegrability]) unsafe 80% apply]
theorem hasPositiveDefiniteIntegral_diskDeformed_jacobiMeasure {α β : ℝ}
(hα : -1 < α) (hβ : -1 < β) {δ : ℝ} (hδ : 0 < δ) (hδ1 : δ ≤ 1) :
HasPositiveDefiniteIntegral (diskDeformedMeasure δ ((jacobiMeasure α β).comap Subtype.val)) := by
let := isFiniteMeasure_jacobiMeasure hα hβ
have hμ : jacobiMeasure α β ≠ 0 := by
intro he
have h := hasPositiveDefiniteIntegral_jacobiMeasure hα hβ 1 one_ne_zero
rw [he] at h
simp at h
exact hasPositiveDefiniteIntegral_diskDeformedMeasure hμ hδ hδ1 (ae_mem_Icc_jacobiMeasure _ _)
source The complete Cartesian basis through degree \(2r\) admits an explicit increasing-total-degree, increasing-inner-index enumeration. Its entire even-even sector is the interior \(a+b{\lt}r\) followed by the top block \((r-j,j)\), \(0\le j\le r\), in half-degree coordinates. The embedding is injective, covers every even-even index, and has the ordering required by sector elimination.
Lean Formalisation
theorem MvPolynomial.dunklXuEvenSectorEmbedding_injective (r : ℕ) :
Function.Injective (MvPolynomial.dunklXuEvenSectorEmbedding r)
Lean proof
/-- Distinct even-sector indices remain distinct in the full ordering. -/
theorem dunklXuEvenSectorEmbedding_injective (r : ℕ) :
Function.Injective (dunklXuEvenSectorEmbedding r) := by
intro i j h
have h0 := congrArg (fun t ↦ ((diskDegreeOrder (2 * r)) t).1 0) h
have h1 := congrArg (fun t ↦ ((diskDegreeOrder (2 * r)) t).1 1) h
simp only [diskDegreeOrder_evenSectorEmbedding, Finsupp.add_apply,
Finsupp.single_eq_same, Finsupp.single_eq_of_ne (by decide : (0 : Fin 2) ≠ 1),
Finsupp.single_eq_of_ne (by decide : (1 : Fin 2) ≠ 0), add_zero, zero_add] at h0 h1
apply dunklXuEvenBlockCoordinates_injective r
exact Prod.ext (by omega) (by omega)
source Let \(A\ge 0\), \(A+B{\gt}0\), \(A+C\ge 0\), \(C\ne 0\) and \(r\ge 2\). For all sufficiently small positive \(\delta \), the actual canonical Gram factor for the quadratically modified deformed measure has a nonzero first-to-last top-even-sector entry. No \(A+B=1\) normalization remains. The conclusion holds for any complete ordered source basis with the stated sector enumeration; the intermediate measure satisfies the required admissibility conditions.
Lean Formalisation
theorem MvPolynomial.eventually_integralGramFactor_deformed_quadratic_ne_zero {β : ℝ} (hβ : -1 < β) (A B C : ℝ)
(hAB : A + B = 1) (hC : C ≠ 0) (r : ℕ) (hr : 2 ≤ r) :
∀ᶠ (δ : ℝ) in nhdsWithin 0 {0}ᶜ,
0 < δ →
δ ≤ 1 →
Polynomial.HasPositiveDefiniteIntegral
(Polynomial.diskDeformedMeasure δ
(MeasureTheory.Measure.comap Subtype.val (Polynomial.jacobiMeasure (β + 1 / 2) (β + 1 / 2)))) →
∀
(T :
MvPolynomial.CartesianDiskSystem
(MeasureTheory.Measure.comap Subtype.val
(Polynomial.diskDeformedMeasure δ
(MeasureTheory.Measure.comap Subtype.val (Polynomial.jacobiMeasure (β + 1 / 2) (β + 1 / 2)))))
(Polynomial.jacobiMeasure β β)),
have μ :=
MvPolynomial.cartesianDiskMeasure
(MeasureTheory.Measure.comap Subtype.val
(Polynomial.diskDeformedMeasure δ
(MeasureTheory.Measure.comap Subtype.val (Polynomial.jacobiMeasure (β + 1 / 2) (β + 1 / 2)))))
(MeasureTheory.ProductMeasureInput.ofSFinite
(MeasureTheory.Measure.comap Subtype.val
(Polynomial.diskDeformedMeasure δ
(MeasureTheory.Measure.comap Subtype.val (Polynomial.jacobiMeasure (β + 1 / 2) (β + 1 / 2)))))
(Polynomial.jacobiMeasure β β));
have ω :=
(MvPolynomial.coordinateQuadratic A B C).polynomialDensityMeasure
(MeasureTheory.Measure.comap Subtype.val μ);
(∀ᵐ (x : Fin 2 → ℝ) ∂μ, 0 ≤ (MvPolynomial.eval x) (MvPolynomial.coordinateQuadratic A B C)) →
∀ (hM : MvPolynomial.HasFiniteMoments ω) (hP : MvPolynomial.HasPositiveDefiniteIntegral ω) {N : ℕ}
{V : Submodule ℝ (MvPolynomial (Fin 2) ℝ)} (b : Module.Basis (Fin N) ℝ ↥V) (n k : Fin N → ℕ),
(∀ (i : Fin N), ↑(b i) = T.polynomial (n i) (k i)) →
∀ (e : MvPolynomial.DunklXuEvenInterior r ⊕ Fin (r + 1) → Fin N),
Function.Injective e →
(∀ (i : MvPolynomial.DunklXuEvenInterior r ⊕ Fin (r + 1)),
n (e i) =
2 * (MvPolynomial.dunklXuEvenBlockCoordinates r i).1 +
2 * (MvPolynomial.dunklXuEvenBlockCoordinates r i).2 ∧
k (e i) = 2 * (MvPolynomial.dunklXuEvenBlockCoordinates r i).2) →
(∀ (i : Fin N), (n i - k i) % 2 = 0 → k i % 2 = 0 → i ∈ Set.range e) →
(∀ (i : MvPolynomial.DunklXuEvenInterior r) (j : Fin (r + 1)),
e (Sum.inl i) < e (Sum.inr j)) →
StrictMono (e ∘ Sum.inr) →
MvPolynomial.integralGramFactor ω hM hP b (e (Sum.inr 0)) (e (Sum.inr (Fin.last r))) ≠ 0
Lean proof
/-- Canonical full-factor nonvanishing for actual deformed Cartesian measures.
The nonnegative quadratic is normalized by A+B=1. The source finite basis and
its complete even-sector embedding retain their explicit ordering hypotheses. -/
theorem eventually_integralGramFactor_deformed_quadratic_ne_zero {β : ℝ}
(hβ : -1 < β) (A B C : ℝ) (hAB : A + B = 1) (hC : C ≠ 0) (r : ℕ) (hr : 2 ≤ r) :
∀ᶠ δ in 𝓝[≠] (0 : ℝ), ∀ (_hδ : 0 < δ) (_hδ1 : δ ≤ 1)
(_hδpos : Polynomial.HasPositiveDefiniteIntegral
(diskDeformedMeasure δ ((jacobiMeasure (β + 1 / 2) (β + 1 / 2)).comap Subtype.val)))
(T : CartesianDiskSystem (Measure.comap (Subtype.val : Set.Icc (-1 : ℝ) 1 → ℝ) (diskDeformedMeasure δ ((jacobiMeasure (β + 1 / 2) (β + 1 / 2)).comap Subtype.val))) (jacobiMeasure β β)),
let μ := cartesianDiskMeasure
(Measure.comap (Subtype.val : Set.Icc (-1 : ℝ) 1 → ℝ) (diskDeformedMeasure δ ((jacobiMeasure (β + 1 / 2) (β + 1 / 2)).comap Subtype.val))) (ProductMeasureInput.ofSFinite (hν := by infer_instance) (Measure.comap (Subtype.val : Set.Icc (-1 : ℝ) 1 → ℝ) (diskDeformedMeasure δ ((jacobiMeasure (β + 1 / 2) (β + 1 / 2)).comap Subtype.val))) (jacobiMeasure β β))
let ω := MvPolynomial.polynomialDensityMeasure ((coordinateQuadratic A B C)) ((μ).comap Subtype.val)
∀ (_hu : ∀ᵐ x ∂μ, 0 ≤ eval x (coordinateQuadratic A B C))
(hM : MvPolynomial.HasFiniteMoments ω) (hP : MvPolynomial.HasPositiveDefiniteIntegral ω)
{N : ℕ} {V : Submodule ℝ (MvPolynomial (Fin 2) ℝ)} (b : Basis (Fin N) ℝ V)
(n k : Fin N → ℕ)
(_hb : ∀ i, (b i : MvPolynomial (Fin 2) ℝ) = T.polynomial (n i) (k i))
(e : DunklXuEvenInterior r ⊕ Fin (r + 1) → Fin N),
Function.Injective e →
(∀ i, n (e i) = 2 * (dunklXuEvenBlockCoordinates r i).1 +
2 * (dunklXuEvenBlockCoordinates r i).2 ∧
k (e i) = 2 * (dunklXuEvenBlockCoordinates r i).2) →
(∀ i, (n i - k i) % 2 = 0 → k i % 2 = 0 → i ∈ Set.range e) →
(∀ i j, e (Sum.inl i) < e (Sum.inr j)) → StrictMono (e ∘ Sum.inr) →
integralGramFactor ω hM hP b (e (Sum.inr 0)) (e (Sum.inr (Fin.last r))) ≠ 0 := by
filter_upwards [eventually_dunklXu_full_factor_entry_ne_zero hβ B C hC r hr] with δ ht
intro hδ hδ1 hδpos T
dsimp only
intro hu hM hP N V b n k hb e he hlabels hcover hbefore hmono
have hβ' : -1 < β + 1 / 2 := by linarith
let := isFiniteMeasure_jacobiMeasure hβ' hβ'
let := isFiniteMeasure_jacobiMeasure hβ hβ
let := isNegInvariant_jacobiMeasure β
have hx := ae_mem_Icc_diskDeformedMeasure hδ.le hδ1 (ae_mem_Icc_jacobiMeasure (β + 1 / 2) (β + 1 / 2))
have hm := hasFiniteMoments_diskDeformedMeasure hδ.le hδ1 (ae_mem_Icc_jacobiMeasure (β + 1 / 2) (β + 1 / 2))
obtain ⟨hR, hd, hg⟩ := integralGramFactor_spec _ hM hP b
refine ht (integralGramFactor _ hM hP b) (fun i ↦ ((n i - k i) % 2, k i % 2)) e (0, 0)
hR (fun i ↦ (hd i).ne') ?_ he ?_ ?_ hbefore hmono ?_
· intro i j hij
rw [← hg]
change integralInner _ (IntegrablePair.of _ (b i : MvPolynomial (Fin 2) ℝ) (b j : MvPolynomial (Fin 2) ℝ) (h := hM.integrable_mul _ _)) = 0
simp only [hb]
rw [MvPolynomial.integralInner_withDensity_polynomial _ _ _ hu
(hpq := (T.hasFiniteMoments hx).integrable_mul _ _)]
exact T.integralInner_coordinateQuadratic_eq_zero_of_parity hx hm hδpos A B C _ _ _ _ hij
· intro i
rw [(hlabels i).1, (hlabels i).2]
apply Prod.ext <;> dsimp <;> omega
· intro i hi
exact hcover i (congrArg Prod.fst hi) (congrArg Prod.snd hi)
· ext i j
rw [Matrix.submatrix_apply, ← hg]
change integralInner _ (IntegrablePair.of _ (b (e i) : MvPolynomial (Fin 2) ℝ) (b (e j) : MvPolynomial (Fin 2) ℝ) (h := hM.integrable_mul _ _)) = _
simp only [hb, (hlabels i).1, (hlabels i).2, (hlabels j).1, (hlabels j).2]
exact integralInner_deformed_quadratic_eq_evenGramPencil hβ hδ hδ1 hδpos T A B C hAB hu r i j
source For a real polynomial \(p\) in finitely many variables, put \(D_p=\{ x:p(x)\ge 0\} \). For a measure \(\eta \) on \(D_p\), define its polynomial density measure as the coordinate pushforward of \(p\, d\eta \).
Lean Formalisation
def MvPolynomial.polynomialDensityMeasure.{u_1} {σ : Type u_1} (p : MvPolynomial σ ℝ)
(μ : MeasureTheory.Measure { x // 0 ≤ (MvPolynomial.eval x) p }) : MeasureTheory.Measure (σ → ℝ)
Lean definition
/-- Weight a measure on the nonnegative locus of a polynomial and return its coordinate measure. -/
noncomputable def polynomialDensityMeasure (p : MvPolynomial σ ℝ)
(μ : Measure {x : σ → ℝ // 0 ≤ eval x p}) : Measure (σ → ℝ) :=
Measure.map Subtype.val
(μ.withDensity (fun x => ENNReal.ofNNReal (NNReal.mk (eval (x : σ → ℝ) p) x.property)))
source For every measurable set \(E\), the density measure assigns \(\int _{\iota ^{-1}(E)}p(x)\, d\eta (x)\) as a nonnegative integral.
Lean Formalisation
theorem MvPolynomial.polynomialDensityMeasure_apply.{u_1} {σ : Type u_1} (p : MvPolynomial σ ℝ)
(μ : MeasureTheory.Measure { x // 0 ≤ (MvPolynomial.eval x) p }) {s : Set (σ → ℝ)} (hs : MeasurableSet s) :
(p.polynomialDensityMeasure μ) s =
∫⁻ (x : { x // 0 ≤ (MvPolynomial.eval x) p }) in Subtype.val ⁻¹' s, ↑(NNReal.mk ((MvPolynomial.eval ↑x) p) ⋯) ∂μ
Lean proof
/-- Evaluation on measurable sets is the nonnegative weighted source measure. -/
theorem polynomialDensityMeasure_apply (p : MvPolynomial σ ℝ)
(μ : Measure {x : σ → ℝ // 0 ≤ eval x p}) {s : Set (σ → ℝ)} (hs : MeasurableSet s) :
polynomialDensityMeasure p μ s =
∫⁻ x in Subtype.val ⁻¹' s, ENNReal.ofNNReal (NNReal.mk (eval (x : σ → ℝ) p) x.property) ∂μ := by
rw [polynomialDensityMeasure, Measure.map_apply measurable_subtype_coe hs,
withDensity_apply _ (measurable_subtype_coe hs)]
source Let \(\beta \in \mathbb R\) and \(0\le \delta \le 1\). Form the Cartesian disk measure \(\sigma _{\beta ,\delta }\) from the symmetrically deformed outer Jacobi measure with parameters \((\beta +1/2,\beta +1/2)\) and inner Jacobi measure with parameters \((\beta ,\beta )\). For \(r(x,y)=A+Bx^2+Cy^2\), require \(r\ge 0\) almost everywhere for \(\sigma _{\beta ,\delta }\). Transport the source to \(\{ r\ge 0\} \) and take its polynomial density measure; this is the deformed quadratic disk measure.
Lean Formalisation
inductive MvPolynomial.DunklXuDeformedQuadraticInput (β δ A B C : ℝ) : Prop
Lean definition
/-- Classical parameter and density data for the deformed quadratic disk measure. -/
structure DunklXuDeformedQuadraticInput (β δ A B C : ℝ) : Prop where
parameter_nonneg : 0 ≤ δ
parameter_le_one : δ ≤ 1
density_nonnegative : ∀ᵐ x ∂(cartesianDiskMeasure
(Measure.comap (Subtype.val : Set.Icc (-1 : ℝ) 1 → ℝ) (diskDeformedMeasure δ ((jacobiMeasure (β + 1 / 2) (β + 1 / 2)).comap Subtype.val))) (ProductMeasureInput.ofSFinite (hν := by infer_instance) (Measure.comap (Subtype.val : Set.Icc (-1 : ℝ) 1 → ℝ) (diskDeformedMeasure δ ((jacobiMeasure (β + 1 / 2) (β + 1 / 2)).comap Subtype.val))) (jacobiMeasure β β))), 0 ≤ eval x (coordinateQuadratic A B C)
source The inequalities \(A\ge 0\), \(A+B\ge 0\), \(A+C\ge 0\) imply that \(A+Bx^2+Cy^2\) is nonnegative almost everywhere for \(\sigma _{\beta ,\delta }\). For every measurable set \(E\), the modified measure assigns the nonnegative integral of \(A+Bx^2+Cy^2\) over \(E\) against the transported source on \(\{ A+Bx^2+Cy^2\ge 0\} \).
Lean Formalisation
theorem MvPolynomial.DunklXuDeformedQuadraticInput.of_nonneg (β δ A B C : ℝ) (hδ : 0 ≤ δ) (hδ1 : δ ≤ 1) (hA : 0 ≤ A)
(hAB : 0 ≤ A + B) (hAC : 0 ≤ A + C) : MvPolynomial.DunklXuDeformedQuadraticInput β δ A B C
Lean proof
/-- The usual disk inequalities supply the full classical input. -/
theorem DunklXuDeformedQuadraticInput.of_nonneg (β δ A B C : ℝ)
(hδ : 0 ≤ δ) (hδ1 : δ ≤ 1) (hA : 0 ≤ A) (hAB : 0 ≤ A+B) (hAC : 0 ≤ A+C) :
DunklXuDeformedQuadraticInput β δ A B C := by
let : SFinite (jacobiMeasure β β) := by infer_instance
refine ⟨hδ,hδ1,?_⟩
exact ae_coordinateQuadratic_nonneg_cartesianDiskMeasure
(ae_mem_Icc_diskDeformedMeasure hδ hδ1 (ae_mem_Icc_jacobiMeasure _ _))
(ae_mem_Icc_jacobiMeasure _ _) A B C hA hAB hAC
source Fix \(\beta {\gt}-1\) and a diagonal quadratic \(A+Bx^2+Cy^2\) with \(A\ge 0\), \(A+B{\gt}0\), \(A+C\ge 0\), and \(C\ne 0\). For every \(r\ge 2\), there exists \(0{\lt}\delta \le 1\) such that the canonical factor on the complete polynomial space through degree \(2r\), in degree/inner order, has a nonzero entry from \((n,k)=(2r,0)\) to \((2r,2r)\). The measures, bases, positivity and ordering are all constructed. Thus no finite inner bandwidth can hold uniformly over these admissible factor measures. The measure may depend on \(r\).
Lean Formalisation
theorem MvPolynomial.dunklXuDeformedQuadraticMeasure_admissible {β δ : ℝ} (hβ : -1 < β) (hδ : 0 < δ) (hδ1 : δ ≤ 1) (A B C : ℝ)
(hA : 0 ≤ A) (hAB : 0 < A + B) (hAC : 0 ≤ A + C) :
MvPolynomial.HasFiniteMoments (MvPolynomial.dunklXuDeformedQuadraticMeasure β δ A B C ⋯) ∧
MvPolynomial.HasPositiveDefiniteIntegral (MvPolynomial.dunklXuDeformedQuadraticMeasure β δ A B C ⋯)
Lean proof
/-- The concrete modified measure has moments and is strictly positive on nonzero polynomials. -/
theorem dunklXuDeformedQuadraticMeasure_admissible {β δ : ℝ} (hβ : -1 < β)
(hδ : 0 < δ) (hδ1 : δ ≤ 1) (A B C : ℝ)
(hA : 0 ≤ A) (hAB : 0 < A + B) (hAC : 0 ≤ A + C) :
MvPolynomial.HasFiniteMoments (dunklXuDeformedQuadraticMeasure β δ A B C) ∧
MvPolynomial.HasPositiveDefiniteIntegral (dunklXuDeformedQuadraticMeasure β δ A B C) := by
simp only [dunklXuDeformedQuadraticMeasure]
have hβ' : -1 < β + 1 / 2 := by linarith
let := isFiniteMeasure_jacobiMeasure hβ' hβ'
let := isFiniteMeasure_jacobiMeasure hβ hβ
have hx := ae_mem_Icc_diskDeformedMeasure hδ.le hδ1
(ae_mem_Icc_jacobiMeasure (β + 1 / 2) (β + 1 / 2))
have hz := ae_mem_Icc_jacobiMeasure β β
exact ⟨(hasFiniteMoments_cartesianDiskMeasure hx hz).withDensity_polynomial _
(ae_coordinateQuadratic_nonneg_cartesianDiskMeasure hx hz A B C hA hAB.le hAC),
(dunklXuDeformedCartesianSystem hβ hδ hδ1).hasPositiveDefiniteIntegral_coordinateQuadratic
hx hz A B C hA hAB hAC⟩
source The chosen measure may depend on \(r\); this does not assert unbounded fill for the original uniform disk or for one fixed deformation.
For factor measures \(\mu ,\nu \) supported in \([-1,1]\), in total-degree/inner-index order, a separated polynomial modification has a positive upper triangular connection matrix. It equals the canonical Gram factor whenever the target polynomial pairings agree. For the actual polynomial-density measure, the factor vanishes whenever the absolute inner-index gap exceeds the degree of the inner modifying polynomial.
Lean Formalisation
theorem MvPolynomial.CartesianDiskSystem.integralGram_eq_orderedConnectionMatrix_transpose_mul
{μ ν μ' ν' : MeasureTheory.Measure ℝ} [MeasureTheory.IsFiniteMeasure μ] [MeasureTheory.IsFiniteMeasure ν]
[MeasureTheory.IsFiniteMeasure μ'] [MeasureTheory.IsFiniteMeasure ν']
(S : MvPolynomial.CartesianDiskSystem (MeasureTheory.Measure.comap Subtype.val μ) ν)
(T : MvPolynomial.CartesianDiskSystem (MeasureTheory.Measure.comap Subtype.val μ') ν')
(hx : ∀ᵐ (x : ℝ) ∂μ, x ∈ Set.Icc (-1) 1) (hz : ∀ᵐ (z : ℝ) ∂ν, z ∈ Set.Icc (-1) 1)
(hx' : ∀ᵐ (x : ℝ) ∂μ', x ∈ Set.Icc (-1) 1) (hz' : ∀ᵐ (z : ℝ) ∂ν', z ∈ Set.Icc (-1) 1) (N : ℕ) :
MvPolynomial.integralGram
(MvPolynomial.cartesianDiskMeasure (MeasureTheory.Measure.comap Subtype.val μ')
(MeasureTheory.ProductMeasureInput.ofSFinite (MeasureTheory.Measure.comap Subtype.val μ') ν'))
(fun i => ↑((S.orderedDegreeBasis hx hz N) i)) ⋯ =
(S.orderedConnectionMatrix T hx hz hx' hz' N).transpose * S.orderedConnectionMatrix T hx hz hx' hz' N
Lean proof
/-- The ordered connection still factors the target Gram matrix. -/
theorem integralGram_eq_orderedConnectionMatrix_transpose_mul (N : ℕ) :
integralGram (cartesianDiskMeasure (Measure.comap (Subtype.val : Set.Icc (-1 : ℝ) 1 → ℝ) μ') (ProductMeasureInput.ofSFinite (Measure.comap (Subtype.val : Set.Icc (-1 : ℝ) 1 → ℝ) μ') ν'))
(fun i ↦ (S.orderedDegreeBasis hx hz N i : MvPolynomial (Fin 2) ℝ)) =
(S.orderedConnectionMatrix T hx hz hx' hz' N).transpose *
S.orderedConnectionMatrix T hx hz hx' hz' N := by
apply integralGram_eq_transpose_toMatrix_mul _
(hasFiniteMoments_cartesianDiskMeasure hx' hz') (T.hasPositiveDefiniteIntegral hx' hz')
classical
ext i j
simp only [integralGram, orderedDegreeBasis_apply, Matrix.one_apply]
by_cases hij : i = j
· subst j
rw [T.integralInner_polynomial_self hx', ite_eq_left rfl]
· rw [ite_eq_right hij]
apply T.integralInner_polynomial_eq_zero hx' (by omega) (by omega)
intro h
apply hij
apply (diskDegreeOrder N).injective
apply DiskDegreeIndex.ext
have hn := congrArg Prod.fst h
have hk := congrArg Prod.snd h
ext t
fin_cases t <;> dsimp at hn hk ⊢ <;> omega
source A polynomial density has uniform Cartesian inner bandwidth if there exists one finite bound \(w\) such that, for every admissible pair of factor measures, every Cartesian source system and every complete degree section, the canonical modified Gram factor has zero entries whenever the absolute inner-index gap exceeds \(w\). The factor measures have finite moments, strictly positive polynomial pairings and support in \([-1,1]\); the inner measure is even. Only densities nonnegative almost everywhere for the Cartesian source are tested, using their polynomial density measures on the nonnegative locus. The modified pairing must also have the moments and positivity required to define its canonical factor. The bound is chosen before both the measures and the section.
Lean Formalisation
def MvPolynomial.HasUniformCartesianInnerBandwidth (u : MvPolynomial (Fin 2) ℝ) : Prop
Lean definition
/-- One inner bandwidth for canonical factors over all admissible Cartesian
factor measures and all complete degree sections. The inner measure is even;
no outer reflection hypothesis is required. -/
def HasUniformCartesianInnerBandwidth (u : MvPolynomial (Fin 2) ℝ) : Prop :=
∃ w : ℕ, ∀ (μ ν : Measure ℝ) [IsFiniteMeasure μ] [IsFiniteMeasure ν] [ν.IsNegInvariant],
Polynomial.HasFiniteMoments μ → Polynomial.HasPositiveDefiniteIntegral μ →
Polynomial.HasFiniteMoments ν → Polynomial.HasPositiveDefiniteIntegral ν →
∀ (hx : ∀ᵐ x ∂μ, x ∈ Icc (-1 : ℝ) 1) (hz : ∀ᵐ x ∂ν, x ∈ Icc (-1 : ℝ) 1)
(S : CartesianDiskSystem (Measure.comap (Subtype.val : Set.Icc (-1 : ℝ) 1 → ℝ) μ) ν) (N : ℕ),
∀ (_hu : ∀ᵐ x ∂cartesianDiskMeasure (Measure.comap (Subtype.val : Set.Icc (-1 : ℝ) 1 → ℝ) μ) (ProductMeasureInput.ofSFinite (Measure.comap (Subtype.val : Set.Icc (-1 : ℝ) 1 → ℝ) μ) ν), 0 ≤ eval x u),
let ω := polynomialDensityMeasure u ((cartesianDiskMeasure (Measure.comap (Subtype.val : Set.Icc (-1 : ℝ) 1 → ℝ) μ) (ProductMeasureInput.ofSFinite (Measure.comap (Subtype.val : Set.Icc (-1 : ℝ) 1 → ℝ) μ) ν)).comap Subtype.val)
∀ (hM : MvPolynomial.HasFiniteMoments ω) (hP : MvPolynomial.HasPositiveDefiniteIntegral ω)
(i j : Fin (Fintype.card (DiskDegreeIndex N))),
(diskDegreeOrder N i).1 1 + w < (diskDegreeOrder N j).1 1 ∨
(diskDegreeOrder N j).1 1 + w < (diskDegreeOrder N i).1 1 →
integralGramFactor ω hM hP (S.orderedDegreeBasis hx hz N) i j = 0
source For a nonzero diagonal quadratic \(u=A+Bx^2+Cy^2\) nonnegative on the disk, uniform finite Cartesian inner bandwidth holds if and only if \(C(A+B)=0\). Nonnegativity is stated equivalently as \(A\ge 0\), \(A+B\ge 0\), \(A+C\ge 0\). This is a classification over all admissible factor measures, with fixed Cartesian orientation and degree/inner ordering.
Lean Formalisation
theorem MvPolynomial.hasUniformCartesianInnerBandwidth_separated (h g : Polynomial ℝ) (l : ℕ) (hh0 : h ≠ 0) (hg0 : g ≠ 0)
(hh : ∀ x ∈ Set.Icc (-1) 1, 0 ≤ Polynomial.eval x h) (hg : ∀ x ∈ Set.Icc (-1) 1, 0 ≤ Polynomial.eval x g)
(hgpar : ∀ (x : ℝ), Polynomial.eval (-x) g = Polynomial.eval x g) (hgcoeff : ∀ (i : ℕ), i % 2 ≠ 0 → g.coeff i = 0)
(hgdeg : g.natDegree ≤ 2 * l) : (MvPolynomial.cartesianDiskModification h g l).HasUniformCartesianInnerBandwidth
Lean proof
/-- Separated nonnegative polynomial factors give a uniform canonical inner bandwidth. -/
theorem hasUniformCartesianInnerBandwidth_separated (h g : ℝ[X]) (l : ℕ)
(hh0 : h ≠ 0) (hg0 : g ≠ 0)
(hh : ∀ x ∈ Icc (-1 : ℝ) 1, 0 ≤ h.eval x)
(hg : ∀ x ∈ Icc (-1 : ℝ) 1, 0 ≤ g.eval x)
(hgpar : ∀ x, g.eval (-x) = g.eval x)
(hgcoeff : ∀ i, i % 2 ≠ 0 → g.coeff i = 0) (hgdeg : g.natDegree ≤ 2 * l) :
HasUniformCartesianInnerBandwidth (cartesianDiskModification h g l) := by
refine ⟨g.natDegree, ?_⟩
intro μ ν _ _ _ hμ hpμ hν hpν hx hz S N hu
dsimp only
intro hM hP i j hgap
have hh' : ∀ᵐ x ∂μ, 0 ≤ h.eval x := hx.mono (fun x hx ↦ hh x hx)
have hg' : ∀ᵐ x ∂ν, 0 ≤ g.eval x := hz.mono (fun x hz ↦ hg x hz)
exact S.integralGramFactor_eq_zero_of_separated_inner_gap hμ hpμ hν hpν hx hz h g l
hh0 hg0 hh' hg' hgpar hgcoeff hgdeg _
(ae_nonneg_cartesianDiskModification hx h g l hh' hg' hgdeg hgcoeff) rfl hM hP N i j hgap
source Reference details: Polynomial matrix pencil and adjugate numerator and related results
For a finite real square matrix \(K\), let \(P_K(X)=I+XK\) be its polynomial matrix pencil. For compatible real matrices \(F,E\), define the polynomial \(q_{ij}(X)=(F\operatorname {adj}(P_K(X))E)_{ij}\).
Lean Formalisation
def Matrix.polynomialPencil.{u_1} {ι : Type u_1} [DecidableEq ι] (K : Matrix ι ι ℝ) : Matrix ι ι (Polynomial ℝ)
Lean definition
/-- The polynomial matrix underlying an affine scalar pencil. -/
noncomputable def polynomialPencil (K : Matrix ι ι ℝ) : Matrix ι ι ℝ[X] :=
1 + (Polynomial.X : ℝ[X]) • K.map (Polynomial.C : ℝ → ℝ[X])
source For every real \(t\), \(P_K(t)=I+tK\) and \(q_{ij}(t)=(F\operatorname {adj}(I+tK)E)_{ij}\).
Lean Formalisation
theorem Matrix.eval_polynomialPencil.{u_1} {ι : Type u_1} [Fintype ι] [DecidableEq ι] (K : Matrix ι ι ℝ) (t : ℝ) :
(Polynomial.evalRingHom t).mapMatrix K.polynomialPencil = 1 + t • K
Lean proof
/-- Evaluating the polynomial pencil recovers the real matrix. -/
theorem eval_polynomialPencil (K : Matrix ι ι ℝ) (t : ℝ) :
(Polynomial.evalRingHom t).mapMatrix (polynomialPencil K) = 1 + t • K := by
ext i j
change (Polynomial.evalRingHom t)
((if i = j then 1 else 0) + (Polynomial.X : ℝ[X]) * Polynomial.C (K i j)) =
(if i = j then 1 else 0) + t * K i j
by_cases hij : i = j <;> simp [hij] <;> ring
source For a finite real square matrix \(K\), let \(D_K=\{ t\in \mathbb R: I+tK\text{ is invertible}\} \). An invertible pencil parameter is an element of \(D_K\).
Lean Formalisation
def Matrix.InvertiblePencilParameter.{u_1} {ι : Type u_1} [Fintype ι] [DecidableEq ι] (K : Matrix ι ι ℝ) : Type
Lean definition
/-- Parameters at which the affine pencil is invertible. -/
abbrev InvertiblePencilParameter (K : Matrix ι ι ℝ) :=
{t : ℝ // IsUnit (1 + t • K)}
source A real parameter belongs to \(D_K\) if and only if \(\det P_K(t)\ne 0\). The complement of \(D_K\) is finite.
Lean Formalisation
theorem Matrix.isUnit_pencil_iff_det_ne_zero.{u_1} {ι : Type u_1} [Fintype ι] [DecidableEq ι] (K : Matrix ι ι ℝ) (t : ℝ) :
IsUnit (1 + t • K) ↔ Polynomial.eval t K.polynomialPencil.det ≠ 0
Lean proof
/-- The determinant detects exactly the classical parameter domain. -/
theorem isUnit_pencil_iff_det_ne_zero (K : Matrix ι ι ℝ) (t : ℝ) :
IsUnit (1 + t • K) ↔ (polynomialPencil K).det.eval t ≠ 0 := by
have hd := ((Polynomial.evalRingHom t).map_det (polynomialPencil K)).trans
(congrArg Matrix.det (eval_polynomialPencil K t))
change (polynomialPencil K).det.eval t = (1 + t • K).det at hd
rw [hd, Matrix.isUnit_iff_isUnit_det, isUnit_iff_ne_zero]
source For \(t\in D_K\), define \(R_K(t)\) as the inverse of \(I+tK\).
Lean Formalisation
def Matrix.inversePencil.{u_1} {ι : Type u_1} [Fintype ι] [DecidableEq ι] (K : Matrix ι ι ℝ)
(t : K.InvertiblePencilParameter) : Matrix ι ι ℝ
Lean definition
/-- The classical inverse of an affine matrix pencil. -/
noncomputable def inversePencil (K : Matrix ι ι ℝ)
(t : InvertiblePencilParameter K) : Matrix ι ι ℝ :=
↑(t.property.unit⁻¹)
source For every \(t\in D_K\), \(R_K(t)(I+tK)=(I+tK)R_K(t)=I\).
Lean Formalisation
theorem Matrix.inversePencil_mul.{u_1} {ι : Type u_1} [Fintype ι] [DecidableEq ι] (K : Matrix ι ι ℝ)
(t : K.InvertiblePencilParameter) : K.inversePencil t * (1 + ↑t • K) = 1 ∧ (1 + ↑t • K) * K.inversePencil t = 1
Lean proof
/-- The inverse solves the two matrix inverse equations. -/
theorem inversePencil_mul (K : Matrix ι ι ℝ) (t : InvertiblePencilParameter K) :
inversePencil K t * (1 + (t : ℝ) • K) = 1 ∧
(1 + (t : ℝ) • K) * inversePencil K t = 1 := by
change (↑(t.property.unit⁻¹) : Matrix ι ι ℝ) * (1 + (t : ℝ) • K) = 1 ∧
(1 + (t : ℝ) • K) * (↑(t.property.unit⁻¹) : Matrix ι ι ℝ) = 1
exact ⟨by simpa only [IsUnit.unit_spec] using Units.inv_mul t.property.unit,
by simpa only [IsUnit.unit_spec] using Units.mul_inv t.property.unit⟩
source For fixed finite real matrices \(F,K,E\) and \(t\in D_K\), \((FR_K(t)E)_{ij}=q_{ij}(t)/\det P_K(t)\), with nonzero denominator. If this entry is nonzero at one parameter in \(D_K\), then outside a finite exceptional set every real parameter belongs to \(D_K\) and its entry is nonzero. All singular parameters belong to the exceptional set.
Lean Formalisation
theorem Matrix.inversePencil_sandwich_eq.{u_1, u_2} {ι : Type u_1} {κ : Type u_2} [Fintype ι] [DecidableEq ι] (K : Matrix ι ι ℝ)
(F : Matrix κ ι ℝ) (E : Matrix ι κ ℝ) (i j : κ) (t : K.InvertiblePencilParameter) :
(F * K.inversePencil t * E) i j =
(Polynomial.eval (↑t) K.polynomialPencil.det)⁻¹ * Polynomial.eval (↑t) (K.inversePencilNumerator F E i j)
Lean proof
/-- An inverse entry equals its polynomial numerator divided by the nonzero determinant. -/
theorem inversePencil_sandwich_eq (K : Matrix ι ι ℝ)
(F : Matrix κ ι ℝ) (E : Matrix ι κ ℝ) (i j : κ)
(t : InvertiblePencilParameter K) :
(F * inversePencil K t * E) i j =
((polynomialPencil K).det.eval (t : ℝ))⁻¹ *
(inversePencilNumerator K F E i j).eval (t : ℝ) := by
have hd : (polynomialPencil K).det.eval (t : ℝ) = (1 + (t : ℝ) • K).det := by
exact ((Polynomial.evalRingHom (t : ℝ)).map_det _).trans
(congrArg Matrix.det (eval_polynomialPencil K t))
rw [inversePencil_eq_inv, hd, eval_inversePencilNumerator, Matrix.inv_def,
Ring.inverse_eq_inv, Matrix.mul_smul, Matrix.smul_mul]
rfl
source At an invertible interior-pencil parameter, a nonzero inverse sandwich forces the corresponding distant factor entry to be nonzero. For each fixed \(r\ge 2\) and admissible nonseparated quadratic, only finitely many deformation parameters can fail the distant-entry implication. In particular, every admissible \(0{\lt}\delta \le 1\) outside that finite set has a nonzero \((2r,0)\) to \((2r,2r)\) entry in its actual canonical factor. The finite exceptional set can depend on \(r\).
Lean Formalisation
theorem MvPolynomial.dunklXu_full_factor_entry_ne_zero_of_inverse {β : ℝ} (hβ : -1 < β) (u v : ℝ) (r : ℕ) (hr : 2 ≤ r)
(t : (MvPolynomial.dunklXuInteriorMatrix hβ u v r).InvertiblePencilParameter) (ht : ↑t ≠ 0)
(hinv :
(MvPolynomial.dunklXuInteriorFunctional hβ u v r) ((MvPolynomial.dunklXuInteriorMatrix hβ u v r).inversePencil t) ≠
0)
{N : ℕ} {γ : Type} (R : Matrix (Fin N) (Fin N) ℝ) (sector : Fin N → γ)
(e : MvPolynomial.DunklXuEvenInterior r ⊕ Fin (r + 1) → Fin N) (c : γ) :
R.IsUpperTriangular →
(∀ (i : Fin N), R i i ≠ 0) →
(∀ (i j : Fin N), sector i ≠ sector j → (R.transpose * R) i j = 0) →
Function.Injective e →
(∀ (i : MvPolynomial.DunklXuEvenInterior r ⊕ Fin (r + 1)), sector (e i) = c) →
(∀ (k : Fin N), sector k = c → k ∈ Set.range e) →
(∀ (i : MvPolynomial.DunklXuEvenInterior r) (j : Fin (r + 1)), e (Sum.inl i) < e (Sum.inr j)) →
StrictMono (e ∘ Sum.inr) →
(R.transpose * R).submatrix e e = MvPolynomial.dunklXuEvenGramPencil hβ u v (↑t) r →
R (e (Sum.inr 0)) (e (Sum.inr (Fin.last r))) ≠ 0
Lean proof
/-- A nonzero inverse sandwich forces the distant entry at the same parameter. -/
theorem dunklXu_full_factor_entry_ne_zero_of_inverse {β : ℝ} (hβ : -1 < β)
(u v : ℝ) (r : ℕ) (hr : 2 ≤ r)
(t : Matrix.InvertiblePencilParameter (dunklXuInteriorMatrix hβ u v r))
(ht : (t : ℝ) ≠ 0)
(hinv : dunklXuInteriorFunctional hβ u v r
(Matrix.inversePencil (dunklXuInteriorMatrix hβ u v r) t) ≠ 0) :
∀ {N : ℕ} {γ : Type}
(R : Matrix (Fin N) (Fin N) ℝ) (sector : Fin N → γ)
(e : DunklXuEvenInterior r ⊕ Fin (r + 1) → Fin N) (c : γ),
R.IsUpperTriangular → (∀ i, R i i ≠ 0) →
(∀ i j, sector i ≠ sector j → (R.transpose * R) i j = 0) →
Function.Injective e → (∀ i, sector (e i) = c) →
(∀ k, sector k = c → k ∈ Set.range e) →
(∀ i j, e (Sum.inl i) < e (Sum.inr j)) → StrictMono (e ∘ Sum.inr) →
(R.transpose * R).submatrix e e = dunklXuEvenGramPencil hβ u v t r →
R (e (Sum.inr 0)) (e (Sum.inr (Fin.last r))) ≠ 0 := by
intro N γ R sector e c hR hd hG he hc hcover hbefore hmono hP
let A := R.submatrix (e ∘ Sum.inl) (e ∘ Sum.inl)
let B := R.submatrix (e ∘ Sum.inl) (e ∘ Sum.inr)
let D := R.submatrix (e ∘ Sum.inr) (e ∘ Sum.inr)
have hblocks := hR.gram_sector_blocks hd sector hG e he c hc hcover hbefore
change (R.transpose * R).submatrix e e =
fromBlocks (A.transpose * A) (A.transpose * B) (B.transpose * A)
(B.transpose * B + D.transpose * D) at hblocks
have h := hblocks.symm.trans hP
have hAA : A.transpose * A = 1 + (t : ℝ) • dunklXuInteriorMatrix hβ u v r := by
ext i j
exact congrArg (fun M ↦ M (Sum.inl i) (Sum.inl j)) h
have hAB : A.transpose * B = (t : ℝ) • dunklXuQuadraticRightBlock hβ u v r := by
ext i j
exact congrArg (fun M ↦ M (Sum.inl i) (Sum.inr j)) h
have hBA : B.transpose * A = (t : ℝ) • dunklXuQuadraticLeftBlock hβ u v r := by
ext i j
exact congrArg (fun M ↦ M (Sum.inr i) (Sum.inl j)) h
have hDD : B.transpose * B + D.transpose * D =
1 + (t : ℝ) • dunklXuQuadraticBoundaryBlock hβ u v r := by
ext i j
exact congrArg (fun M ↦ M (Sum.inr i) (Sum.inr j)) h
apply Matrix.schur_gram_first_row_ne_zero_of_pencil A B D
(dunklXuInteriorMatrix hβ u v r) (dunklXuQuadraticRightBlock hβ u v r)
(dunklXuQuadraticLeftBlock hβ u v r) t ht
(hR.isUnit_det_submatrix hd _ (he.comp Sum.inl_injective))
(hR.submatrix_strictMono _ hmono) hAA hAB hBA (Fin.last r)
· rw [hDD, Matrix.add_apply, Matrix.smul_apply,
dunklXuQuadraticBoundaryBlock_first_last hβ u v r hr]
have he : (0 : Fin (r + 1)) ≠ Fin.last r := by
intro h
have := congrArg Fin.val h
simp only [Fin.val_zero, Fin.val_last] at this
omega
simp [he]
· rw [← dunklXuInteriorFunctional_eq_sandwich]
simpa only [Matrix.inversePencil_eq_inv] using hinv
source Fix \(\beta {\gt}-1\) and \(A\ge 0\), \(A+B{\gt}0\), \(A+C\ge 0\), \(C\ne 0\). There exists one admissible \(0{\lt}\delta \le 1\) such that, for every \(r\ge 2\), the canonical factor of the complete degree-\(2r\) section has a nonzero entry from \((2r,0)\) to \((2r,2r)\). The same deformed measure is used for every degree.
Lean Formalisation
theorem Real.exists_Ioo_forall_of_eventually_cofinite.{u_1} {ι : Type u_1} [Countable ι] (P : ι → ℝ → Prop)
(hP : ∀ (i : ι), ∀ᶠ (t : ℝ) in Filter.cofinite, P i t) {a b : ℝ} (hab : a < b) : ∃ t ∈ Set.Ioo a b, ∀ (i : ι), P i t
Lean proof
/-- Countably many cofinite conditions admit a common point in any open interval. -/
theorem exists_Ioo_forall_of_eventually_cofinite {ι : Type*} [Countable ι]
(P : ι → ℝ → Prop) (hP : ∀ i, ∀ᶠ t in Filter.cofinite, P i t)
{a b : ℝ} (hab : a < b) : ∃ t ∈ Ioo a b, ∀ i, P i t := by
classical
let E : Set ℝ := ⋃ i, {t | ¬ P i t}
have hc : E.Countable := Set.countable_iUnion fun i ↦
(Filter.mem_cofinite.mp (hP i)).countable
have hn : ¬ Ioo a b ⊆ E := fun h ↦
(not_le_of_gt hab) (Cardinal.Real.Ioo_countable_iff.mp (hc.mono h))
obtain ⟨t, ht, hte⟩ := Set.not_subset.mp hn
refine ⟨t, ht, fun i ↦ ?_⟩
by_contra hi
exact hte (Set.mem_iUnion.mpr ⟨i, hi⟩)
source The parameter is not specified numerically, and this does not assert the result for the original uniform disk at \(\delta =1\).