Inversion of Abel's half-line integral equation, smooth families
Provedexists_abelInverse_linear_contDiff_eq_zero_of_le_integral_div_sqrt_sub_eqLet be a real normed space (a type with a normed additive commutative group structure and a real normed space structure). The assertion is the existence of an operator carrying functions to functions with the following two properties. First, is -linear on smooth compactly supported data: for all that are with compact support and all , one has as functions of . Second, for every that is with compact support, three things hold: the function on is ; for every , if for all and all , then also for all and all ; and for every and every , the Bochner integral of over the open half-line , with respect to Lebesgue measure, equals . No constraint is imposed on the values of at functions outside the smooth compactly supported ones.
This is the solvability of Abel's integral equation with kernel on a half-line, in a form uniform in an auxiliary parameter in a normed space: the solution operator is linear, preserves smoothness jointly in , and propagates vanishing on upper half-lines. It is used in the construction of the archimedean splitting transform for automorphic forms on , via AutomorphicForm.GL2Real.exists_linear_entrySlice_archWeightChar_zero_splitTransform_eq.
import Mathlib.Analysis.Calculus.ContDiff.Basic import Mathlib.MeasureTheory.Integral.Bochner.Basic import Mathlib.MeasureTheory.Integral.Bochner.Set import Mathlib.MeasureTheory.Measure.Lebesgue.Basic import Mathlib.Data.Real.Sqrt set_option maxHeartbeats 4000000 set_option synthInstance.maxHeartbeats 400000 set_option backward.isDefEq.respectTransparency.types false set_option autoImplicit false open MeasureTheory
theorem exists_abelInverse_linear_contDiff_eq_zero_of_le_integral_div_sqrt_sub_eq
(P : Type) [NormedAddCommGroup P] [NormedSpace ℝ P] :
∃ T : (ℝ → ℂ) → (ℝ → ℂ),
(∀ f g : ℝ → ℂ, ContDiff ℝ (⊤ : ℕ∞) f → HasCompactSupport f → ContDiff ℝ (⊤ : ℕ∞) g →
HasCompactSupport g → ∀ a b : ℂ, T (fun ξ => a * f ξ + b * g ξ) = fun ξ => a * T f ξ + b * T g ξ) ∧
∀ G : ℝ × P → ℂ, ContDiff ℝ (⊤ : ℕ∞) G → HasCompactSupport G →
ContDiff ℝ (⊤ : ℕ∞) (fun q : ℝ × P => T (fun ξ => G (ξ, q.2)) q.1) ∧
(∀ R : ℝ, (∀ (p : P) (ξ : ℝ), R ≤ ξ → G (ξ, p) = 0) →
∀ (p : P) (ξ : ℝ), R ≤ ξ → T (fun ξ' => G (ξ', p)) ξ = 0) ∧
∀ (η : ℝ) (p : P),
∫ ξ in Set.Ioi η, T (fun ξ' => G (ξ', p)) ξ / ((Real.sqrt (ξ - η) : ℝ) : ℂ) = G (η, p) := by sorry