Current task: —

← Session 35 — ii′-6-R: Lagarias 6.1 right-tail re-proof (E-032/D-073)

#2108 assistant 2026-08-26 04:51:56.136 UTC · 916→1233 tok open ⤢
thinking (3019 chars)
The residue theorem with S = ∅: - hS : ∀ p ∈ ∅, ... — vacuous ✓ - fHolo : HolomorphicOn f (Rectangle z w \ ∅) = HolomorphicOn f (Rectangle z w) — need HolomorphicOn (= DifferentiableOn in ℂ?) — `fHolo.vanishesOnRectangle subset_rfl` gives RectangleIntegral = 0 ✓. So the S = ∅ path needs: `HolomorphicOn (Jlag n) (Rectangle z w)` — HolomorphicOn is presumably DifferentiableOn ℂ (in Zeta23's usage: HolomorphicOn f s := DifferentiableOn ℂ f s probably — it's from PNT+; line 56 uses fHolo.sub — consistent with DifferentiableOn API). The dog-leg rectangle: z = 3 + T·I, w = X_R + U·I with 3 ≤ X_R, T ≤ U. Need: ∀ s ∈ Rectangle z w, DifferentiableAt ℂ (Jlag n) s — via Jlag_differentiableAt (hs1 : s ≠ 1) (hs0 : riemannZeta s ≠ 0): - s ≠ 1: s.im ≥ T > 0 (we'll take 0 < T as hypothesis) ⟹ s ≠ 1 ✓ (1 has im 0). - riemannZeta s ≠ 0: s.re ≥ 3 > 1 — the Mathlib nonvanishing. Which exact lemma? Let me search for what was used before: session-033 banked "riemannZeta_ne_zero_of_one_le_re takes ONLY re". Let me check its exact signature in Mathlib. DifferentiableOn vs ∀ s ∈ set, DifferentiableAt: DifferentiableOn f s := ∀ x ∈ s, DifferentiableWithinAt ℂ f s x. HolomorphicOn from PNT+ is its own def? Let me check: HolomorphicOn in Zeta23 — grep its def. Probably `def HolomorphicOn (f) (s) := DifferentiableOn ℂ f s`. The vanishesOnRectangle: HolomorphicOn.vanishesOnRectangle : HolomorphicOn f (Rectangle z w) → RectangleIntegral f z w = 0? — it's used as `fHolo.vanishesOnRectangle subset_rfl` where fHolo : HolomorphicOn f (Rectangle \ ∅) and subset_rfl : Rectangle \ ∅ ⊆ Rectangle... hmm wait — at line 43: `fHolo.vanishesOnRectangle subset_rfl` with fHolo : HolomorphicOn f (Rectangle z w \ ↑∅) = HolomorphicOn f (Rectangle z w \ ∅) — and after `simp only [Finset.coe_empty, sdiff_empty] at fHolo` it's HolomorphicOn f (Rectangle z w). Then .vanishesOnRectangle subset_rfl : RectangleIntegral f z w = 0 — the subset argument is Rectangle z w ⊆ Rectangle z w ✓. So vanishesOnRectangle : HolomorphicOn f s → s ⊆ Rectangle z w → RectangleIntegral f z w = 0? or HolomorphicOn f (Rectangle z w) → ... Whatever — the empty case in this very theorem does exactly what I need: instantiate residueTheorem_finset with S = ∅, A = anything, hS vacuous, near vacuous, fHolo : HolomorphicOn (Jlag n) (Rectangle z w). So the core work: `HolomorphicOn (Jlag n) (Rectangle z w)` for the dog-leg rectangle. HolomorphicOn f s — let me check its def and whether there's a `.differentiableOn` or it's literally DifferentiableOn. Then: DifferentiableOn (Jlag n) (Rectangle z w) := ∀ s ∈ Rectangle, DifferentiableWithinAt ℂ (Jlag n) (Rectangle) s — from Jlag_differentiableAt (which gives DifferentiableAt, stronger) via .differentiableWithinAt. Rectangle z w membership: re ∈ uIcc z.re w.re, im ∈ uIcc z.im w.im. With z.re = 3, w.re = X_R, z.im = T, w.im = U: re s ∈ [3, X_R] ⟹ 1 < re s ✓; im s ∈ [T, U], T > 0 ⟹ im s ≠ 0 ⟹ s ≠ 1 ✓. For the ζ-nonvanishing: need the Mathlib lemma name. Let me grep Mathlib for riemannZeta_ne_zero.
The S = ∅ path needs exactly `HolomorphicOn (Jlag n) (Rectangle z w)`. Checking the HolomorphicOn definition and the Mathlib ζ-nonvanishing lemma names.
tool: Bash
input
{
  "command": "cd D:/Python/Quantum/zeta-23-lean && grep -rn \"def HolomorphicOn\\|abbrev HolomorphicOn\" Zeta23/ | head -3; grep -rn \"theorem.*vanishesOnRectangle\\|lemma.*vanishesOnRectangle\" Zeta23/ .lake/packages/mathlib/Mathlib/ 2>/dev/null | head -3",
  "description": "Find HolomorphicOn def and vanishesOnRectangle"
}
tool: Bash
input
{
  "command": "cd D:/Python/Quantum/zeta-23-lean && grep -rn \"riemannZeta_ne_zero_of_one_le_re\\|riemannZeta_ne_zero_of_one_lt_re\" .lake/packages/mathlib/Mathlib/NumberTheory/LSeries/*.lean Zeta23/ 2>/dev/null | head -6",
  "description": "Find the Mathlib zeta-nonvanishing lemma signature"
}
raw content_json (database row)
[{"type":"thinking","thinking":"The residue theorem with S = ∅: \n- hS : ∀ p ∈ ∅, ... — vacuous ✓\n- fHolo : HolomorphicOn f (Rectangle z w \\ ∅) = HolomorphicOn f (Rectangle z w) — need HolomorphicOn (= DifferentiableOn in ℂ?) — `fHolo.vanishesOnRectangle subset_rfl` gives RectangleIntegral = 0 ✓.\n\nSo the S = ∅ path needs: `HolomorphicOn (Jlag n) (Rectangle z w)` — HolomorphicOn is presumably DifferentiableOn ℂ (in Zeta23's usage: HolomorphicOn f s := DifferentiableOn ℂ f s probably — it's from PNT+; line 56 uses fHolo.sub — consistent with DifferentiableOn API).\n\nThe dog-leg rectangle: z = 3 + T·I, w = X_R + U·I with 3 ≤ X_R, T ≤ U. Need:\n∀ s ∈ Rectangle z w, DifferentiableAt ℂ (Jlag n) s — via Jlag_differentiableAt (hs1 : s ≠ 1) (hs0 : riemannZeta s ≠ 0):\n- s ≠ 1: s.im ≥ T > 0 (we'll take 0 < T as hypothesis) ⟹ s ≠ 1 ✓ (1 has im 0).\n- riemannZeta s ≠ 0: s.re ≥ 3 > 1 — the Mathlib nonvanishing. Which exact lemma? Let me search for what was used before: session-033 banked \"riemannZeta_ne_zero_of_one_le_re takes ONLY re\". Let me check its exact signature in Mathlib.\n\nDifferentiableOn vs ∀ s ∈ set, DifferentiableAt: DifferentiableOn f s := ∀ x ∈ s, DifferentiableWithinAt ℂ f s x. HolomorphicOn from PNT+ is its own def? Let me check: HolomorphicOn in Zeta23 — grep its def. Probably `def HolomorphicOn (f) (s) := DifferentiableOn ℂ f s`. The vanishesOnRectangle: HolomorphicOn.vanishesOnRectangle : HolomorphicOn f (Rectangle z w) → RectangleIntegral f z w = 0? — it's used as `fHolo.vanishesOnRectangle subset_rfl` where fHolo : HolomorphicOn f (Rectangle \\ ∅) and subset_rfl : Rectangle \\ ∅ ⊆ Rectangle... hmm wait — at line 43: `fHolo.vanishesOnRectangle subset_rfl` with fHolo : HolomorphicOn f (Rectangle z w \\ ↑∅) = HolomorphicOn f (Rectangle z w \\ ∅) — and after `simp only [Finset.coe_empty, sdiff_empty] at fHolo` it's HolomorphicOn f (Rectangle z w). Then .vanishesOnRectangle subset_rfl : RectangleIntegral f z w = 0 — the subset argument is Rectangle z w ⊆ Rectangle z w ✓. So vanishesOnRectangle : HolomorphicOn f s → s ⊆ Rectangle z w → RectangleIntegral f z w = 0? or HolomorphicOn f (Rectangle z w) → ... Whatever — the empty case in this very theorem does exactly what I need: instantiate residueTheorem_finset with S = ∅, A = anything, hS vacuous, near vacuous, fHolo : HolomorphicOn (Jlag n) (Rectangle z w).\n\nSo the core work: `HolomorphicOn (Jlag n) (Rectangle z w)` for the dog-leg rectangle. HolomorphicOn f s — let me check its def and whether there's a `.differentiableOn` or it's literally DifferentiableOn. Then: DifferentiableOn (Jlag n) (Rectangle z w) := ∀ s ∈ Rectangle, DifferentiableWithinAt ℂ (Jlag n) (Rectangle) s — from Jlag_differentiableAt (which gives DifferentiableAt, stronger) via .differentiableWithinAt.\n\nRectangle z w membership: re ∈ uIcc z.re w.re, im ∈ uIcc z.im w.im. With z.re = 3, w.re = X_R, z.im = T, w.im = U: re s ∈ [3, X_R] ⟹ 1 < re s ✓; im s ∈ [T, U], T > 0 ⟹ im s ≠ 0 ⟹ s ≠ 1 ✓.\n\nFor the ζ-nonvanishing: need the Mathlib lemma name. Let me grep Mathlib for riemannZeta_ne_zero.","signature":""},{"type":"text","text":"The S = ∅ path needs exactly `HolomorphicOn (Jlag n) (Rectangle z w)`. Checking the HolomorphicOn definition and the Mathlib ζ-nonvanishing lemma names."},{"type":"tool_use","id":"Bash_165","name":"Bash","input":{"command":"cd D:/Python/Quantum/zeta-23-lean && grep -rn \"def HolomorphicOn\\|abbrev HolomorphicOn\" Zeta23/ | head -3; grep -rn \"theorem.*vanishesOnRectangle\\|lemma.*vanishesOnRectangle\" Zeta23/ .lake/packages/mathlib/Mathlib/ 2>/dev/null | head -3","description":"Find HolomorphicOn def and vanishesOnRectangle"},"extra_content":null},{"type":"tool_use","id":"Bash_166","name":"Bash","input":{"command":"cd D:/Python/Quantum/zeta-23-lean && grep -rn \"riemannZeta_ne_zero_of_one_le_re\\|riemannZeta_ne_zero_of_one_lt_re\" .lake/packages/mathlib/Mathlib/NumberTheory/LSeries/*.lean Zeta23/ 2>/dev/null | head -6","description":"Find the Mathlib zeta-nonvanishing lemma signature"},"extra_content":null}]