LeanFun RevOLVER

6.5 Series kernels and finite-data certificates

Coefficient majorants bound both the kernel approximation error and the operator error. For the exponential kernel, these bounds give a residual certificate from finite data.

Reference details: Joint weights for kernel monomials and related results

For a monomial \(p(x,y)=cx^iy^j\), define

\[ w_{R,S}(i,j,c)=|c|R^iS^j(j+1). \]

This weight is nonnegative for \(R,S\ge 0\) and bounds \(|p(x,y)|\) when \(|x|\le R\), \(|y|\le S\). If \(S\ge 1\), it also bounds \(|cx^i j y^{j-1}|\), with the derivative zero when \(j=0\). Its ordered operator is \(cH^iJ^j\). For \(R\ge \| H\| \), \(S\ge \| J\| \), its operator norm is at most \(w_{R,S}(i,j,c)\).

Lean Formalisation
theorem MvPolynomial.eval_volterraSeriesTerm (i j : ℕ) (c : ℝ) (z : Fin 2 → ℝ) :
  (MvPolynomial.eval z) (MvPolynomial.volterraSeriesTerm i j c) = c * z 0 ^ i * z 1 ^ j
Lean proof
/-- Physical evaluation of a kernel-series monomial. -/
theorem eval_volterraSeriesTerm (i j : ℕ) (c : ℝ) (z : Fin 2 → ℝ) :
    eval z (volterraSeriesTerm i j c) = c*z 0^i*z 1^j := by
  have he : volterraSeriesTerm i j c = C c * X 0^i * X 1^j := by
    simp [volterraSeriesTerm, X_pow_eq_monomial, C_mul_monomial, monomial_mul_monomial]
  rw [he]
  simp
source
Definition 6.5.2 Closed rectangles for kernel series
✓ 🤖
#

For real \(R,S\), put \(B_{R,S}=\{ (x,y)\in \mathbb R^2:|x|\le R,\ |y|\le S\} \). This set is empty if either radius is negative.

Lean Formalisation
def MvPolynomial.volterraSeriesBox (R S : ℝ) : Set (Fin 2 → ℝ)
Lean definition
def volterraSeriesBox (R S : ℝ) : Set (Fin 2 → ℝ) :=
  {z | |z 0| ≤ R ∧ |z 1| ≤ S}
source
Theorem 6.5.3 Closedness of the convergence rectangle
✓ 🤖

Every \(B_{R,S}\) is closed.

Lean Formalisation
theorem MvPolynomial.isClosed_volterraSeriesBox (R S : ℝ) : IsClosed (MvPolynomial.volterraSeriesBox R S)
Lean proof
theorem isClosed_volterraSeriesBox (R S : ℝ) : IsClosed (volterraSeriesBox R S) := by
  exact (isClosed_le (show Continuous (fun z : Fin 2 → ℝ ↦ |z 0|) by fun_prop)
    continuous_const).inter
      (isClosed_le (show Continuous (fun z : Fin 2 → ℝ ↦ |z 1|) by fun_prop) continuous_const)
source
Definition 6.5.4 Convergent physical kernel-series input
✓ 🤖
#

Fix exponent sequences \(i_n,j_n\in \mathbb N\) and a point \(z=(x,y)\in \mathbb R^2\). A kernel-series input at \(z\) is a real coefficient sequence \(c_n\) for which \(\sum _n |c_nx^{i_n}y^{j_n}|{\lt}\infty \). Convergence is required at the selected point; no common rectangle is required to define the series at \(z\).

Lean Formalisation
def MvPolynomial.VolterraSeriesKernelInput (i j : ℕ → ℕ) (z : Fin 2 → ℝ) : Type
Lean definition
def VolterraSeriesKernelInput (i j : ℕ → ℕ) (z : Fin 2 → ℝ) :=
  {c : ℕ → ℝ // Summable (fun n ↦ c n * z 0 ^ i n * z 1 ^ j n)}
source
Theorem 6.5.5 Kernel-series inputs from a coefficient majorant
✓ 🤖

If \(R,S\ge 0\) and \(\sum _n w_{R,S}(i_n,j_n,c_n){\lt}\infty \), the scalar series \(\sum _n c_n x^{i_n}y^{j_n}\) converges absolutely at every \((x,y)\in B_{R,S}\). If \(R,S\ge 1\), this convergence holds at every point of the physical triangle \(\Delta \).

Lean Formalisation
def MvPolynomial.VolterraSeriesKernelInput.ofWeight (i j : ℕ → ℕ) (c : ℕ → ℝ) {R S : ℝ} (hR : 0 ≤ R) (hS : 0 ≤ S)
  (hw : Summable fun n => MvPolynomial.volterraSeriesWeight R S (i n) (j n) (c n))
  (z : ↑(MvPolynomial.volterraSeriesBox R S)) : MvPolynomial.VolterraSeriesKernelInput i j ↑z
Lean definition
def VolterraSeriesKernelInput.ofWeight (i j : ℕ → ℕ) (c : ℕ → ℝ) {R S : ℝ}
    (hR : 0 ≤ R) (hS : 0 ≤ S)
    (hw : Summable (fun n ↦ volterraSeriesWeight R S (i n) (j n) (c n)))
    (z : volterraSeriesBox R S) : VolterraSeriesKernelInput i j z :=
  ⟨c, hw.of_norm_bounded (fun n ↦ by
    simpa only [eval_volterraSeriesTerm] using
      norm_eval_volterraSeriesTerm_le hR hS (i n) (j n) (c n) z
        z.property.1 z.property.2)⟩
source
Definition 6.5.6 Classical physical kernel series
✓ 🤖
#

For a kernel-series input at \(z=(x,y)\), define \(K(z)=\sum _{n\ge 0}c_nx^{i_n}y^{j_n}\), the sum of its absolutely convergent series.

Lean Formalisation
def MvPolynomial.volterraSeriesKernel (i j : ℕ → ℕ) {z : Fin 2 → ℝ} (d : MvPolynomial.VolterraSeriesKernelInput i j z) : ℝ
Lean definition
def volterraSeriesKernel (i j : ℕ → ℕ) {z : Fin 2 → ℝ} (d : VolterraSeriesKernelInput i j z) : ℝ :=
  ∑' n, d.val n * z 0 ^ i n * z 1 ^ j n
source
Theorem 6.5.7 Value of the physical kernel series
✓ 🤖

At every point \((x,y)\) where the monomial series is absolutely convergent, its kernel value is its sum:

\[ \sum _{n\ge 0}c_n x^{i_n}y^{j_n}=K(x,y). \]
Lean Formalisation
theorem MvPolynomial.hasSum_volterraSeriesKernel (i j : ℕ → ℕ) {z : Fin 2 → ℝ}
  (d : MvPolynomial.VolterraSeriesKernelInput i j z) :
  HasSum (fun n => ↑d n * z 0 ^ i n * z 1 ^ j n) (MvPolynomial.volterraSeriesKernel i j d)
Lean proof
theorem hasSum_volterraSeriesKernel (i j : ℕ → ℕ) {z : Fin 2 → ℝ} (d : VolterraSeriesKernelInput i j z) :
    HasSum (fun n ↦ d.val n * z 0 ^ i n * z 1 ^ j n) (volterraSeriesKernel i j d) :=
  d.property.hasSum
source
Theorem 6.5.8 Continuity on the closed convergence rectangle
✓ 🤖

If \(R,S\ge 0\) and the joint weights are summable, the function \(K:B_{R,S}\to \mathbb R\) is continuous.

Lean Formalisation
theorem MvPolynomial.continuous_volterraSeriesKernel_box (i j : ℕ → ℕ) (c : ℕ → ℝ) {R S : ℝ} (hR : 0 ≤ R) (hS : 0 ≤ S)
  (hw : Summable fun n => MvPolynomial.volterraSeriesWeight R S (i n) (j n) (c n)) :
  Continuous fun z =>
    MvPolynomial.volterraSeriesKernel i j (MvPolynomial.VolterraSeriesKernelInput.ofWeight i j c hR hS hw z)
Lean proof
theorem continuous_volterraSeriesKernel_box (i j : ℕ → ℕ) (c : ℕ → ℝ) {R S : ℝ}
    (hR : 0 ≤ R) (hS : 0 ≤ S)
    (hw : Summable (fun n ↦ volterraSeriesWeight R S (i n) (j n) (c n))) :
    Continuous (fun z : volterraSeriesBox R S ↦ volterraSeriesKernel i j (VolterraSeriesKernelInput.ofWeight i j c hR hS hw z)) := by
  simp only [volterraSeriesKernel, VolterraSeriesKernelInput.ofWeight]
  refine continuous_tsum (fun n ↦ ?_) hw (fun n z ↦ ?_)
  · have h0 : Continuous (fun z : volterraSeriesBox R S ↦ (z : Fin 2 → ℝ) 0) :=
      (continuous_apply 0).comp continuous_subtype_val
    have h1 : Continuous (fun z : volterraSeriesBox R S ↦ (z : Fin 2 → ℝ) 1) :=
      (continuous_apply 1).comp continuous_subtype_val
    exact ((h0.pow (i n)).const_mul (c n)).mul (h1.pow (j n))
  · simpa only [eval_volterraSeriesTerm] using
      norm_eval_volterraSeriesTerm_le hR hS (i n) (j n) (c n) z
        z.property.1 z.property.2
source
Definition 6.5.9 Continuous extensions of a kernel series
✓ 🤖

For nonnegative radii and a summable joint majorant, a kernel-series extension is a continuous function \(F:\mathbb R^2\to \mathbb R\) such that \(F(z)=K(z)\) for every \(z\in B_{R,S}\). Outside the rectangle, \(F\) is an extension and is not asserted to be a series value.

Lean Formalisation
def MvPolynomial.VolterraSeriesKernelExtension (i j : ℕ → ℕ) (c : ℕ → ℝ) {R S : ℝ} (hR : 0 ≤ R) (hS : 0 ≤ S)
  (hw : Summable fun n => MvPolynomial.volterraSeriesWeight R S (i n) (j n) (c n)) : Type
Lean definition
/-- A genuine continuous extension of the series on its closed convergence volterraSeriesBox. -/
def VolterraSeriesKernelExtension (i j : ℕ → ℕ) (c : ℕ → ℝ) {R S : ℝ}
    (hR : 0 ≤ R) (hS : 0 ≤ S)
    (hw : Summable (fun n ↦ volterraSeriesWeight R S (i n) (j n) (c n))) :=
  {K : C((Fin 2 → ℝ), ℝ) // ∀ z : volterraSeriesBox R S,
    K z = volterraSeriesKernel i j (VolterraSeriesKernelInput.ofWeight i j c hR hS hw z)}
source
Theorem 6.5.10 Existence of continuous kernel-series extensions
✓ 🤖

Every kernel series with nonnegative radii and a summable joint majorant admits a continuous extension to \(\mathbb R^2\) agreeing on \(B_{R,S}\).

Lean Formalisation
theorem MvPolynomial.nonempty_volterraSeriesKernelExtension (i j : ℕ → ℕ) (c : ℕ → ℝ) {R S : ℝ} (hR : 0 ≤ R) (hS : 0 ≤ S)
  (hw : Summable fun n => MvPolynomial.volterraSeriesWeight R S (i n) (j n) (c n)) :
  Nonempty (MvPolynomial.VolterraSeriesKernelExtension i j c hR hS hw)
Lean proof
theorem nonempty_volterraSeriesKernelExtension (i j : ℕ → ℕ) (c : ℕ → ℝ) {R S : ℝ}
    (hR : 0 ≤ R) (hS : 0 ≤ S)
    (hw : Summable (fun n ↦ volterraSeriesWeight R S (i n) (j n) (c n))) :
    Nonempty (VolterraSeriesKernelExtension i j c hR hS hw) := by
  obtain ⟨K,hK⟩ := exists_continuous_volterraSeriesKernel_extension i j c hR hS hw
  exact ⟨⟨K,hK⟩⟩
source
Definition 6.5.11 Convergent Volterra operator-series data
✓ 🤖
#

For exponent sequences \(i_n,j_n\in \mathbb N\), an operator-series input is a real coefficient sequence \(c_n\) for which the ordered operator family \(A_{c_nx^{i_n}y^{j_n}}\) is unconditionally summable in the Banach space of bounded operators on real \(\ell ^2\).

Lean Formalisation
def MvPolynomial.VolterraSeriesOperatorInput (i j : ℕ → ℕ) : Type
Lean definition
/-- Coefficients for which the ordered Volterra operator series converges. -/
def VolterraSeriesOperatorInput :=
  {c : ℕ → ℝ // Summable (fun n ↦
    volterraPreconditionedL2 (volterraSeriesTerm (i n) (j n) (c n)))}
source
Theorem 6.5.12 Operator-series input from a coefficient majorant
✓ 🤖

If \(R\ge \| H\| \), \(S\ge \| J\| \), and \((w_{R,S}(i_n,j_n,c_n))_{n\ge 0}\) is summable, then the ordered operator series \(\sum _n c_nH^{i_n}J^{j_n}\) is summable in the Banach space of bounded operators.

Lean Formalisation
def MvPolynomial.VolterraSeriesOperatorInput.ofWeight (i j : ℕ → ℕ) (c : ℕ → ℝ) {R S : ℝ}
  (hw : Summable fun n => MvPolynomial.volterraSeriesWeight R S (i n) (j n) (c n))
  (hRH : ‖Polynomial.reflectedJacobiOneZeroL2‖ ≤ R) (hSJ : ‖Polynomial.shiftedJacobiOneZeroL2‖ ≤ S) :
  MvPolynomial.VolterraSeriesOperatorInput i j
Lean definition
/-- A summable joint coefficient majorant supplies a convergent operator input. -/
def VolterraSeriesOperatorInput.ofWeight {R S : ℝ}
    (hw : Summable (fun n ↦ volterraSeriesWeight R S (i n) (j n) (c n)))
    (hRH : ‖reflectedJacobiOneZeroL2‖ ≤ R) (hSJ : ‖shiftedJacobiOneZeroL2‖ ≤ S) :
    VolterraSeriesOperatorInput i j :=
  ⟨c, hw.of_norm_bounded (fun n ↦
    norm_volterraPreconditionedL2_seriesTerm_le hRH hSJ (i n) (j n) (c n))⟩
source
Definition 6.5.13 Sum of an ordered Volterra operator series
✓ 🤖
#

For a convergent operator-series input, define the unconditional sum \(A=\sum _{n\ge 0}A_{c_nx^{i_n}y^{j_n}}\) in the space of bounded operators on real \(\ell ^2\).

Lean Formalisation
def MvPolynomial.volterraSeriesOperator (i j : ℕ → ℕ) (d : MvPolynomial.VolterraSeriesOperatorInput i j) :
  ↥(lp (fun x => ℝ) 2) →L[ℝ] ↥(lp (fun x => ℝ) 2)
Lean definition
/-- The convergent ordered operator series associated to the kernel expansion. -/
def volterraSeriesOperator (d : VolterraSeriesOperatorInput i j) :
    lp (fun _ : ℕ ↦ ℝ) 2 →L[ℝ] lp (fun _ : ℕ ↦ ℝ) 2 :=
  ∑' n, volterraPreconditionedL2 (volterraSeriesTerm (i n) (j n) (d.val n))
source
Theorem 6.5.14 Value of a convergent Volterra operator series
✓ 🤖

On the domain where \(\sum _n c_nH^{i_n}J^{j_n}\) is unconditionally summable in the Banach space of bounded operators, the ordered Volterra series operator \(A\) is its sum:

\[ \sum _{n\ge 0}c_nH^{i_n}J^{j_n}=A. \]
Lean Formalisation
theorem MvPolynomial.hasSum_volterraSeriesOperator (i j : ℕ → ℕ) (d : MvPolynomial.VolterraSeriesOperatorInput i j) :
  HasSum (fun n => (MvPolynomial.volterraSeriesTerm (i n) (j n) (↑d n)).volterraPreconditionedL2)
    (MvPolynomial.volterraSeriesOperator i j d)
Lean proof
/-- The ordered operator series has the specified classical sum. -/
theorem hasSum_volterraSeriesOperator (d : VolterraSeriesOperatorInput i j) :
    HasSum (fun n ↦ volterraPreconditionedL2 (volterraSeriesTerm (i n) (j n) (d.val n)))
      (volterraSeriesOperator i j d) :=
  d.property.hasSum
source
Definition 6.5.15 Summable Volterra tail data
✓ 🤖
#

For exponent sequences \(i_n,j_n\in \mathbb N\) and real radii \(R,S\), a Volterra tail input is a real coefficient sequence \(c_n\) for which the real family \(w_n=w_{R,S}(i_n,j_n,c_n)\) is absolutely summable. No positivity of the radii is needed to specify this convergence domain.

Lean Formalisation
def MvPolynomial.VolterraSeriesTailInput (i j : ℕ → ℕ) (R S : ℝ) : Type
Lean definition
/-- Coefficients whose joint Volterra majorant is summable. -/
def VolterraSeriesTailInput (R S : ℝ) :=
  {c : ℕ → ℝ // Summable (fun n ↦ volterraSeriesWeight R S (i n) (j n) (c n))}
source
Theorem 6.5.16 Convergence after a finite cutoff
✓ 🤖

Let \(w_n=w_{R,S}(i_n,j_n,c_n)\) be the joint coefficient weights. If \((w_n)_{n\ge 0}\) is summable, then for every \(N\ge 0\) the shifted family \((w_{n+N})_{n\ge 0}\) is summable.

Lean Formalisation
theorem MvPolynomial.VolterraSeriesTailInput.summable_tail (i j : ℕ → ℕ) {R S : ℝ}
  (d : MvPolynomial.VolterraSeriesTailInput i j R S) (N : ℕ) :
  Summable fun n => MvPolynomial.volterraSeriesWeight R S (i (n + N)) (j (n + N)) (↑d (n + N))
Lean proof
/-- The shared tail input has a summable tail at each finite cutoff. -/
theorem VolterraSeriesTailInput.summable_tail {R S : ℝ}
    (d : VolterraSeriesTailInput i j R S) (N : ℕ) :
    Summable (fun n ↦ volterraSeriesWeight R S (i (n+N)) (j (n+N)) (d.val (n+N))) :=
  (summable_nat_add_iff N).mpr d.property
source
Definition 6.5.17 Volterra coefficient tail
✓ 🤖
#

For a Volterra tail input, define the convergent coefficient tail by \(E_N=\sum _{n\ge 0}w_{n+N}\).

Lean Formalisation
def MvPolynomial.volterraSeriesTail (i j : ℕ → ℕ) {R S : ℝ} (d : MvPolynomial.VolterraSeriesTailInput i j R S) (N : ℕ) : ℝ
Lean definition
/-- A convergent coefficient majorant tail shared by physical and operator errors. -/
def volterraSeriesTail {R S : ℝ} (d : VolterraSeriesTailInput i j R S) (N : ℕ) : ℝ :=
  ∑' n, volterraSeriesWeight R S (i (n+N)) (j (n+N)) (d.val (n+N))
source
Theorem 6.5.18 Value and convergence of Volterra tails
✓ 🤖

The shifted family \((w_{n+N})_{n\ge 0}\) has sum \(E_N\), and \(E_N\to 0\). If \(R,S\ge 1\), then \(E_N\ge 0\) for every \(N\).

Lean Formalisation
theorem MvPolynomial.hasSum_volterraSeriesTail (i j : ℕ → ℕ) {R S : ℝ} (d : MvPolynomial.VolterraSeriesTailInput i j R S)
  (N : ℕ) :
  HasSum (fun n => MvPolynomial.volterraSeriesWeight R S (i (n + N)) (j (n + N)) (↑d (n + N)))
    (MvPolynomial.volterraSeriesTail i j d N)
Lean proof
/-- The coefficient tail is the sum of its defining convergent series. -/
theorem hasSum_volterraSeriesTail {R S : ℝ} (d : VolterraSeriesTailInput i j R S) (N : ℕ) :
    HasSum (fun n ↦ volterraSeriesWeight R S (i (n+N)) (j (n+N)) (d.val (n+N)))
      (volterraSeriesTail i j d N) :=
  (VolterraSeriesTailInput.summable_tail i j d N).hasSum
source

Let \(i_n,j_n\in \mathbb N\), \(c_n\in \mathbb R\), and assume \(R,S\ge 1\) and \(\sum _nw_n{\lt}\infty \), where \(w_n=w_{R,S}(i_n,j_n,c_n)\). Put \(p_n(x,y)=c_nx^{i_n}y^{j_n}\) and \(P_N=\sum _{n{\lt}N}p_n\). On \(B_{R,S}\) use the classical kernel sum \(K\) from Definition 6.5.6. For the coefficient tail \(E_N\) from Definition 6.5.17, we have \(E_N\ge 0\), \(E_N\to 0\), and \(K\) is continuous on \(\Delta \), with \(|P_N-K|\le E_N\) uniformly there. If additionally \(R\ge \| H\| \), \(S\ge \| J\| \), the operator-series input is convergent. Writing \(A=\sum _n A_{p_n}\), we have \(\| A_{P_N}-A\| \le E_N\) and \(A_{P_N}\to A\) in operator norm. The enumeration is arbitrary; a bivariate power series is obtained by enumerating its exponent pairs. No injectivity of the enumeration is needed.

Lean Formalisation
theorem MvPolynomial.norm_volterraSeriesPartial_sub_kernel_le (i j : ℕ → ℕ) (c : ℕ → ℝ) {R S : ℝ} (hR : 1 ≤ R) (hS : 1 ≤ S)
  (hw : Summable fun n => MvPolynomial.volterraSeriesWeight R S (i n) (j n) (c n)) (N : ℕ)
  (z : ↑Real.volterraTriangle) :
  ‖(MvPolynomial.eval ↑z) (MvPolynomial.volterraSeriesPartial i j c N) -
        MvPolynomial.volterraSeriesKernel i j (MvPolynomial.VolterraSeriesKernelInput.ofTriangle i j c hR hS hw z)‖ ≤
    MvPolynomial.volterraSeriesTail i j ⟨c, hw⟩ N
Lean proof
/-- Uniform physical truncation error is bounded by the coefficient tail. -/
theorem norm_volterraSeriesPartial_sub_kernel_le (N : ℕ)
    (z : Real.volterraTriangle) :
    ‖eval (z : Fin 2 → ℝ) (volterraSeriesPartial i j c N) -
      volterraSeriesKernel i j (VolterraSeriesKernelInput.ofTriangle i j c hR hS hw z)‖ ≤
      volterraSeriesTail i j ⟨c, hw⟩ N := by
  have hz := z.property
  have hb (n : ℕ) : ‖eval (z : Fin 2 → ℝ) (volterraSeriesTerm (i n) (j n) (c n))‖ ≤
      volterraSeriesWeight R S (i n) (j n) (c n) :=
    norm_eval_volterraSeriesTerm_le (zero_le_one.trans hR) (zero_le_one.trans hS) _ _ _ _
      (by rw [abs_of_nonneg hz.1.1]; exact hz.1.2.trans hR)
      (by rw [abs_of_nonneg hz.2.1]; exact (hz.2.2.trans hz.1.2).trans hS)
  simpa only [volterraSeriesPartial, map_sum, eval_volterraSeriesTerm, volterraSeriesKernel,
    VolterraSeriesKernelInput.ofTriangle, VolterraSeriesKernelInput.ofWeight,
    volterraSeriesTail] using series_tail_bound _ hw hb N
source

Under the preceding summability condition, assume \(R\ge 1\) and \(S{\gt}1\). For \(|x|\le R\), \(|y|{\lt}S\), the kernel is differentiable in its inner variable and

\[ \partial _yK(x,y)=\sum _n c_nx^{i_n}j_n y^{j_n-1}. \]

The summand is zero when \(j_n=0\); when \(j_n{\gt}0\), its exponent is nonnegative. On \(\Delta \), \(|\partial _yK|\le W:=\sum _n w_n\) and every slice on \([0,x]\) is absolutely continuous. These local derivative and row statements hold for every continuous extension agreeing on \(B_{R,S}\); the derivative of the domain-valued kernel is independent of the chosen extension. If \(K(x,x)\ne 0\) throughout \([0,1]\), there exists \(C\in \mathbb R\) such that \(|\partial _yK(x,y)|\le C|K(x,x)|\) on \(\Delta \).

Lean Formalisation
theorem MvPolynomial.hasDerivAt_volterraSeriesKernel (i j : ℕ → ℕ) (c : ℕ → ℝ) {R S : ℝ} (hR : 1 ≤ R) (hS : 1 < S)
  (hw : Summable fun n => MvPolynomial.volterraSeriesWeight R S (i n) (j n) (c n)) (x : { x // |x| ≤ R })
  (y : ↑(Set.Ioo (-S) S)) :
  HasDerivAtOnOpen { carrier := Set.Ioo (-S) S, is_open' := ⋯ }
    (fun t =>
      MvPolynomial.volterraSeriesKernel i j
        (MvPolynomial.VolterraSeriesKernelInput.ofWeight i j c ⋯ ⋯ hw ⟨![↑x, ↑t], ⋯⟩))
    (∑' (n : ℕ), c n * ↑x ^ i n * (↑(j n) * ↑y ^ (j n - 1))) y
Lean proof
/-- The series derivative exists intrinsically on its open inner domain. -/
theorem hasDerivAt_volterraSeriesKernel (x : {x : ℝ // |x| ≤ R}) (y : Ioo (-S) S) :
    HasDerivAtOnOpen ⟨Ioo (-S) S, isOpen_Ioo⟩
      (fun t ↦ volterraSeriesKernel i j (VolterraSeriesKernelInput.ofWeight i j c
        (zero_le_one.trans hR) (zero_le_one.trans hS.le) hw
        ⟨![(x : ℝ),(t : ℝ)], x.property, abs_le.mpr ⟨t.property.1.le,t.property.2.le⟩⟩))
      (∑' n, c n*(x : ℝ)^(i n)*((j n : ℝ)*(y : ℝ)^(j n-1))) y := by
  obtain ⟨F⟩ := nonempty_volterraSeriesKernelExtension i j c
    (zero_le_one.trans hR) (zero_le_one.trans hS.le) hw
  refine ⟨fun t ↦ F.val ![(x : ℝ),t], ?_,
    hasDerivAt_volterraSeriesKernel_extension i j c hR hS hw F x.property
      (abs_lt.mpr y.property)⟩
  intro t
  exact F.property ⟨![(x : ℝ),(t : ℝ)], x.property,
    abs_le.mpr ⟨t.property.1.le,t.property.2.le⟩⟩
source

Suppose \(R\ge \max (1,\| H\| )\), \(S{\gt}1\), \(S\ge \| J\| \), \(\sum _nw_n{\lt}\infty \), and \(K(x,x)\ne 0\) on \([0,1]\). Then \(A\) is invertible and its padded leading sections \(S_N(A)=I-P_N^{\ell ^2}+P_N^{\ell ^2}AP_N^{\ell ^2}\) have a uniform eventual inverse bound. For raw data \(g_N\to g\),

\[ S_N(A_{P_N})^{-1}P_N^{\ell ^2}g_N\to A^{-1}g. \]

Here the kernel truncation \(P_N\) and coordinate projection \(P_N^{\ell ^2}\) are different objects. More generally, at any invertible section \(B=S_N(A_{P_L})\), for arbitrary \(u,g\in \ell ^2\),

\[ \| B^{-1}P_N^{\ell ^2}g-u\| \le \| B^{-1}\| \big((1+\| A\| )\| P_N^{\ell ^2}u-u\| +\| g-Au\| +E_L\| u\| \big). \]

The error estimate itself only requires the summability, operator-radius bounds and invertibility of that section.

Lean Formalisation
theorem MvPolynomial.isUnit_and_stable_volterraSeriesOperator (i j : ℕ → ℕ) (c : ℕ → ℝ) {R S : ℝ} (hR : 1 ≤ R) (hS : 1 < S)
  (hRH : ‖Polynomial.reflectedJacobiOneZeroL2‖ ≤ R) (hSJ : ‖Polynomial.shiftedJacobiOneZeroL2‖ ≤ S)
  (hw : Summable fun n => MvPolynomial.volterraSeriesWeight R S (i n) (j n) (c n))
  (hd :
    ∀ (x : ↑(Set.Icc 0 1)),
      MvPolynomial.volterraSeriesKernel i j
          (MvPolynomial.VolterraSeriesKernelInput.ofTriangle i j c hR ⋯ hw ⟨![↑x, ↑x], ⋯⟩) ≠
        0) :
  IsUnit
      (MvPolynomial.volterraSeriesOperator i j (MvPolynomial.VolterraSeriesOperatorInput.ofWeight i j c hw hRH hSJ)) ∧
    ∃ B,
      0 ≤ B ∧
        ∀ᶠ (N : ℕ) in Filter.atTop,
          IsUnit
              ((lp.initialL2Projection N).coerciveFiniteSection
                (MvPolynomial.volterraSeriesOperator i j
                  (MvPolynomial.VolterraSeriesOperatorInput.ofWeight i j c hw hRH hSJ))) ∧
            ‖Ring.inverse
                  ((lp.initialL2Projection N).coerciveFiniteSection
                    (MvPolynomial.volterraSeriesOperator i j
                      (MvPolynomial.VolterraSeriesOperatorInput.ofWeight i j c hw hRH hSJ)))‖ ≤
              B
Lean proof
/-- The joint coefficient criterion and a nonzero diagonal imply invertibility and stable sections. -/
theorem isUnit_and_stable_volterraSeriesOperator :
    IsUnit (volterraSeriesOperator i j (VolterraSeriesOperatorInput.ofWeight i j c hw hRH hSJ)) ∧ ∃ B : ℝ, 0 ≤ B ∧ ∀ᶠ N in atTop,
      IsUnit (coerciveFiniteSection (lp.initialL2Projection N) (volterraSeriesOperator i j (VolterraSeriesOperatorInput.ofWeight i j c hw hRH hSJ))) ∧
      ‖Ring.inverse (coerciveFiniteSection (lp.initialL2Projection N)
        (volterraSeriesOperator i j (VolterraSeriesOperatorInput.ofWeight i j c hw hRH hSJ)))‖ ≤ B := by
  obtain ⟨E⟩ := nonempty_volterraSeriesKernelExtension i j c
    (zero_le_one.trans hR) (zero_le_one.trans hS.le) hw
  have hdE (x : Icc (0 : ℝ) 1) : E.val ![(x : ℝ),(x : ℝ)] ≠ 0 := by
    rw [extension_eq_triangle i j c hR hS hw E
      ⟨![(x : ℝ),(x : ℝ)], x.property, x.property.1, le_rfl⟩]
    exact hd x
  obtain ⟨C,hC⟩ := exists_volterraSeriesKernel_relative_derivative_bound i j c hR hS hw E hdE
  have herr (N : ℕ) (z : Fin 2 → ℝ) (hz : z ∈ Real.volterraTriangle) :
      ‖eval z (volterraSeriesPartial i j c N) - E.val z‖ ≤
        volterraSeriesTail i j ⟨c,hw⟩ N := by
    rw [extension_eq_triangle i j c hR hS hw E ⟨z,hz⟩]
    exact norm_volterraSeriesPartial_sub_kernel_le i j c hR hS.le hw N ⟨z,hz⟩
  exact Real.isUnit_and_stable_continuousVolterra
    E.val.continuous.continuousOn
    (fun x hx ↦ absolutelyContinuousOnInterval_volterraSeriesKernel i j c hR hS hw E ⟨x,hx⟩)
    (fun x hx ↦ by
      obtain ⟨g⟩ := IntegrableDerivative.nonempty_of_absolutelyContinuous
        (absolutelyContinuousOnInterval_volterraSeriesKernel i j c hR hS hw E ⟨x,hx⟩)
      refine ⟨g, ?_⟩
      filter_upwards [g.hasDerivAt, MeasureTheory.ae_restrict_mem measurableSet_uIcc] with y hy hmem
      rw [← hy.deriv]
      exact hC ⟨x,hx⟩ ⟨y,by simpa only [uIcc_of_le hx.1] using hmem⟩) (fun x hx ↦ hdE ⟨x,hx⟩)
    (volterraSeriesPartial i j c) (volterraSeriesTail_nonneg i j c hR hS.le hw)
    herr
    (tendsto_volterraSeriesTail i j c hw) _ (tendsto_volterraSeriesPartial_operator i j c hw hRH hSJ)
source

The inverse norm and solution tail remain explicit; no numerical certificate for them is asserted.

Reference details: The exponential kernel satisfies the coefficient criterion

For any real \(\lambda \), enumerate \((i_n,j_n)=\operatorname {unpair}(n)\) and set

\[ c_n=\frac{\lambda ^{i_n}(-\lambda )^{j_n}}{i_n!j_n!}. \]

The series \(\sum _n c_n x^{i_n}y^{j_n}\) converges absolutely for every \((x,y)\in \mathbb {R}^2\). The classical kernel value equals \(e^{\lambda (x-y)}\) for all real \(x,y\). For every \(R,S\ge 0\), its joint weights are summable. The pairing enumerates all exponent pairs.

Lean Formalisation
theorem MvPolynomial.summable_volterraExponentialWeight (lam : ℝ) {R S : ℝ} (hR : 0 ≤ R) (hS : 0 ≤ S) :
  Summable fun n =>
    MvPolynomial.volterraSeriesWeight R S (Nat.unpair n).1 (Nat.unpair n).2
      (MvPolynomial.volterraExponentialCoefficient lam n)
Lean proof
/-- The exponential coefficient weights are summable for arbitrary nonnegative radii. -/
theorem summable_volterraExponentialWeight (lam : ℝ) {R S : ℝ} (hR : 0 ≤ R) (hS : 0 ≤ S) :
    Summable (fun n ↦ volterraSeriesWeight R S (Nat.unpair n).1 (Nat.unpair n).2
      (volterraExponentialCoefficient lam n)) := by
  have hs := (Real.summable_pow_div_factorial (|lam| *R)).mul_of_nonneg
    (Real.summable_pow_div_factorial (2*|lam| *S)) (fun n ↦ by positivity) (fun n ↦ by positivity)
  have hp : Summable (fun n ↦ ((|lam| *R)^(Nat.unpair n).1 / ((Nat.unpair n).1.factorial : ℝ))*
      ((2*|lam| *S)^(Nat.unpair n).2 / ((Nat.unpair n).2.factorial : ℝ))) :=
    by simpa only [Function.comp_def,Nat.pairEquiv_symm_apply] using
      (Nat.pairEquiv.symm.summable_iff.mpr hs)
  apply hp.of_nonneg_of_le
    (fun n ↦ volterraSeriesWeight_nonneg hR hS _ _ _) (fun n ↦ ?_)
  have hn : ((Nat.unpair n).2 : ℝ)+1 ≤ (2 : ℝ)^(Nat.unpair n).2 := by
    exact_mod_cast Nat.succ_le_of_lt (Nat.lt_two_pow_self (n := (Nat.unpair n).2))
  have hcast (k : ℕ) : |(k : ℝ)| = (k : ℝ) := abs_of_nonneg (Nat.cast_nonneg k)
  have hc : volterraSeriesWeight R S (Nat.unpair n).1 (Nat.unpair n).2
      (volterraExponentialCoefficient lam n) =
      ((|lam| *R)^(Nat.unpair n).1 / ((Nat.unpair n).1.factorial : ℝ))*
      ((|lam| *S)^(Nat.unpair n).2 / ((Nat.unpair n).2.factorial : ℝ))*((Nat.unpair n).2+1) := by
    simp only [volterraSeriesWeight,volterraExponentialCoefficient,abs_div,abs_mul,
      abs_pow,abs_neg,hcast,mul_pow]
    ring
  rw [hc]
  have hb := mul_le_mul_of_nonneg_left hn
    (show 0 ≤ ((|lam| *R)^(Nat.unpair n).1 / ((Nat.unpair n).1.factorial : ℝ))*
      ((|lam| *S)^(Nat.unpair n).2 / ((Nat.unpair n).2.factorial : ℝ)) by positivity)
  convert hb using 1
  simp only [mul_pow]
  ring
source

Let \(K_\lambda (x,y)=e^{\lambda (x-y)}\), for any \(\lambda \in \mathbb R\), and let \(P_N\) be its paired polynomial series truncations and \(A_\lambda \) the ordered operator series. The physical bound is \(|K_\lambda |\le e^{|\lambda |}\) on \(\Delta \); its truncation error is bounded by the coefficient tail for every \(R,S\ge 1\). The diagonal is identically one. The operator \(A_\lambda \) is invertible, its leading sections have a uniform eventual inverse bound, and for \(g_N\to g\) in raw \(\ell ^2\),

\[ S_N(A_{P_N})^{-1}P_N^{\ell ^2}g_N\to A_\lambda ^{-1}g. \]

The exact integral realization satisfies \(SD A_\lambda =B_{K_\lambda }S\). Consequently, the limiting coefficient solution satisfies the genuine weighted integral equation

\[ B_{K_\lambda }S(A_\lambda ^{-1}g)=SDg. \]

Reflection and endpoint averaging are those of \(B_K\), and \(S\) is synthesis from raw coefficients.

Lean Formalisation
theorem MvPolynomial.norm_volterraExponentialPartial_sub_le (lam : ℝ) {R S : ℝ} (hR : 1 ≤ R) (hS : 1 ≤ S) (N : ℕ)
  (z : Fin 2 → ℝ) (hz : z ∈ Real.volterraTriangle) :
  ‖(MvPolynomial.eval z) (MvPolynomial.volterraExponentialPartial lam N) - Real.exp (lam * (z 0 - z 1))‖ ≤
    MvPolynomial.volterraSeriesTail (fun n => (Nat.unpair n).1) (fun n => (Nat.unpair n).2)
      ⟨MvPolynomial.volterraExponentialCoefficient lam, ⋯⟩ N
Lean proof
/-- Explicit coefficient-tail control of the physical exponential-kernel approximation. -/
theorem norm_volterraExponentialPartial_sub_le (lam : ℝ) {R S : ℝ}
    (hR : 1 ≤ R) (hS : 1 ≤ S) (N : ℕ) (z : Fin 2 → ℝ) (hz : z ∈ Real.volterraTriangle) :
    ‖eval z (volterraExponentialPartial lam N)-Real.exp (lam*(z 0-z 1))‖ ≤
      volterraSeriesTail a b ⟨volterraExponentialCoefficient lam,
        summable_volterraExponentialWeight lam (zero_le_one.trans hR) (zero_le_one.trans hS)⟩ N := by
  have h := norm_volterraSeriesPartial_sub_kernel_le a b (volterraExponentialCoefficient lam) hR hS
    (summable_volterraExponentialWeight lam (zero_le_one.trans hR) (zero_le_one.trans hS)) N ⟨z,hz⟩
  have he := volterraSeriesKernel_exponential lam z
  simp only [volterraSeriesKernel, VolterraSeriesKernelInput.ofTriangle,
    VolterraSeriesKernelInput.ofExponential, VolterraSeriesKernelInput.ofWeight] at h he
  simpa only [volterraExponentialPartial, he] using h
source

For every real \(\lambda \), the raw coefficient operator factors in the stated order:

\[ A_\lambda =e^{\lambda H}e^{-\lambda J},\qquad A_\lambda ^{-1}=e^{\lambda J}e^{-\lambda H}. \]

No commutation of \(H\) and \(J\) is assumed. In particular, with \(C_\lambda =\exp (|\lambda |(\| H\| +\| J\| ))\),

\[ \| A_\lambda ^{-1}\| \le C_\lambda ,\qquad \| v-A_\lambda ^{-1}g\| \le C_\lambda \| g-A_\lambda v\| \quad (g,v\in \ell ^2). \]
Lean Formalisation
theorem MvPolynomial.volterraExponentialOperator_eq (lam : ℝ) :
  MvPolynomial.volterraExponentialOperator lam =
    NormedSpace.exp (lam • Polynomial.reflectedJacobiOneZeroL2) *
      NormedSpace.exp (-lam • Polynomial.shiftedJacobiOneZeroL2)
Lean proof
/-- The exponential kernel gives an ordered product of operator exponentials. -/
theorem volterraExponentialOperator_eq (lam : ℝ) :
    volterraExponentialOperator lam =
      NormedSpace.exp (lam • H) * NormedSpace.exp ((-lam) • J) := by
  have hp (x : ℝ) (A : E →L[ℝ] E) (n : ℕ) : (x • A)^n = x^n • A^n := by
    induction n with
    | zero => simp
    | succ n ih =>
      rw [pow_succ,ih,pow_succ,pow_succ]
      apply ContinuousLinearMap.ext
      intro v
      simp only [mul_apply_eq_comp,smul_apply,
        map_smul,smul_smul,mul_comm]
  have hm (x y : ℝ) (A B : E →L[ℝ] E) :
      (x • A)*(y • B) = (x*y) • (A*B) := by
    apply ContinuousLinearMap.ext
    intro v
    simp only [mul_apply_eq_comp,smul_apply,
      map_smul,smul_smul,mul_comm]
  unfold volterraExponentialOperator volterraSeriesOperator VolterraSeriesOperatorInput.ofWeight
  simp_rw [volterraPreconditionedL2_seriesTerm]
  have he (n : ℕ) : volterraExponentialCoefficient lam n •
      (H^(Nat.unpair n).1 * J^(Nat.unpair n).2) =
      (((Nat.unpair n).1.factorial : ℝ)⁻¹ • (lam • H)^(Nat.unpair n).1) *
        (((Nat.unpair n).2.factorial : ℝ)⁻¹ • ((-lam) • J)^(Nat.unpair n).2) := by
    simp only [volterraExponentialCoefficient,hp,hm,smul_smul,div_eq_mul_inv]
    congr 1
    ring
  simp_rw [he]
  have hr := Nat.pairEquiv.symm.tsum_eq (fun k : ℕ × ℕ ↦
    ((k.1.factorial : ℝ)⁻¹ • (lam • H)^k.1) *
      ((k.2.factorial : ℝ)⁻¹ • ((-lam) • J)^k.2))
  simp only [Nat.pairEquiv_symm_apply] at hr
  rw [hr, ← tsum_mul_tsum_of_summable_norm
    (NormedSpace.norm_expSeries_summable' (𝕂 := ℝ) (lam • H))
    (NormedSpace.norm_expSeries_summable' (𝕂 := ℝ) ((-lam) • J))]
  rw [NormedSpace.exp_eq_tsum ℝ]
source

This is a bound for the full inverse; it does not assert the same constant for finite-section inverses.

For \(R,S\ge 0\), the total joint coefficient weight of the exponential series satisfies

\[ \sum _n w_{R,S}(i_n,j_n,c_n)\le e^{|\lambda |R+2|\lambda |S}. \]

For \(0{\lt}q\le 1\) and natural numbers \(m,N\) with \(m^2\le N\), its tail satisfies

\[ E_N(R,S)\le q^m\exp \! \left(\frac{|\lambda |R+2|\lambda |S}{q}\right). \]

Consequently, on the physical triangle,

\[ |P_N(x,y)-e^{\lambda (x-y)}|\le q^m e^{3|\lambda |/q}. \]

For \(R\ge \| H\| \), \(S\ge \| J\| \), the raw operator error satisfies

\[ \| A_{P_N}-A_\lambda \| \le q^m\exp \! \left(\frac{|\lambda |R+2|\lambda |S}{q}\right). \]

For fixed \(q{\lt}1\) these are geometric bounds in \(m\); \(N\) is the number of paired terms, not a total-degree cutoff. Choosing \(q=1/2\) gives entirely explicit bounds without an infinite tail sum.

Lean Formalisation
theorem MvPolynomial.tsum_volterraExponentialWeight_le (lam : ℝ) {R S : ℝ} (hR : 0 ≤ R) (hS : 0 ≤ S) :
  ∑' (n : ℕ),
      MvPolynomial.volterraSeriesWeight R S ((fun n => (Nat.unpair n).1) n) ((fun n => (Nat.unpair n).2) n)
        (MvPolynomial.volterraExponentialCoefficient lam n) ≤
    Real.exp (|lam| * R + 2 * |lam| * S)
Lean proof
/-- A closed-form bound for the total joint coefficient majorant. -/
theorem tsum_volterraExponentialWeight_le (lam : ℝ) {R S : ℝ} (hR : 0 ≤ R) (hS : 0 ≤ S) :
    (∑' n, volterraSeriesWeight R S (a n) (b n) (volterraExponentialCoefficient lam n)) ≤
      Real.exp (|lam| *R+2*|lam| *S) := by
  let f (k : ℕ × ℕ) := ((|lam| *R)^k.1/(k.1.factorial : ℝ))*
    ((2*|lam| *S)^k.2/(k.2.factorial : ℝ))
  have hs := (Real.summable_pow_div_factorial (|lam| *R)).mul_of_nonneg
    (Real.summable_pow_div_factorial (2*|lam| *S)) (fun n ↦ by positivity) (fun n ↦ by positivity)
  have hp : Summable (fun n ↦ f (Nat.unpair n)) := by
    simpa only [Function.comp_def,Nat.pairEquiv_symm_apply] using
      (Nat.pairEquiv.symm.summable_iff.mpr hs)
  apply (Summable.tsum_le_tsum (weight_bound lam hR hS)
    (summable_volterraExponentialWeight lam hR hS) hp).trans_eq
  have hr := Nat.pairEquiv.symm.tsum_eq f
  simp only [Nat.pairEquiv_symm_apply] at hr
  rw [hr]
  have hnorm (x : ℝ) : Summable (fun n : ℕ ↦ ‖x^n/(n.factorial : ℝ)‖) := by
    simpa only [norm_div,norm_pow,Real.norm_natCast] using Real.summable_pow_div_factorial ‖x‖
  rw [show f = (fun k : ℕ × ℕ ↦ ((|lam| *R)^k.1/(k.1.factorial : ℝ))*
    ((2*|lam| *S)^k.2/(k.2.factorial : ℝ))) from rfl,
    ← tsum_mul_tsum_of_summable_norm (hnorm _) (hnorm _)]
  have he (x : ℝ) : (∑' n : ℕ, x^n/(n.factorial : ℝ)) = Real.exp x := by
    rw [Real.exp_eq_exp_ℝ,NormedSpace.exp_eq_tsum_div]
  rw [he,he,Real.exp_add]
source
Reference details: Numerical bounds for the raw Jacobi factors and related results
Theorem 6.5.26 Numerical bounds for the raw Jacobi factors
✓ 🤖

For the constant tridiagonal part \(T\), raw shifted Jacobi multiplication \(J\), and reflected preconditioned factor \(H\),

\[ \| T\| \le 1,\qquad \| J\| \le 2,\qquad \| H\| \le 3. \]
Lean Formalisation
theorem Polynomial.norm_shiftedJacobiToeplitzPart_le : ‖Polynomial.shiftedJacobiToeplitzPart‖ ≤ 1
Lean proof
/-- The common constant tridiagonal part has norm at most one. -/
theorem norm_shiftedJacobiToeplitzPart_le : ‖shiftedJacobiToeplitzPart‖ ≤ 1 := by
  have h := norm_add_le ((1/2 : ℝ) • (1 : E →L[ℝ] E)) ((1/4 : ℝ) • (F+B))
  have hsum := (norm_add_le F B).trans (add_le_add forward_bound backward_bound)
  have hid : ‖(1 : E →L[ℝ] E)‖ ≤ 1 := ContinuousLinearMap.norm_id_le
  simp only [norm_smul,Real.norm_eq_abs] at h
  norm_num only at h
  unfold shiftedJacobiToeplitzPart
  nlinarith
source

These are conservative bounds in the raw coefficient \(\ell ^2\) norm.

Let \(K\) be a polynomial kernel of total degree \(d_K\) (zero for the zero kernel), and let \(c,d\) be finite raw coefficient vectors supported below \(N,M\), respectively. Write \(b_i=(\mathcal V_Kc)_i\) for the Proriol assembled coefficients before the endpoint factor. The raw preconditioned action is

\[ (A_Kc)_i=(-1)^i(i+1)b_i. \]

It vanishes for \(i\ge N+d_K\). Thus the residual \(r=d-A_Kc\) vanishes for \(i\ge Q:=\max (M,N+d_K)\), and its full norm is exactly

\[ \| r\| _2=\left(\sum _{i{\lt}Q}[d_i-(-1)^i(i+1)b_i]^2\right)^{1/2},\qquad \| c\| _2=\left(\sum _{i{\lt}N}c_i^2\right)^{1/2}. \]

For input \(v\in \mathbb {R}^N\), each of the first \(N+d_K\) raw output rows is the corresponding row of the rectangular Proriol section multiplied by \((-1)^i(i+1)\). The residual sum includes rows beyond the retained square system; those rows cannot generally be discarded.

Lean Formalisation
theorem lp.norm_finsuppL2_eq_sqrt_sum (c : ℕ →₀ ℝ) (N : ℕ) (hc : ∀ n ∈ c.support, n < N) :
  ‖lp.finsuppL2 c‖ = √(∑ n ∈ Finset.range N, c n ^ 2)
Lean proof
/-- A finitely supported raw coefficient norm is an ordinary finite Euclidean norm. -/
theorem norm_finsuppL2_eq_sqrt_sum (c : ℕ →₀ ℝ) (N : ℕ)
    (hc : ∀ n ∈ c.support, n < N) :
    ‖finsuppL2 c‖ = Real.sqrt (∑ n ∈ Finset.range N, (c n)^2) := by
  apply norm_eq_finite_sum
  intro n hn
  exact Finsupp.notMem_support_iff.mp (fun h ↦ (Nat.not_lt_of_ge hn) (hc n h))
source

For every real \(\lambda \),

\[ \| A_\lambda ^{-1}\| \le e^{5|\lambda |}. \]

For any raw vectors \(g,d,v\), bounded operator \(B\), and error bounds \(\| g-d\| \le \delta \), \(\| B-A_\lambda \| \le \varepsilon \),

\[ \| v-A_\lambda ^{-1}g\| \le e^{5|\lambda |}\bigl(\delta +\| d-Bv\| +\varepsilon \| v\| \bigr). \]

In particular, for the paired kernel truncation \(P_L\), \(0{\lt}q\le 1\), and \(m^2\le L\), one may take

\[ B=A_{P_L},\qquad \varepsilon =q^m e^{7|\lambda |/q}. \]

For finite input coefficients \(c\) supported below \(N\) and finite data \(d\) supported below \(M\), put \(Q=\max (M,N+\operatorname {totalDegree}P_L)\) and \(b_i=(\mathcal V_{P_L}c)_i\). Given \(\| g-d\| \le \delta \), the certificate is

\[ \| c-A_\lambda ^{-1}g\| _2\le e^{5|\lambda |} \left(\delta + \sqrt{\sum _{i{\lt}Q}[d_i-(-1)^i(i+1)b_i]^2} +q^m e^{7|\lambda |/q}\sqrt{\sum _{i{\lt}N}c_i^2}\right). \]

Finite vectors are embedded by zero extension. The candidate need not satisfy its retained equations exactly.

Lean Formalisation
theorem MvPolynomial.norm_inverse_volterraExponentialOperator_le_numeric (lam : ℝ) :
  ‖Ring.inverse (MvPolynomial.volterraExponentialOperator lam)‖ ≤ Real.exp (5 * |lam|)
Lean proof
/-- A numerical full-inverse bound, valid for every real exponential parameter. -/
theorem norm_inverse_volterraExponentialOperator_le_numeric (lam : ℝ) :
    ‖Ring.inverse (volterraExponentialOperator lam)‖ ≤ Real.exp (5*|lam|) := by
  apply (norm_inverse_volterraExponentialOperator_le lam).trans
  apply Real.exp_le_exp.mpr
  have h := add_le_add norm_reflectedJacobiOneZeroL2_le norm_shiftedJacobiOneZeroL2_le
  nlinarith [abs_nonneg lam]
source

The data-tail bound is supplied explicitly; no finite-section inverse bound or floating-point rounding model is assumed.

Volterra operators through the triangle: see Theorems 6.1.15, 6.1.24, 6.1.30, 6.1.36, 6.1.38, 6.1.44, 6.1.54, 6.4.3, 6.4.4, 6.4.24, 6.4.30, 6.4.32, 6.5.21, 6.5.23, 6.5.24, 6.5.25 and 6.5.28.