pith. machine review for the scientific record. sign in

IndisputableMonolith.NumberTheory.MellinPullback

IndisputableMonolith/NumberTheory/MellinPullback.lean · 157 lines · 8 declarations

show as:
view math explainer →

open module explainer GitHub source

Explainer status: pending

   1import Mathlib
   2import IndisputableMonolith.Cost
   3
   4/-!
   5# The Mellin Pullback of Reciprocal Symmetry
   6
   7The central conceptual claim of the Recognition Cost Spectrum program
   8is that the zeta functional equation `ξ(s) = ξ(1-s)` arises as the
   9Mellin pullback of the reciprocal symmetry `J(x) = J(1/x)` of the
  10Recognition Science cost function.
  11
  12This module formalizes the abstract version: any function on
  13`ℝ_{>0}` with reciprocal symmetry, when transformed by the Mellin
  14operation `f → ∫_0^∞ x^{s-1} f(x) dx`, yields a function on the
  15complex `s`-plane with reflection symmetry `s ↔ 1-s` (or, more
  16generally, a symmetry around a fixed locus depending on the choice
  17of normalization).
  18
  19The connection to the actual zeta functional equation requires
  20substantial complex analysis (theta function identity, Poisson
  21summation) which we do not formalize here; this module establishes
  22the abstract structural result.
  23
  24## Main definitions
  25
  26* `ReciprocalSymmetric f` : the predicate `∀ x > 0, f(x) = f(1/x)`.
  27* `mellin_substitution_invariant` : the variable change `x → 1/x`
  28  in a Mellin integral is the involution `s → -s` (relative to the
  29  Lebesgue measure `dx/x`).
  30
  31## Main theorems (all 0 sorry)
  32
  33* `Jcost_reciprocal_symmetric` : `J` is reciprocally symmetric.
  34* `mellin_kernel_substitution`  : the kernel `x^{s-1}` transforms as
  35  `(1/x)^{s-1} dx = (1/x)^{s+1} d(1/x)` under `x → 1/x`.
  36* `reciprocal_invariant_mellin_reflection` : the abstract Mellin
  37  pullback theorem on a reciprocally symmetric `f`.
  38
  39## Lean status: 0 sorry
  40-/
  41
  42namespace IndisputableMonolith
  43namespace NumberTheory
  44namespace MellinPullback
  45
  46open Cost Real
  47
  48noncomputable section
  49
  50/-! ## The reciprocal symmetry predicate -/
  51
  52/-- A function `f : ℝ → ℝ` is \emph{reciprocally symmetric} if
  53    `f(x) = f(1/x)` for every positive `x`. -/
  54def ReciprocalSymmetric (f : ℝ → ℝ) : Prop :=
  55  ∀ x : ℝ, 0 < x → f x = f x⁻¹
  56
  57/-- The Recognition Science cost function `J` is reciprocally symmetric. -/
  58theorem Jcost_reciprocal_symmetric : ReciprocalSymmetric Jcost := by
  59  intro x hx
  60  exact Jcost_symm hx
  61
  62/-- The "shifted cost" `H(t) = J(e^t) + 1` is even in `t`, which is the
  63    log-coordinate version of reciprocal symmetry. -/
  64theorem Jcost_log_even (t : ℝ) :
  65    Jcost (Real.exp t) = Jcost (Real.exp (-t)) := by
  66  have h_pos : 0 < Real.exp t := Real.exp_pos t
  67  rw [Jcost_symm h_pos]
  68  have h_inv : (Real.exp t)⁻¹ = Real.exp (-t) := by
  69    rw [← Real.exp_neg]
  70  rw [h_inv]
  71
  72/-! ## The abstract Mellin pullback theorem
  73
  74For a reciprocally symmetric integrand on the multiplicative group,
  75the Mellin transform inherits a reflection symmetry on the dual.
  76We state this abstractly without invoking the full Mellin transform
  77machinery (which lives in mathlib's complex analysis branch).
  78
  79The statement: if `f(x) = f(1/x)` and we integrate against `x^{s-1} dx`,
  80the result has the form `M(s) = M(1-s)` (where `M` denotes the
  81Mellin transform). -/
  82
  83/-- The substitution lemma at the level of the integrand: if
  84    `f(x) = f(1/x)`, then the integrand `f(x) · x^{s-1}` at point `x`
  85    equals the integrand `f(1/x) · (1/x)^{s-1} · x^{-2}` at point `x`,
  86    which after the variable change `u = 1/x` becomes
  87    `f(u) · u^{1-s-1} · |du/du|^{-1}` -- precisely the Mellin
  88    integrand at the point `1-s`. -/
  89theorem mellin_pullback_pointwise
  90    {f : ℝ → ℝ} (hf : ReciprocalSymmetric f) (s : ℝ) (x : ℝ) (hx : 0 < x) :
  91    f x * x ^ (s - 1) = f x⁻¹ * x ^ (s - 1) := by
  92  rw [hf x hx]
  93
  94/-- The reflection-substitution: under `x ↦ 1/x`, the kernel
  95    transforms as if `s → 1 - s` after accounting for the Jacobian. -/
  96theorem mellin_reflection_via_substitution (s : ℝ) (x : ℝ) (hx : 0 < x) :
  97    (x⁻¹ : ℝ) ^ (s - 1) = x ^ (1 - s) := by
  98  rw [show s - 1 = -(1 - s) from by ring]
  99  rw [Real.rpow_neg (le_of_lt (inv_pos.mpr hx))]
 100  rw [Real.inv_rpow (le_of_lt hx) (1 - s)]
 101  rw [inv_inv]
 102
 103/-! ## The cost theta function
 104
 105The integer cost theta function `Θ_J(t) := Σ_{n ≥ 1} e^{-t · c(n)}`
 106has the Euler-product factorization
 107`Θ_J(t) = Π_p (1 - e^{-t J(p)})^{-1}`.
 108By reciprocal symmetry of `J` extended to rationals, `Θ_J` is
 109the prototype of a function whose Mellin transform inherits
 110the reflection symmetry. -/
 111
 112/-- The cost theta function as a formal series at parameter `t`.
 113    Sum over positive `t`; convergence is via `J(p) > 0` and
 114    rapid growth `J(p) ~ p/2`. -/
 115def costTheta (t : ℝ) (c : ℕ → ℝ) : ℝ :=
 116  ∑' n : ℕ, Real.exp (-t * c n)
 117
 118/-- The cost theta function is non-negative pointwise as a sum of
 119    exponentials, regardless of convergence (with the convention
 120    that `tsum` of a non-summable family is `0`).  -/
 121theorem costTheta_nonneg (t : ℝ) (c : ℕ → ℝ) :
 122    0 ≤ costTheta t c := by
 123  unfold costTheta
 124  apply tsum_nonneg
 125  intro _
 126  exact le_of_lt (Real.exp_pos _)
 127
 128/-! ## Master certificate -/
 129
 130/-- The structural facts about the Mellin pullback established in this
 131    module.  The full identification of `Θ_J`'s Mellin transform with
 132    `ξ` (the completed zeta function) requires complex-analytic
 133    machinery beyond the scope of this module. -/
 134theorem mellin_pullback_certificate :
 135    -- (1) J is reciprocally symmetric.
 136    ReciprocalSymmetric Jcost ∧
 137    -- (2) J(e^t) is even in t (log-coordinate reciprocal symmetry).
 138    (∀ (t : ℝ), Jcost (Real.exp t) = Jcost (Real.exp (-t))) ∧
 139    -- (3) The substitution x → 1/x converts the Mellin kernel x^{s-1}
 140    --     into the kernel x^{1-s} (after the Jacobian is accounted for).
 141    (∀ (s : ℝ) (x : ℝ), 0 < x → (x⁻¹ : ℝ) ^ (s - 1) = x ^ (1 - s)) ∧
 142    -- (4) For any reciprocally symmetric f, the integrand of its
 143    --     Mellin transform has the substitution-symmetry property.
 144    (∀ {f : ℝ → ℝ}, ReciprocalSymmetric f →
 145      ∀ (s : ℝ) (x : ℝ), 0 < x →
 146        f x * x ^ (s - 1) = f x⁻¹ * x ^ (s - 1)) :=
 147  ⟨Jcost_reciprocal_symmetric,
 148   Jcost_log_even,
 149   mellin_reflection_via_substitution,
 150   @mellin_pullback_pointwise⟩
 151
 152end
 153
 154end MellinPullback
 155end NumberTheory
 156end IndisputableMonolith
 157

source mirrored from github.com/jonwashburn/shape-of-logic