Current task: —

← Session 30 — ii′-5e squeeze capstone + 5f perimeter repair

#1731 assistant 2026-08-24 09:31:44.777 UTC · 929→21672 tok open ⤢
thinking (45458 chars)
The pattern is clear. For ∫_{Ioi 3} log x/x² dx with antiderivative F(x) = −(log x + 1)/x: - `integral_Ioi_of_hasDerivAt_of_tendsto' (hderiv : ∀ x ∈ Ici a, HasDerivAt F (F' x) x) (F'int : IntegrableOn F' (Ioi a)) (hf : Tendsto F atTop (𝓝 m)) : ∫ x in Ioi a, F' x = m − F a`. - F(x) = −(log x + 1)/x: HasDerivAt F (log x / x²) x for x ≥ 3: deriv computation: d/dx[−(log x + 1)/x] = −[(1/x)·x − (log x + 1)·1]/x² = −[1 − log x − 1]/x² = log x/x² ✓. In Lean: HasDerivAt (fun x => −(log x + 1)/x) (log x/x²) x: via (hasDerivAt_log (x≠0)).add_const, .div (hasDerivAt_id'?)... let me build: ((log x + 1)/x)': use HasDerivAt.div (hc : HasDerivAt c c' x) (hd : HasDerivAt d d' x) (hd0 : d x ≠ 0): HasDerivAt (c/d) ((c'·d x − c x·d')/(d x)²): with c = log + 1 (c' = 1/x), d = id (d' = 1): ((1/x)·x − (log x + 1)·1)/x² = (1 − log x − 1)/x² = −log x/x². Then negate: −(c/d) has deriv +log x/x² ✓. So: ```lean have hF : ∀ x ∈ Ici (3:ℝ), HasDerivAt (fun x => -(Real.log x + 1)/x) (Real.log x / x^2) x := by intro x hx have hx0 : x ≠ 0 := by ... (x ≥ 3) have h1 : HasDerivAt (fun x => (Real.log x + 1)/x) (-(Real.log x)/x^2) x := by have h := ((Real.hasDerivAt_log hx0).add_const 1).div (hasDerivAt_id' x) hx0 -- h : HasDerivAt ((log · + 1)/id) ((1/x * x − (log x + 1) * 1)/x²) x convert h using 1 -- or field_simp + ring the derivative value · ext y; rfl? -- the function (log y + 1)/y vs (fun x => (log x + 1)/x) ✓ same · field_simp; ring -- the derivative value exact h1.neg ``` Hmm — the exact forms need care (the div derivative form). Also `hasDerivAt_id'` — in this Mathlib: hasDerivAt_id' (x) : HasDerivAt id (1) x? The banked gotcha from session 033: "hasDerivAt_id' s₀ |>.div_const 2" ✓ exists. - F'int: IntegrableOn (fun x => log x/x²) (Ioi 3): via `integrableOn_Ioi_deriv_of_nonneg'` (used in the example above!): `apply integrableOn_Ioi_deriv_of_nonneg' _ _ tendsto-...` hmm — the example: `integrableOn_Ioi_deriv_of_nonneg' _ _ tendsto_log_atTop.inv_tendsto_atTop.neg` with goals: the hasDerivAt ∀ x ∈ Ioi? and nonneg. So integrableOn_Ioi_deriv_of_nonneg' (a) (F?) (htendsto : Tendsto F atTop (𝓝 0))?: let me infer from the example: `integrableOn_inv_div_log_sq_Ioi` proof: `apply integrableOn_Ioi_deriv_of_nonneg' _ _ tendsto_log_atTop.inv_tendsto_atTop.neg; · intro t _; convert! (hasDerivAt_inv_log ...).neg using 1; field; · intro t _; positivity`. So the lemma: integrableOn_Ioi_deriv_of_nonneg' (a : ℝ) (F : ℝ → ℝ) (hlim : Tendsto F atTop (𝓝 0))? (hderiv : ∀ x ∈ Ioi a, HasDerivAt F (F' x) x) (hnonneg : ∀ x ∈ Ioi a, 0 ≤ F' x) : IntegrableOn F' (Ioi a). I'll mimic exactly. - Tendsto F atTop (𝓝 0): F = −(log x + 1)/x → 0: (log x + 1)/x → 0: from `Real.tendsto_log_div_atTop`? hmm: log x/x → 0 is `Real.tendsto_log_div_atTop : Tendsto (fun x => log x / x) atTop (𝓝 0)` — exists? I believe `Real.tendsto_log_div_atTop` hmm or `tendsto_pow_log_div_...`? There is `Real.tendsto_log_div_atTop`? In recent Mathlib: `Real.tendsto_log_div_atTop : Tendsto (fun x => Real.log x / x) atTop (𝓝 0)` — I think it exists (in Analysis/SpecialFunctions/Log/Deriv.lean or Limits). And 1/x → 0. So (log x + 1)/x = log x/x + 1/x → 0. F = −that → 0: .neg. - Then ∫ Ioi 3 = m − F(3) = 0 − (−(log 3 + 1)/3) = (log 3 + 1)/3. - The antitone condition: f = log x/x² antitone on Ici 3: `AntitoneOn f (Ici 3)`: via deriv ≤ 0: `antitoneOn_of_deriv_nonpos`? Signature: antitoneOn_of_deriv_nonpos (hD : Convex ℝ D) (hf : ContinuousOn f D) (hf' : DifferentiableOn ℝ f (interior D)) (hder : ∀ x ∈ interior D, deriv f x ≤ 0) : AntitoneOn f D. For D = Ici 3 (convex, interior = Ioi 3): f' (x) = (1 − 2 log x)/x³ ≤ 0 for x > 3 (log x > 1.09 > 1/2 ✓). deriv f x: f = fun x => log x / x^2: deriv via rules; then ≤ 0. ~40 lines. - The nonneg: log x/x² ≥ 0 for x ≥ 3 ✓ (log 3 > 0). Then the assembly: dirichletC2 = ∑' n, ‖term n‖ = ∑' n, g(n) where g(0) = 0, g(n) = Λ n/n²: - step 1: show ‖LSeries.term Λ (2:ℂ) n‖ = (if n = 0 then (0:ℝ) else Λ n / n²): per n: cases n = 0 (term = 0, norm 0 ✓) / n ≥ 1: term = Λ n/(n:ℂ)²... ‖(Λ n : ℂ)/((n:ℂ)^(2:ℂ))‖ = Λ n / n²: norm_div + the cpow norm + the Λ-norm. Hmm — (n:ℂ)^(2:ℂ) is cpow. ‖(n:ℂ)^(2:ℂ)‖ = ‖(n:ℂ)‖^((2:ℂ).re)·... = n² via Complex.norm_cpow_eq_rpow_re_of_pos? For x = (n:ℝ) > 0: ‖(x:ℂ)^s‖ = x^(s.re) hmm the lemma name: `Complex.norm_cpow_eq_rpow_re_of_pos (hx : 0 < x) (s : ℂ) : ‖(x : ℂ) ^ s‖ = x ^ s.re`? Let me check: there's `Complex.norm_cpow_eq_rpow_re_of_pos` and `norm_cpow_eq_rpow_re_of_nonneg`? For s = 2: (n:ℝ)^(2:ℝ)... rpow vs pow: x^(2:ℝ) = x² via `Real.rpow_two`? Real.rpow_natCast: x^((2:ℕ):ℝ) = x^2. So ‖(n:ℂ)^(2:ℂ)‖ = ((n:ℝ)^(2:ℝ)) — need (2:ℂ).re = 2 and the cast (n:ℂ) = ((n:ℝ):ℂ)... Then (n:ℝ)^(2:ℝ) = n² (rpow_two: x^(2:ℝ) = x*x or rpow_natCast). Manageable. - step 2: ∑' g = g(0) + ... head/tail split: Σ' n, g n = Σ_{n<4} g n + Σ' n, g (n+4) via sum_add_tsum_nat_add (needs Summable g). Summable g: from Λ/n² ≤ log n/n² and the integral-test summability... circular-ish. Alternative: g summable from the LSeries absSummable (the Λ LSeries is abs-summable for re > 1 — `ArithmeticFunction.LSeriesSummable...`? LiCircleBound's norm_logDeriv_zeta_le_dirichlet used the summability — let me check what it used: `LSeries.absSummable...`. The term-norm series IS dirichletC2's summand — its summability: from `ArithmeticFunction.vonMangoldt` LSeries absSummable at 2: there should be `ArithmeticFunction.LSeries_vonMangoldt_absSummable`? or LSeriesSummable_vonMangoldt (hs : 1 < re s). Then dirichletC2's summand = |term| — summable = abs-summable ✓. So Summable g via that. - step 3: g n ≤ log n/n² for n ≥ 1 (vonMangoldt_le_log / n²) and = 0 at n = 0 (log 1 = 0 anyway... g 0 = 0 and log 1/1 = 0 ✓ so g n ≤ log n/n² for all n with log 0/0? n=0: log 0/0 — division by zero = 0 in Lean (1/0 = 0): log 0 = 0, 0/0 = 0 — and g 0 = 0 ✓ consistent). - step 4: h : Summable (fun n => log n / n²)? For tsum_le_tsum I need both summable. The log n/n² summability: via the integral test (AntitoneOn.summable_of_integrableOn_Ioi or similar) with the integrable from the FTC argument. OK. - step 5: Σ' g ≤ Σ' (log n/n²) [tsum_le_tsum pointwise] = head(4) + tail ≤ [(log 2)/4 + (log 3)/9] + (log 3 + 1)/3 ≤ 0.995 — the final numeric: log 2 ≤ 0.6932 (Real.log_two_lt_d9 : log 2 < 0.6931471808), log 3 ≤ 1.0987 (Real.log_three_lt? hmm — log 3 < 1.09861228866811? Mathlib has Real.log_... for 3? Not sure. log 3 bounds: maybe not in Mathlib. Can derive: log 3 = log 2 + log(3/2) — or via Real.log_le_sub_one_of_pos: log 3 ≤ 3−1 = 2 — too big. Hmm: need log 3 ≤ 1.0987-ish. Route: log 3 = −log(1/3) and... or log 3 ≤ (3−1)/√3·... the standard Mathlib-friendly: Real.log_le_sub_one_of_pos gives log x ≤ x − 1 — too weak. Better: log x ≤ √x − 1/√x (x ≥ 1)? There's `Real.log_le_sub_one_of_pos` only. Hmm — `Real.log_le_sub_one_of_pos`, `Real.log_le_self`? For log 3 ≤ 1.0987: 3 ≤ e^1.0987 — via Real.exp partial sums: e^1.1 ≥ Σ_{k≤4} 1.1^k/k! = 1 + 1.1 + 0.605 + 0.2218 + 0.0610 = 2.9878 < 3 — not enough; e^1.101: ~2.99... e^1.0989 ≥ ... this needs ~5-6 terms. There might be a cleaner bound: `Real.log_three_lt_d9`? Let me check. Actually — hmm, the budget: piece 1 ≤ 1.01; my computed total 0.9949 — the room is 0.015. If log 3's upper bound is sloppy (say ≤ 1.10), fine. log 3 ≤ 1.10 ⟸ 3 ≤ e^{1.10}: e^{1.1} ≥ partial sum to k=5: 1+1.1+0.605+0.22183+0.061004+0.013421 = 3.00126 ≥ 3 ✓ (Real.sum_le_exp_of_nonneg — used in LiBasePoints!). So log 3 ≤ 1.1 via: Real.log_le_iff... `Real.log_le_iff_le_exp`? There's Real.log_le_iff_le_exp (hx : 0 < x)? or le_exp: `Real.log_le_iff_le_exp : 0 < x → (log x ≤ y ↔ x ≤ exp y)`? Something like Real.log_le_iff_le_exp. Then 3 ≤ exp 1.1 via the partial sum (Real.sum_le_exp_of_nonneg (show 0 ≤ (1.1:ℝ)) (n := 5) : Σ_{k∈range 5} 1.1^k/k! ≤ exp 1.1) and the rational computation Σ = 3.00126... ≥ 3 by norm_num. OK — doable, ~20 lines. Similarly log 2 ≤ 0.6932 via Real.log_two_lt_d9 (exists ✓ used in project). So piece 1 total: log2/4 + log3/9 + (log3+1)/3 ≤ 0.6932/4 + 1.1/9 + (1.1+1)/3 = 0.17330 + 0.12222 + 0.70 = 0.99552 ≤ 0.9955. And budget: 1.01? Hmm — actually what's the real budget? Let me recompute the fold: the D-069 assembly: piece1 + piece2 + piece3 + pieces45 + piece6 ≤ 10.5L + 48 with the C0hat-containing pieces: piece2 ≤ 0.6L + 0.886LL + 2.7; piece3 ≤ 12.7279·C0hat(t+1) + 7.00 = 12.7279·(0.433L' + 0.886LL' + 2.9) + 7.00 where L' = log(t+3) ≤ L + 1/12·... hmm — let me be careful about L' vs L: piece 3 uses C0hat(t+1) = 0.433·log(t+3) + 0.886·loglog(t+3) + 2.9. log(t+3) ≤ log(t+2) + 1/(t+2)·... ≤ L + 1/12 (t ≥ 10: log(t+3) − log(t+2) = log(1 + 1/(t+2)) ≤ 1/(t+2) ≤ 1/12 ✓). Similarly LL(t+3) ≤ LL + (1/12)/L·... ≤ LL + 1/(12·2.48) ≤ LL + 0.034. So piece 3 ≤ 12.7279·(0.433(L+1/12) + 0.886(LL+0.034) + 2.9) + 7.00 = 12.7279·(0.433L + 0.886LL + 2.9 + 0.433/12 + 0.886·0.034) + 7.00 = 12.7279·(0.433L + 0.886LL + 2.9 + 0.0361 + 0.0301) + 7.00 = 12.7279·(0.433L + 0.886LL + 2.9662) + 7.00 = 5.5112L + 11.2769LL + 37.756 + 7.00 = 5.5112L + 11.2769LL + 44.756. Total: piece1 (≤ 1.01 const) + piece2 (0.6L + 0.886LL + 2.7) + piece3 (5.5112L + 11.2769LL + 44.756) + pieces45 (0.09) + piece6 (0.30): L-coeff: 0.6 + 5.5112 = 6.1112; LL: 0.886 + 11.2769 = 12.1629; const: 1.01 + 2.7 + 44.756 + 0.09 + 0.30 = 48.856?!? — over 48!! Wait: 1.01 + 2.7 = 3.71; +44.756 = 48.466; +0.09 = 48.556; +0.30 = 48.856. That's OVER 48 by 0.856!! Hmm — but wait, my piece-3 constant estimate: 12.7279·2.9662 = 37.756 — but D-069 §3 said piece3 ≤ 12.7279·C₀ + 7.00 with C₀ = C0hat(t+1)... the C0hat constant 2.9 × 12.7279 = 36.91 and the L'/L conversion added 12.7279·0.0662 = 0.843. Total const: 36.91 + 7.00 + 0.843 = 44.75. Plus pieces 1,2,4,5,6 constants: 1.01 + 2.7 + 0.09 + 0.30 = 4.10. Grand total: 48.86. Over by 0.86. Hmm!! My D-069 estimate said 47.6 — because I used the L' = L approximation without the +1/12 conversion slack. The honest conversion costs 0.84. So the current budget breaks by ~0.86. Can I recover? Options: (a) The L'/L conversion: instead of converting log(t+3) ≤ log(t+2) + 1/12, keep piece 3 in terms of log(t+3) and make the FINAL target 10.5·log(|t|+3)?? — no, the target is baked: 10.5·log(|t|+2) + 48. (b) Sharpen piece 3's constants: the tail 0.55 and the C₀(2t+1) ≤ C₀+0.55: the tail Σ_{k>t}: at t ≥ 10: ≤ 0.433·(log10+1)/10 + (2.9+0.886·LL(3t))/11·... my 0.55 estimate: 0.433·0.4302 + 0.886·1.206·0.0909 + 0.2636 = 0.186+0.097+0.264 = 0.547. Hmm. The +0.55 for C0hat(2t+1) − C0hat(t+1): 0.433·log((2t+3)/(t+3)) + 0.886·(LL(2t+3)−LL(t+3)): log((2t+3)/(t+3)) ≤ log 2·(1 − ...) ≤ 0.693·(t+3...)/(t+2)... = log(2 − 3/(t+3)) ≤ log 2 − 3/(2(t+3))·... ≈ 0.686 at t=10 decreasing to 0.693. So 0.433·0.686 = 0.297; LL-diff: LL(2t+3) − LL(t+3) = log(log(2t+3)/log(t+3)) ≈ log(1 + 0.686/2.56) ≈ 0.236 at t=10 decreasing; 0.886·0.236 = 0.209. Total 0.506 ≤ 0.55 ✓ tight-ish. (c) Reduce piece 1 to the true Z₂ = 0.57: certified via partial sums — in Lean that's the heavy computation. The difference: 0.995 − 0.57 = 0.43 savings. Still over by 0.43. (d) The pinch: actually — WAIT. The binding constraint isn't the constant alone: the target is 10.5L + 48 and the assembly is 6.111L + 12.163LL + 48.86. Need 12.163·LL − 4.389·L ≤ −0.86+... i.e. 12.163LL − 4.389L + 48.86 ≤ 48 ⟺ 12.163LL − 4.389L ≤ −0.86?? — but at the pinch (L = 2.77) the LHS is +0.234 > 0. So it FAILS — need the constant ≤ 48 − 0.234 = 47.77. Currently 48.86. Must save 1.09. (e) Sharpen piece 6: 0.30 → the true ψ-diff bound is ≈ 0.23 (D-056) — save 0.07. (f) Sharpen piece 3's leading: use the per-interval sharpened term 4.5/(k√(1+k²)) instead of 4.5√2/(k(k+1)): the per-side interval-sum constant 1.3227 vs √2·1 = 1.4142: saves (1.4142−1.3227)·2·C₀ = 0.183·C₀·... wait: piece 3 = 4.5·Σ count·term: with term ≤ 1/(k√(1+k²)): per side Σ = 1.3227·count-ish: total 4.5·[1.3227·(C₀ + C₀(2t+1)) + tail] = 4.5·[1.3227·(2C₀ + 0.55) + 0.547] = 4.5·[2.6454·C₀ + 0.7275 + 0.547] = 11.904·C₀ + 5.735. vs previous 12.7279·C₀ + 7.00. C₀ ≈ 0.433L' + 0.886LL' + 2.9 + conversion: 11.904·C₀ + 5.735 = 11.904·(0.433L + 0.886LL + 2.9662) + 5.735 = 5.154L + 10.547LL + 35.310 + 5.735 = 5.154L + 10.547LL + 41.045. New totals: L: 0.6 + 5.154 = 5.754; LL: 0.886 + 10.547 = 11.433; const: 1.01 + 2.7 + 41.045 + 0.09 + 0.30 = 45.145. Constraint: 11.433·LL − (10.5−5.754)·L + 45.145 ≤ 48 ⟺ 11.433·LL − 4.746·L ≤ 2.855. At the pinch L* = 11.433/4.746 = 2.409 (below log 12 = 2.485!): for L ≥ 2.485 the LHS is decreasing (deriv 11.433/L − 4.746 < 0 for L > 2.409) ⟹ max at L = 2.485: 11.433·0.9103 − 4.746·2.485 = 10.407 − 11.794 = −1.39 ≤ 2.855 ✓✓ HUGE margin. So with the sharpened per-interval term, the assembly fits 10.5/48 comfortably. But the sharpened term 1/(k√(1+k²)) needs the sum Σ 1/(k√(1+k²)) ≤ 1.3227 in Lean — a non-telescoping series bound (integral comparison again: Σ_{k≥1} 1/(k√(1+k²)) ≤ 1/√2 + ∫₁^∞ dx/(x√(1+x²))... ∫ dx/(x√(1+x²)) = ... substitution u = √(1+x²): = log(√(1+x²)−1) − log x = −log(√(1+x²)/x + ...) hmm: ∫ dx/(x√(1+x²)) = −arsinh(1/x)·... = log(x/(1+√(1+x²))). At ∞: log(1) = 0... the antiderivative is −log((1+√(1+x²))/x). Not in Mathlib directly — provable via hasDerivAt of that composition (sqrt chain) — ~30 lines. The value at 1: −log((1+√2)) = −log(2.414) = −0.8814; at ∞ → 0: integral = 0.8814. Total Σ ≤ 0.7071 + 0.8814 = 1.5885?? — that's the ∫ from 1 — hmm: Σ_{k≥1} ≤ f(1) + ∫₁^∞ f = 0.7071 + 0.8814 = 1.5885 — WORSE than 1.3227 (the integral from 1 is lossy). Take more head terms: f(1)+f(2)+f(3) + ∫₃^∞: 0.7071+0.2236+0.1054 + [−log((1+√(1+x²))/x)]₃^∞ = 1.0361 + (0 − (−log((1+√10)/3))) = 1.0361 + log(4.1623/3) = 1.0361 + log(1.3874) = 1.0361 + 0.3273 = 1.3634. Still worse than 1.3227 — the TRUE sum ≈ 1.3227 (computed numerically). The integral route converges slowly to the truth; more head: f(1..5) + ∫₅^∞: 1.1966 + log((1+√26)/5) = 1.1966 + log(6.099/5) = 1.1966 + 0.1985 = 1.3951?? worse?? no wait: ∫₅^∞ = −log((1+√(1+x²))/x)|₅→∞: at ∞: −log(1) = 0⁻... the antiderivative F(x) = −log((1+√(1+x²))/x): F(5) = −log((1+√26)/5) = −log(6.0990/5) = −log(1.2198) = −0.19866; F(∞) = −log(1) = 0. ∫₅^∞ f = F(∞) − F(5) = 0.19866. Head f(1)+...+f(4) = 0.7071+0.2236+0.1054+0.0606 = 1.0967. Total ≤ 1.0967 + 0.1987 = 1.2954 ≤ 1.3227?? hmm wait that's the sum from k=5: Σ_{k≥5} f(k) ≤ f(5) + ∫₅^∞ f = 0.0392 + 0.1987 = 0.2379; total Σ_{k≥1} ≤ 1.0967 + 0.2379 = 1.3346. Hmm — 1.3346 vs the telescoping √2-form's 1.4142. Savings: (1.4142 − 1.3346)·2·C₀·4.5 = 0.0796·2·4.5·C₀ = 0.7164·C₀ ≈ 0.7164·(0.433L+0.886LL+2.97) — that's 0.31L + 0.63LL + 2.13 — hmm wait that's a SAVING so the piece-3 total becomes 12.7279C₀ + 7.00 − 0.716C₀ = 12.01C₀ + 7.00. Let me recompute totals with Σ-const = 1.3346 (call it S₃): piece 3 = 4.5·[S₃·C₀ + S₃·(C₀+0.55) + 0.547] = 4.5·[2·S₃·C₀ + 0.55·S₃ + 0.547] = 9·S₃·C₀ + 4.5·(0.734+0.547) = 9·1.3346·C₀ + 4.5·1.281 = 12.0114·C₀ + 5.765. Totals: L: 0.6 + 12.0114·0.433 = 0.6 + 5.201 = 5.801; LL: 0.886 + 12.0114·0.886 = 11.528; const: 1.01 + 2.7 + (12.0114·2.9662 + 5.765) + 0.09 + 0.30 = 1.01+2.7+35.633+5.765+0.09+0.30 = 45.498. Constraint: 11.528·LL − 4.699·L ≤ 48 − 45.498 = 2.502. Pinch: L* = 11.528/4.699 = 2.453 < 2.485 ⟹ max at L = 2.485: 11.528·0.9103 − 4.699·2.485 = 10.494 − 11.678 = −1.18 ≤ 2.502 ✓ EASY. Hmm wait — but hold on: the per-interval sharpened term — the far sum's interval split: interval k gets term ≤ 4.5/(x√(1+x²)) ≤ 4.5/(k√(1+k²))·... wait the term is 4.5·|s₀−s|-normalized... let me recheck: the term is ‖(s₀−s)/((s−ρ)(s₀−ρ))‖ ≤ 4.5/(x·√(1+x²)) with x = |t−γ| (|s−ρ| ≥ x, |s₀−ρ| ≥ √(1+x²)). On the interval x ∈ [k, k+1): ≤ 4.5/(k√(1+k²)) ✓. The interval sum: Σ_k count_k·4.5/(k√(1+k²)) with count_k ≤ C₀ (left) / C₀(2t+1) (right) — monotone ✓. So piece 3 ≤ 4.5·[C₀·Σ_left + C₀(2t+1)·Σ_right + tail] where Σ_left, Σ_right ≤ Σ_{k≥1} 1/(k√(1+k²)) ≤ 1.3346 — hmm but the tail (k > t): the per-interval count C₀(t+k+1) GROWS with k — can't bound by C₀(2t+1) for k > t. D-056 handled the k > t tail separately: Σ_{k>t} count·term ≤ Σ_{k>t} C₀(t+k+1)/(k√(1+k²))·4.5 ≤ 4.5·Σ C₀(2k+1)·(1/k²-ish)... the tail ≤ 4.5·[0.433·((log 10+1)/10) + ...] ≈ 4.5·0.547/4.5 — wait I had tail ≤ 0.55 for the 4.5√2-included form. Let me redo: tail T := Σ_{k>t} C0hat(t+k+1)·4.5/(k√(1+k²)) ≤ 4.5·Σ_{k>t} [0.433·log(3k) + 0.886·loglog(3k) + 2.9]/k²·... ≤ 4.5·[0.433·Σ_{k>t} log(3k)/k² + 0.886·LL(3t)·Σ 1/k² + 2.9·Σ 1/k²]: Σ_{k>t} 1/k² ≤ 1/(t−1)·... ≤ 1/9 (t ≥ 10: Σ_{k≥11} 1/k² ≤ ∫₁₀^∞ dx/x² = 0.1 — hmm: Σ_{k≥11} 1/k² ≤ 1/121 + ∫₁₁^∞ = 0.0083 + 0.0909 = 0.0992). Σ_{k≥11} log(3k)/k² = log 3·Σ1/k² + Σ log k/k² ≤ 1.0986·0.0992 + 0.3303 = 0.4393 (the Σ log k/k² ≤ (log 10+1)/10 = 0.3303 from before). So tail ≤ 4.5·[0.433·0.4393 + 0.886·loglog(33)·0.0992 + 2.9·0.0992] = 4.5·[0.1902 + 0.886·1.1935·0.0992 + 0.2877] = 4.5·[0.1902 + 0.1049 + 0.2877] = 4.5·0.5828 = 2.6226?!? Hmm that's bigger than the 0.55 I had — because I previously factored 4.5 OUT. Let me redo: the tail bound 0.55 was for the FORM without the 4.5√2 factor? D-056's "the k > t tail ≤ C₀(2t)/(t+1) + 0.433/t ≤ 0.53" — that's INSIDE the 4.5√2 multiplier (piece 3 = 4.5√2·[... + 0.53]). So in the sharpened form: piece 3 = 4.5·[C₀·S₃ + (C₀+0.55)·S₃ + tail'] where tail' = Σ_{k>t} count_k/(k√(1+k²)) ≤ Σ_{k>t} C0hat(t+k+1)/k² ≤ 0.433·0.4393 + 0.886·1.1935·0.0992 + 2.9·0.0992 = 0.5828/4.5·4.5 hmm: tail' ≤ 0.1902+0.1049+0.2877 = 0.5828. So piece 3 ≤ 4.5·[S₃·C₀ + S₃·C₀ + 0.55·S₃ + 0.5828] = 4.5·[2·1.3346·C₀ + 0.734 + 0.5828] = 12.0114·C₀ + 4.5·1.3168 = 12.0114·C₀ + 5.926. OK consistent-ish with before. So the full honest totals: L: 5.801; LL: 11.528; const: 45.5; need 11.528·LL − 4.699·L ≤ 2.5 for L ≥ 2.485 — max at boundary L = 2.485: −1.18 ≤ 2.5 ✓ margin 3.7. And the t=10 endpoint value: full bound at t=10: 5.801·2.485 + 11.528·0.9103 + 45.5 = 14.42 + 10.49 + 45.5 = 70.41 ≤ 10.5·2.485+48 = 74.09 ✓ margin 3.7. At t = 10¹²: 5.801·27.63 + 11.528·3.319 + 45.5 = 160.3+38.3+45.5 = 244.1 ≤ 10.5·27.63+48 = 338.1 ✓ margin 94. GREAT — the sharpened assembly has robust margins everywhere (the pinch dissolves: the max of 11.528·LL − 4.699·L over L ≥ 2.485 is at the boundary and equals −1.18). Hmm wait — but the pinch region t ≈ 13: L = log(15.15) = 2.718: 11.528·LL(2.718)=11.528·1.0 = 11.528... at L = 2.718: 11.528·1.0 − 4.699·2.718 = 11.528 − 12.772 = −1.244 ≤ 2.5 ✓. Yes fine (the function 11.528·log L − 4.699·L is decreasing throughout L ≥ 2.485 since the critical point 2.453 < 2.485 ✓). BUT the sharpened interval sum Σ 1/(k√(1+k²)) ≤ 1.3346 needs: (i) the antiderivative of 1/(x√(1+x²)) — −log((1+√(1+x²))/x) — a sqrt-chain hasDerivAt (~30 lines, sqrt derivatives exist: Real.hasDerivAt_sqrt), (ii) the Ioi FTC again, (iii) the antitone condition. Compare: the telescoping form Σ 1/(k(k+1)) = 1 is FREE-ish in Lean? 1/(k(k+1)) = 1/k − 1/(k+1) telescopes: `Summable` + tsum = 1 — Mathlib probably has this or it's 20 lines. The √2-form piece 3 (12.7279·C₀ + 7.06) breaks the budget by ~0.86–1.09; the sharpened form (12.011·C₀ + 5.93) fits with margin 3.7. The extra cost: the 1/(k√(1+k²)) sum bound (~80-100 lines of integral plumbing). Worth it — it keeps the baked constants. Hmm — wait, actually, alternatively: keep the telescoping form but take the FIRST interval exactly: interval k=1: term ≤ 4.5/(1·√2) = 3.182 (both forms agree at k=1). The √2-form per-interval bound is 4.5√2/(k(k+1)): at k=1: 3.182 ✓ same; k=2: √2-form 4.5√2/6 = 1.0607 vs sharp 4.5/(2√5) = 1.0062... The total per-side: √2-form Σ = 4.5√2·1 = 6.364; sharp: 4.5·1.3346 = 6.006. Difference per side: 0.358; both sides + tail: ~0.72·C₀-independent... hmm the earlier computation: the difference between the two piece-3 totals: (12.7279 − 12.0114)·C₀ + (7.06 − 5.93) = 0.7165·C₀ + 1.13 — at C₀ ≈ 5 (t=10): 4.7 — yes that's the budget-breaking amount. OK so the sharp sum is needed. Alternatively — a MIDDLE route: avoid the antiderivative entirely by splitting at k = 1: interval k=1 term ≤ 4.5/√2; intervals k ≥ 2: term ≤ 4.5√2/(k(k+1))·(something)... hmm the ratio sharp/√2-form at k: [4.5/(k√(1+k²))]/[4.5√2/(k(k+1))] = (k+1)/(√2·√(1+k²)) = (k+1)/(√(2+2k²)): at k=2: 3/√10 = 0.949; k=3: 4/√20 = 0.894; k→∞: → 1/√2 = 0.707. The total ratio: ~0.94. The savings from the √2-form: 6.364·(1 − 0.94) per side... not clean. The k=1-exact trick: piece3 ≤ count₁·4.5/√2 + Σ_{k≥2} count·4.5√2/(k(k+1)) ≤ C₀·[4.5/√2 + 4.5√2·(1 − 1/2)]·2 + ... = C₀·[3.182 + 4.5√2·0.5]·2 = C₀·[3.182+3.182]·2 — no savings (4.5√2·(Σ_{k≥2} 1/(k(k+1))) = 4.5√2·(1/2) = 3.182 and the k=1 sharp 3.182 — equal!). Because the √2-form is EXACT at k=1 (3.182 = 3.182) — the slack starts at k=2. So splitting k=1 gives nothing. The slack is distributed. So the sharp sum is genuinely needed. OK — the integral plumbing for 1/(x√(1+x²)) is in. Actually hmm — wait, one more alternative: Σ_{k≥1} 1/(k√(1+k²)) ≤ Σ 1/k^{3/2}·(k/√(1+k²))... no: 1/(k√(1+k²)) ≤ 1/k² ⟹ Σ ≤ π²/6 = 1.645 — too big. The antiderivative route it is. OR — hmm, actually: 1/(k√(1+k²)) ≤ 1/(k(k+1))·(k+1)/√(1+k²) and (k+1)/√(1+k²) ≤ √(2(k+1)²/2)... (k+1)² ≤ 2(k²+1) ⟺ k²+2k+1 ≤ 2k²+2 ⟺ 0 ≤ k²−2k+1 = (k−1)² ✓ so (k+1)/√(1+k²) ≤ √2 — that's the D-056 form (consistent). The sharp form needs the integral. Fine. Hmm, wait — actually, let me reconsider. Maybe there's an even simpler decomposition avoiding the antiderivative: Σ_{k≥1} 1/(k√(1+k²)): substitute the integral test with f(x) = 1/(x·(1+x²)^{1/2}) — antitone on [1,∞) (product of antitone positive functions ✓ NO deriv needed! 1/x antitone, 1/√(1+x²) antitone — product of positive antitone is antitone ✓). The integral ∫₁^N dx/(x√(1+x²)): substitute x = 1/u? dx/(x√(1+x²)): u = √(1+x²) ⟹ u du = x dx... x² = u²−1: ∫ dx/(x√(1+x²)) = ∫ (x dx)/(x²√(1+x²)) = ∫ du/(u² − 1) = (1/2)log((u−1)/(u+1)). So the antiderivative = (1/2)·log((√(1+x²)−1)/(√(1+x²)+1)) = log((√(1+x²)−1)/x)·... = log(x) − log(1+√(1+x²))·... let me verify: (1/2)log((u−1)/(u+1)) with u = √(1+x²): (u−1)/(u+1) = (u−1)²/(u²−1) = (u−1)²/x²: (1/2)log((u−1)²/x²) = log((u−1)/x) = log((√(1+x²)−1)/x). And (√(1+x²)−1)/x = x/(√(1+x²)+1) ✓. So F(x) = log(x/(1+√(1+x²))). F'(x) = 1/(x√(1+x²)) ✓. In Lean: hasDerivAt of log(x/(1+√(1+x²))): log-deriv of the ratio: deriv log(g x) = g'/g — g(x) = x/(1+√(1+x²)): g'/g = 1/x − (√')/(1+√): √'(1+x²) = x/√(1+x²): so g'/g = 1/x − (x/√(1+x²))/(1+√(1+x²)) = 1/x − x/(√(1+x²)(1+√(1+x²))) = [√(1+x²)(1+√(1+x²)) − x²]/(x·√(1+x²)(1+√(1+x²))) = [√(1+x²) + 1+x² − x²]/(x·√(1+x²)(1+√)) = (√(1+x²)+1)/(x·√(1+x²)(1+√)) = 1/(x√(1+x²)) ✓. In Lean this is a `HasDerivAt.log` + div/sqrt chain + a field_simp/ring_nf algebraic identity — maybe 40 lines. F(∞) : x/(1+√(1+x²)) → 1 ⟹ F → log 1 = 0. The limit: x/(1+√(1+x²)) → 1 as x → ∞: √(1+x²) ~ x: ratio ~ x/(1+x) → 1: needs a tendsto argument (~20 lines: √(1+x²)/x → 1 via sqrt(1/x²+1) → 1...). OK. This is all doable but it's a lot of calculus plumbing. The honest assessment: 5f-i's remaining piece 1 + piece 6's digamma + piece 3's interval machine + assembly is ~2 sessions of Lean. Tonight I've done the identity + pieces 2/4/5. Given it's ~1:40 AM, let me finish piece 1 (dirichletC2 ≤ 0.995 — self-contained ~100 lines) and then wrap up the session cleanly. Actually — piece 1 needs: the term-norm form, the summabilities, the head/tail split, the tail integral ∫₃^∞ log x/x² = (log 3+1)/3 (antiderivative −(log x+1)/x — no sqrt! just log and div), the antitone condition, and the numeric fold with log 2/log 3 bounds. That's tractable tonight. Hmm — wait, for piece 1, do I even need the antitone/integral machinery? Alternative: Σ_{n≥4} log n/n² — bound by a DIRECT comparison with a telescoping series? log n/n² vs 1/n^{3/2}: log n ≤ (2/e)·√n ⟹ log n/n² ≤ (2/e)·n^{−3/2}: Σ_{n≥4} n^{−3/2} ≤ ∫₃^∞ x^{−3/2} dx = 2·3^{−1/2} = 1.1547: total ≤ (2/e)·1.1547 = 0.736·1.1547 = 0.8497 — vs the sharp integral 0.6995. Total piece 1: 0.1733 + 0.1221 + 0.8497 = 1.145 > 1.01 budget ✗. Hmm — but wait: with the sharpened piece 3, the constant budget changed: total const was 45.498 with piece 1 = 1.01; if piece 1 = 1.145: total = 45.633 vs the available 48 − (max pinch −1.18)... the constraint: const ≤ 48 − (11.528·LL − 4.699·L)_max = 48 − (−1.18) = 49.18. So the binding constraint is const ≤ 49.18!! Piece 1 = 1.145 gives 45.63 ≤ 49.18 ✓✓ EASY. Oh nice — with the sharpened piece 3, the pinch dissolved (the LL-L function is DECREASING on L ≥ 2.485, max at the boundary = −1.18), so the constant budget is a generous 49.18, and piece 1 can be as big as 1.145 + slack. Then the crude n^{−3/2} comparison suffices for piece 1 — no log integral needed! Let me double-check the Σ_{n≥4} n^{−3/2} ≤ 2/√3 without an integral: hmm — n^{−3/2} ≤ ∫_{n−1}^{n} x^{−3/2} dx (antitone) — still an integral comparison. Simpler: Σ_{n≥4} n^{−3/2} ≤ Σ_{n≥4} 1/(n^{1/2}·(n−1)·n)... hmm. Alternative telescoping: n^{−3/2} ≤ 2(1/√(n−1) − 1/√n)·something? 1/√(n−1) − 1/√n = (√n − √(n−1))/(√n√(n−1)) = 1/(√n√(n−1)(√n+√(n−1))) ≥ 1/(√n·√n·2√n) = 1/(2 n^{3/2})·(√n/√(n−1})... ≈ 1/(2n^{3/2})·(1+1/(2n))·... So n^{−3/2} ≤ 2·(1/√(n−1) − 1/√n)·(√(n−1)/√n) ≤ 2·(1/√(n−1) − 1/√n) — since √(n−1)/√n ≤ 1... wait direction: n^{−3/2} vs 2(Δ): Δ = 1/(√n√(n−1)(√n+√(n−1))) ≥ 1/(√n·√n·2√n) = 1/(2n^{3/2}) ✓ (since √(n−1) ≤ √n and √n+√(n−1) ≤ 2√n). So n^{−3/2} ≤ 2Δ = 2(1/√(n−1) − 1/√n) ✓ TELESCOPING! Σ_{n≥4} n^{−3/2} ≤ 2·(1/√3) = 1.1547 ✓. And the telescoping sum ∑' (1/√(n−1) − 1/√n) from n=4: = 1/√3 (limit) — in Lean: summable via the telescope + tsum of a telescoping difference = first term: there's `Summable` machinery for differences: ∑' (f(n+1) − f(n)) = ... hmm: Σ_{n≥4} (1/√(n−1) − 1/√n) = Σ_{m≥3} (1/√m − 1/√(m+1)) = 1/√3 (since 1/√m → 0). In Lean: the telescoping tsum: `Summable` of a difference where f → 0: there's a lemma `tsum_of_...`? The cleanest: Σ_{m≥3} (f m − f (m+1)) with f m → 0: tsum = f 3: hmm — `Summable.hasSum_iff`... Let me use: the partial sums telescope: Σ_{m=3}^{M} (f m − f(m+1)) = f 3 − f(M+1) → f 3. The tsum = f 3 via `HasSum` of the telescoping series: Mathlib: `hasSum_...`? There might be a direct lemma: `Summable.tsum_eq...`? I don't recall a named telescope-tsum lemma offhand, but the partial-sum form: tsum_eq_of... Alternatively use `Summable.hasSum`... The standard approach: `hasSum_iff_tendsto_nat_of_nonneg`? or the telescope: for f → 0: ∑' m, (f m − f (m+1)) = f 0 -ish. Hmm — there's `tsum_of...`... Actually the cleanest available might be through the integral after all. OR — even simpler: Σ_{n≥4} n^{−3/2} ≤ Σ_{n≥4} 2·(√(n) − √(n−1))/(n·... no. Hmm, hold on — actually the SIMPLEST: Σ_{n≥4} log n/n² ≤ Σ_{n≥4} (2/e)·n^{−3/2} — and Σ_{n≥4} n^{−3/2} ≤ Σ_{n≥4} (1/(n−1)^{1/2} − 1/n^{1/2})·2 — the telescope tsum: in Lean, `Summable (fun n => (1/√(n) − 1/√(n+1)))` and its tsum: there IS a lemma — `tsum_of_...`. Actually `MeasureTheory`... no. The plain fact: for f : ℕ → ℝ with f n → 0: ∑' (f n − f (n+1)) = f 0. I recall this IS in Mathlib as... `Summable.tsum_sub`? no. Hmm: it might be easier to use: ∑'_{n≥4} n^{−3/2} ≤ ∫₃^∞ x^{−3/2} via AntitoneOn.tsum_comp_add_le_integral — the integral ∫₃^∞ x^{−3/2} dx = 2/√3 has antiderivative −2/√x — the FTC route again (same machinery as the log integral but simpler function). The antitone condition for x^{−3/2}: easy (rpow antitone... `Real.rpow_antitoneOn`? or product of antitone: x⁻¹ antitone, x^{−1/2} antitone ⟹ product antitone ✓ no deriv). OK you know what — piece 1's exact shape (integral vs telescope) I'll decide at build time. The point: with the sharpened piece 3, piece 1's budget is generous (~1.9+), so even Σ_{n≥4} log n/n² ≤ 1.0 suffices. Actually — hold on, even simpler: Λ(n) ≤ log n ≤ (n−1) — way too big. Let me think about what crude bound on dirichletC2 is EASIEST in Lean: - dirichletC2 = Σ Λ(n)/n². Head exact: n ≤ 3. Tail Σ_{n≥4}: Λ(n)/n² ≤ log n/n² ≤ (2/e)·n^{−3/2}. Need Σ_{n≥4} n^{−3/2} ≤ 1.2 (say). Real.rpow-based: n^{−3/2} = 1/(n·√n) ≤ 1/((n−1)·√(n−1))... hmm. Or n^{−3/2} ≤ 2/(n·√(n−1))-ish... The telescoping √ difference is the clean one. Let me check if Mathlib has the telescope-tsum: grep "tsum_sub_tsum_...|hasSum_..._sub"? There's `Summable.hasSum` combos... Actually I do recall: `tsum_of_...`? Hmm, there might be a `Real...`? Whatever — I'll find it at build time or prove it via partial sums (Finset.sum_range_sub — the telescoping finset sum EXISTS: `Finset.sum_range_sub (f) (n) : ∑ i ∈ range n, (f (i+1) − f i) = f n − f 0` ✓ that's a standard lemma). Then the tsum via the partial-sum limit: tsum_eq_lim... `HasSum` from tendsto of partial sums: hasSum_iff... use `Summable.hasSum`... Actually: the series Σ (f(n+1) − f(n)) has partial sums f(N) − f(0) → L − f(0) if f → L. So hasSum (fun n => f(n+1) − f n) (L − f 0) via `HasSum` def + the partial-sum identity + tendsto: `hasSum_iff_tendsto_nat_of_summable`? or directly: HasSum f l ↔ Tendsto (partial sums) (𝓝 l) — `hasSum_iff_tendsto_nat_of_nonneg`? The general: HasSum f l ↔ Tendsto (fun N => ∑ n ∈ range N, f n) atTop (𝓝 l) — that's `hasSum_iff_tendsto_nat_of_summable`?? The name... `Summable.hasSum` no... it's `hasSum_iff_tendsto_nat_of_nonneg` (needs nonneg) hmm or for general: `hasSum_iff_tendsto_nat_of_summable`?? I'll find it. The machinery exists; ~40 lines for the telescope. Given the sharpened piece 3 makes piece 1 easy, the CRITICAL path is piece 3's sharp sum Σ 1/(k√(1+k²)) ≤ 1.3346 (needs the log-ratio antiderivative) OR... hmm — wait, actually — can piece 3's sum ALSO use a telescope? Σ_k 1/(k√(1+k²)): compare 1/(k√(1+k²)) ≤ 1/k² ≤ ...: telescope √-difference: 1/k² ≤ 1/(k(k−1)) = 1/(k−1) − 1/k (k ≥ 2) ✓! So Σ_{k≥2} 1/(k√(1+k²)) ≤ Σ_{k≥2} 1/k² ≤ Σ_{k≥2} 1/(k(k−1)) = 1. And the k=1 term: 1/√2 = 0.7071. Total ≤ 1.7071 — vs the needed ≤ 1.3346·(something). Hmm — 1.7071 vs 1.3346: the difference in piece 3: 4.5·(1.7071 − 1.3346)·2·C₀ = 3.35·C₀ — too big. But wait — do I need ≤ 1.3346 exactly? Let me recompute the required S₃ from the budget. Piece 3 = 4.5·[S₃·C₀ + S₃·(C₀+0.55) + tail'] = 9·S₃·C₀ + 4.5·(0.55·S₃ + 0.5828). With S₃ = 1.7071: 15.364·C₀ + 4.5·(0.9389+0.5828) = 15.364·C₀ + 6.848. Totals: L: 0.6 + 15.364·0.433 = 7.25; LL: 0.886 + 15.364·0.886 = 14.50; const: piece1 1.15 + 2.7 + (15.364·2.9662 + 6.848) + 0.09 + 0.30 = 1.15+2.7+45.58+6.848+0.09+0.30 = 56.67. Constraint: 14.50·LL − (10.5−7.25)·L + 56.67 ≤ 48?? 14.50·LL − 3.25·L ≤ −8.67 — FALSE (LHS at L=2.485: 14.50·0.91 − 3.25·2.485 = 13.2 − 8.08 = +5.12 > 0). BREAKS badly. So the k=1 exact + k≥2 telescope (S₃ = 1.7071) fails. Need S₃ ≤ ~1.34. What about S₃ via: k=1, k=2, k=3 exact + telescope from k=4? Σ_{k≥4} 1/(k√(1+k²)) ≤ Σ_{k≥4} 1/k² ≤ Σ_{k≥4} 1/(k(k−1)) = 1/3. Head: 1/√2 + 1/(2√5) + 1/(3√10) = 0.7071 + 0.2236 + 0.1054 = 1.0361. Total ≤ 1.0361 + 0.3333 = 1.3694. Hmm — closer. Piece 3 = 9·1.3694·C₀ + 4.5·(0.55·1.3694 + 0.5828) = 12.325·C₀ + 6.016. Totals: L: 0.6+5.337 = 5.937; LL: 0.886+10.918 = 11.804; const: 1.15+2.7+(12.325·2.9662)+6.016+0.09+0.30 = 1.15+2.7+36.56+6.016+0.09+0.30 = 46.82. Constraint: 11.804·LL − 4.563·L + 46.82 ≤ 48 ⟺ 11.804·LL − 4.563·L ≤ 1.18. Pinch: L* = 11.804/4.563 = 2.587 (t = 11.3): value 11.804·log(2.587) − 4.563·2.587 = 11.804·0.9504 − 11.805 = 11.219 − 11.805 = −0.586 ≤ 1.18 ✓ margin 1.77. And boundary L = 2.485: 11.804·0.9103 − 4.563·2.485 = 10.745 − 11.339 = −0.594 ✓. At large L: decreasing ✓. So with S₃ ≤ 1.3694 (k≤3 exact + telescope from 4) it FITS with margin ~1.77 at the pinch. And the telescope Σ_{k≥4} 1/(k(k−1)) = 1/3 is the standard telescoping sum (1/(k(k−1)) = 1/(k−1) − 1/k) — the Finset.sum_range_sub + limit machinery — and the per-term bound 1/(k√(1+k²)) ≤ 1/k²·(1) hmm: 1/(k√(1+k²)) ≤ 1/(k(k−1)) ⟺ k−1 ≤ √(1+k²) ✓ (k−1 ≤ k ≤ √(1+k²)·... √(1+k²) ≥ k > k−1 ✓). So per-term: 1/(k√(1+k²)) ≤ 1/(k(k−1)) for k ≥ 2 ✓ (via 1/k² ≤ 1/(k(k−1)) and 1/(k√(1+k²)) ≤ 1/k² since √(1+k²) ≥ k). All elementary — NO integral needed!! And the k=2,3 exact terms: 1/(2√5) and 1/(3√10) — with √5 ≥ 2.23, √10 ≥ 3.16 (rational lower bounds: (2.23)² = 4.9729 ≤ 5 ✓ so √5 ≥ 2.23; (3.16)² = 9.9856 ≤ 10 ✓ √10 ≥ 3.16): 1/(2·2.23) = 0.2242, 1/(3·3.16) = 0.1055. Head ≤ 0.7072 (1/√2: √2 ≥ 1.414: 1/√2 ≤ 1/1.414 = 0.70722) + 0.2242 + 0.1055 = 1.0369. Total S₃ ≤ 1.0369 + 1/3 = 1.3702 ≤ 1.3703. Pinch margin ~1.76. GOOD ENOUGH — no integral plumbing for piece 3's sum! Let me redo the FULL honest constant assembly with this S₃ to nail the final numbers: - piece 1: Z₂ ≤ 0.9955 (log2 ≤ 0.6932, log3 ≤ 1.1: (0.6932)/4 + 1.1/9 + (1.1+1)/3 = 0.1733+0.12222+0.7 = 0.9955) — via the ∫₃^∞ log/x² integral — OR the crude route: Σ_{n≥4} Λ/n² ≤ Σ log n/n² ≤ Σ (2/e)·n^{−3/2} ≤ (2/e)·(telescope 2/√3) = (2/e)·1.1547 = 0.85: piece 1 ≤ 0.1733 + 0.1222 + 0.85 = 1.1455. With the generous budget, use the crude route (no integral!): the √-telescope Σ n^{−3/2} ≤ 2/√3: n^{−3/2} ≤ 2(1/√(n−1) − 1/√n) ⟺ 1/(n√n) ≤ 2(√n−√(n−1))/(√n√(n−1)) ⟺ √(n−1) ≤ 2√n(√n−√(n−1))·... 2(√n−√(n−1)) = 2/(√n+√(n−1)): so need 1/(n√n) ≤ 2/(√n√(n−1)(√n+√(n−1))) ⟺ √(n−1)(√n+√(n−1)) ≤ 2n ⟺ √(n(n−1)) + (n−1) ≤ 2n ⟺ √(n(n−1)) ≤ n+1 ✓ (n(n−1) = n²−n ≤ n²+2n+1 ✓). Elementary ✓. And 2/e ≤ 0.7358 (e ≥ 2.718: 2/2.718 = 0.7359). And log n ≤ (2/e)·√n ⟺ log(√n)·... log n/√n ≤ 2/e ⟺ (log n)/n^{1/2} max at n = e²: value 2/e ✓ — the standard "log x ≤ x^a/a" — Real.log_le_rpow_div! (session 034's lemma: log x ≤ x^ε/ε): with ε = 1/2: log n ≤ 2·√n·... wait: log n ≤ n^{1/2}/(1/2) = 2√n. That's log n ≤ 2√n NOT (2/e)√n. The 2/e form: log n ≤ (2/e)·√n ⟺ log(n)/√n ≤ 2/e — from log_le_rpow_div with ε = 1/2: log n ≤ 2·n^{1/2} — the e-form is sharper but log_le_rpow_div gives 2·√n. Hmm — 2√n vs (2/e)√n = 0.736√n: the rpow_div lemma is lossy by e. With log n ≤ 2√n: Σ_{n≥4} log n/n² ≤ 2·Σ n^{−3/2} ≤ 2·(2/√3) = 4/√3 = 2.309: piece 1 ≤ 0.1733+0.1222+2.309 = 2.60 — too big? Budget check with S₃ = 1.3702: const total = piece1 2.60 + 2.7 + 36.56 + 6.016 + 0.09 + 0.30 = 48.27 — vs the available 48 − (pinch max −0.586) = 48.59. 48.27 ≤ 48.59 ✓ FITS by 0.32! TIGHT. Hmm. With piece 1 = 1.1455 (the (2/e) form): 46.82, fits by 1.77. The (2/e) form: log n ≤ (2/e)√n — from log_le_rpow_div... no. From the max of log x/√x: provable via deriv (log x/√x)' = (1/x·√x − log x/(2√x))/x = (1 − (log x)/2)/x^{3/2} — zero at x = e² — max value (log e²)/e = 2/e. The deriv argument: ~30 lines. OR use log_le_rpow_div with ε = 1/4: log n ≤ 4·n^{1/4}: Σ_{n≥4} 4/n^{7/4}: ≤ 4·∫₃^∞ x^{−7/4}·... telescope: n^{−7/4} ≤ (4/3)(1/(n−1)^{3/4} − 1/n^{3/4})? similar √-telescope with rpow 3/4: (n−1)^{−3/4} − n^{−3/4} = ... ≈ (3/4)n^{−7/4}: so n^{−7/4} ≤ (4/3)(...): Σ_{n≥4} ≤ (4/3)·3^{−3/4} = (4/3)·0.4387 = 0.585. ×4 = 2.34. no better. OR piece 1 via the sharp integral after all (∫₃^∞ log x/x² = (log 3+1)/3 — the antiderivative is clean (no sqrt!): F = −(log x + 1)/x): piece 1 ≤ 0.9955. Given the budget tightness (0.32 with the crude route), the sharp integral is worth it: piece 1 ≤ 0.9955 gives total 46.82, margin 1.77. Hmm — this is all getting tight. Let me consolidate the FINAL honest assembly (all pieces with Lean-feasible bounds): - piece 1: ≤ (log 2)/4 + (log 3)/9 + (log 3 + 1)/3 ≤ 0.1733 + 0.1223 + 0.7 = 0.9956 (sharp integral; log 2 ≤ 0.6932 via log_two_lt_d9; log 3 ≤ 1.1 via e^1.1 ≥ 3.0013 partial sum). - piece 2: ≤ 0.6L + 0.886LL + 2.7 (P1). - piece 3: ≤ 4.5·[S₃·C₀ + S₃·(C₀ + 0.55) + 0.5828] with S₃ ≤ 1.3703, C₀ = C0hat(t+1) ≤ 0.433(L + 1/12) + 0.886(LL + 0.034) + 2.9 ≤ 0.433L + 0.886LL + 2.9662 (the L' conversion — hmm 0.433/12 = 0.0361, 0.886·0.034 = 0.0301: 2.9+0.0361+0.0301 = 2.9662 ✓): piece 3 ≤ 9·1.3703·(0.433L + 0.886LL + 2.9662) + 4.5·(0.55·1.3703 + 0.5828) = 12.333·(0.433L + 0.886LL + 2.9662) + 4.5·1.3365 = 5.340L + 10.927LL + 36.585 + 6.014 = 5.340L + 10.927LL + 42.599. Hmm wait: 9·S₃·C₀ = 9·1.3703·C₀ = 12.3327·C₀ (the two sides: left S₃·C₀, right S₃·(C₀+0.55)): 4.5·(S₃·C₀ + S₃·C₀ + 0.55·S₃ + 0.5828) = 4.5·(2·1.3703·C₀ + 0.7537 + 0.5828) = 4.5·(2.7406·C₀ + 1.3365) = 12.333·C₀ + 6.014 ✓. - pieces 4/5: 0.045 + 0.045 = 0.09. - piece 6: ≤ 0.30 (the sharp digamma remainder route). TOTALS: L: 0.6 + 5.340 = 5.940; LL: 0.886 + 10.927 = 11.813; const: 0.9956 + 2.7 + 42.599 + 0.09 + 0.30 = 46.685. Constraint: 11.813·LL − (10.5 − 5.940)·L + 46.685 ≤ 48 ⟺ 11.813·LL − 4.560·L ≤ 1.315 for L ≥ 2.485. Pinch: L* = 11.813/4.560 = 2.590 (t = e^{2.590} − 2 = 11.33): value 11.813·log(2.590) − 4.560·2.590 = 11.813·0.9517 − 11.810 = 11.242 − 11.810 = −0.568 ≤ 1.315 ✓ margin 1.88. Boundary L = 2.485: 11.813·0.9103 − 4.560·2.485 = 10.753 − 11.332 = −0.579 ✓. Decreasing thereafter ✓. FITS with margin ≈ 1.9. OK so the final assembly fits 10.5/48 with comfortable margin (~1.9) using: - piece 1 sharp integral (0.9956), - piece 3 with S₃ ≤ 1.3703 (k≤3 exact + telescope from k=4), - the tail bound 0.5828, the C₀(2t+1) ≤ C₀ + 0.55, the L'/L conversion, - piece 6 ≤ 0.30. All bounds elementary except piece 1's integral (clean antiderivative) and piece 6's digamma remainder (level-2 EM). WAIT — one more check on piece 6's constant: D-056 got 0.29; budget 0.30. The sharp form: ½|ψ(s/2) − ψ(s₀/2)| with ψ(w) = log w − 1/(2w) + r(w), |r| ≤ 1.2/|w|²: |log(w/w₀)|: w = s/2, w₀ = s₀/2: |w − w₀| = |s−s₀|/2 ≤ 2.25; |w₀| ≥ t/2 ≥ 5: |log(w/w₀)| ≤ |w/w₀ − 1|·(1/(1−|w/w₀−1|)) hmm: |log(1+u)| ≤ |u|/(1−|u|) for |u| < 1 (provable? |log(1+u)| ≤ −log(1−|u|) — hmm — the standard: |log(1+u)| ≤ 2|u| for |u| ≤ 1/2 — Mathlib has `Complex.norm_log_one_add_le`? `Complex.abs_log_one_add_le`? There's `Complex.norm_log_one_add_le (h : ‖z‖ ≤ r)...`? I recall `Complex.norm_log_one_add_le : ‖log (1 + z)‖ ≤ ...`? hmm — there's `Complex.abs_log_one_add_lt`? In Mathlib: `Complex.norm_log_one_add_le (hz : ‖z‖ < 1) : ‖Complex.log (1 + z)‖ ≤ -Real.log (1 - ‖z‖)`? something like that. And −log(1−x) ≤ 2x for x ≤ 1/2 (Real.log... via log(1−x) ≥ −2x ⟸ ...). Then |u| = |w/w₀ − 1| = |w−w₀|/|w₀| ≤ 2.25/(t/2) = 4.5/t ≤ 0.45 (t ≥ 10): |log(w/w₀)| ≤ 2·0.45·... hmm wait — log(w/w₀) = log(1 + (w−w₀)/w₀): |·| ≤ 2·|u| with |u| ≤ 4.5/t·(1/2)·2 — hold on: |u| = |w−w₀|/|w₀| ≤ 2.25/(t/2) = 4.5/t. At t = 10: 0.45. |log(1+u)| ≤ 2|u| = 0.9?? D-056 had ½|log(s/s₀)| ≤ 0.23 ⟹ |log| ≤ 0.46. My 2|u| = 0.9 is 2× lossy. The tighter: |log(1+u)| ≤ |u|/(1−|u|) = 0.45/0.55 = 0.818 — still lossy vs 0.46. The arg/modulus split (D-056): |log(w/w₀)|² = (log|w/w₀|)² + (arg)²: |log|w/w₀|| ≤ |1 − |w/w₀||/(1−...)·... |w|/|w₀|: |w| ≥ t/2 − ... |w| ≥ |im w| = t/2 (im w = t/2 ✓); |w₀| ≥ t/2: ||w|−|w₀|| ≤ |w−w₀| ≤ 2.25: |log(|w|/|w₀|)| ≤ 2.25/(t/2 − 2.25)·... ≤ 2.25/2.75 = 0.818?? hmm at t=10: |w₀| ≥ 5, |w| ≥ 5 − 2.25 = 2.75: |log ratio| ≤ max(log(7.25/5), log(5/2.75)) = max(0.371, 0.598) = 0.598. arg: |arg(w/w₀)| ≤ |w−w₀|/|w₀|·... arg difference ≤ 2.25/5 = 0.45 rad? (the angle between w and w₀ — both have im = t/2: the ratio w/w₀ = (s/2)/(s₀/2) = s/s₀: arg(s/s₀): the points s, s₀ both at height t: arg(s/s₀) = arg s − arg s₀: |arg s − arg s₀| ≤ ... both near the imaginary axis: arg s ≈ π/2 − (σ)/t-ish: |arg s − arg s₀| ≈ |σ − 2|/t ≤ 4.5/t = 0.45 ✓. So |log(s/s₀)| ≤ √(0.598² + 0.45²) = √(0.3576+0.2025) = √0.560 = 0.748. ½·0.748 = 0.374. Plus ½·(1/(2w)−1/(2w₀)) ≤ ½·(1/2)·|w−w₀|/(|w||w₀|)·2 = ½·(1/2)·2.25/(2.75·5)·2·... let me redo: |1/(2w) − 1/(2w₀)| = (1/2)·|w₀−w|/(|w||w₀|) ≤ (1/2)·2.25/(2.75·5) = 1.125/13.75 = 0.0818; ½ of that: 0.041. Plus ½|r-diff|: |r(w)| + |r(w₀)| ≤ 1.2/|w|² + 1.2/|w₀|² ≤ 1.2/2.75² + 1.2/25 = 1.2/7.5625 + 0.048 = 0.1587+0.048 = 0.2067; ½·that = 0.103. Total piece 6: 0.374 + 0.041 + 0.103 = 0.518?!? Over the 0.30 budget. Hmm. The slack: my |log ratio| bound 0.598 is lossy (D-056 had ½|log| ≤ 0.23 ⟹ |log| ≤ 0.46 — via the arg ≤ 4.5/|t| AND |log|s/s₀|| ≤ 0.02: √(0.46²... 0.02² + 0.45² = 0.2029: √ = 0.4504; ½ = 0.225 ✓). The |log|s/s₀|| ≤ 0.02: |s|/|s₀|: |s| = √(σ²+t²), |s₀| = √(4+t²): ratio² = (σ²+t²)/(4+t²) ∈ [(t²+... for σ ∈ [−2.5,3]: σ² ≤ 9: ratio² ≤ (9+t²)/(4+t²) ≤ 9/4: |s|/|s₀| ≤ 1.5: |log ratio| ≤ log 1.5 = 0.405?? D-056 said 0.02?! Let me recheck: |s|/|s₀| for σ ∈ [−2.5, 3], t = 10: σ = 3: |s| = √(9+100) = 10.44; |s₀| = √104 = 10.198: ratio 1.024: log = 0.0237. σ = −2.5: |s| = √(6.25+100) = 10.307: ratio 1.0107: log = 0.0106. So |log ratio| ≤ 0.024 at t = 10 ✓ D-056's 0.02-ish. My |w|/|w₀| bound used |w| ≥ |im w| only — lossy; the correct one uses |w| = |s|/2 ≥ √(t²+0)/2 = t/2·... |s| ≥ t (|s| ≥ |im| = t ✓) and |s| ≤ √(9+t²) ≤ t·√(1+9/100) = 1.045t·... ratio |s|/|s₀| ∈ [t/√(4+t²)·... let me just: |s|/|s₀| ∈ [√(t²)/√(t²+4)·(min over σ...)]: min |s| = t (σ = 0 ∈ range ✓), min |s₀| = √(4+t²): ratio_min = t/√(t²+4) ≥ 10/√104 = 0.9806: log ≥ −0.0196. max |s| = √(9+t²) (σ = 3), |s₀| = √(4+t²): ratio = √(9+t²)/√(4+t²) ≤ √(109/104) = 1.0237: log ≤ 0.0234. So |log|s/s₀|| ≤ 0.024 at t=10, decreasing ✓. arg: |arg s − arg s₀| — both in the upper half plane: arg s = π/2 − arctan(σ/t)-ish: |arg s − arg s₀| = |arctan(σ/t) − arctan(2/t)| ≤ |σ−2|/t ≤ 4.5/t = 0.45 (arctan Lipschitz 1/(1+x²) ≤ 1). Hmm — is |arg s − arg s₀| ≤ |σ − 2|/t right? arg s = atan2(t, σ): for σ > 0: arg s = arctan(t/σ)... ugh — the clean bound: |arg(s/s₀)| = |arg(1 + (s−s₀)/s₀)| ≤ 2·|s−s₀|/|s₀|·... For |u| ≤ 1/2: |arg(1+u)| ≤ ... the log: |log(1+u)| ≤ 2|u| covers both. Alternatively just use |log(1+u)| ≤ 2|u| with |u| = |s−s₀|/|s₀| ≤ 4.5/10.198 = 0.441: |log(s/s₀)| ≤ 2·0.441 = 0.883 — too lossy. The tight route: |log(1+u)| ≤ |u|/(1−|u|) = 0.441/0.559 = 0.789 — still lossy. D-056's arg/modulus split gives 0.45. The Mathlib lemma for the split: Complex.log (1+u) = log|1+u| + i·arg(1+u): ‖log(1+u)‖ = √(log²|1+u| + arg²): needs the arg bound |arg(1+u)| ≤ ... For |u| < 1: |arg(1+u)| ≤ arcsin(|u|)-ish ≤ 2|u|·... Hmm — actually a cleaner classical bound: |log(1+u)| ≤ |u|·(1 + |u|/2 + |u|²/3+...) = |u|·(−log(1−|u|))/|u|·... = −log(1−|u|)·... the power series: log(1+u) = Σ u^k/k·(−1)^{k+1}: |log(1+u)| ≤ Σ |u|^k/k = −log(1−|u|) ✓ (norm of the series ≤ the series of norms — needs the absolute convergence — fine for |u| < 1). −log(1−x) ≤ x·(1 + x/2·(1/(1−x))·...) ≤ x/(1−x) ✓. So |log(s/s₀)| ≤ −log(1−0.441) = 0.581·... hmm −log(0.559) = 0.582. Still 0.582 vs D-056's 0.45. The difference: D-056 separates modulus (0.024) and arg (0.45) and takes the NORM of the complex log: √(0.024² + 0.45²) = 0.451 — the Pythagorean saving. To get the arg bound in Lean: |arg(1+u)| ≤ 2|u| for |u| ≤ 1/2-ish — is there a Mathlib lemma? `Complex.abs_arg_le...`? There's `Complex.abs_arg_le_pi_div_two`? or the abs of the imaginary part of log: |Im(log(1+u))| = |arg(1+u)| ≤ |log(1+u)|... circular. Hmm. There might be `Complex.norm_log_one_add_le`... OK — piece 6's exact form needs care but the budget: the total const budget is 48 − (pinch max) ≈ 48 + 0.57 = 48.57 (the pinch LL-term is NEGATIVE at the max, so the constraint is const ≤ 48 + 0.57·... — wait no: the constraint is 11.813·LL − 4.560·L + const ≤ 48 for ALL L ≥ 2.485; the max of (11.813·LL − 4.560·L) is −0.568; so const ≤ 48 − (−0.568) = 48.568. My pieces: 0.9956 + 2.7 + 42.599 + 0.09 + p6 ≤ 48.568 ⟺ p6 ≤ 2.18. So piece 6 has budget 2.18, not 0.30!! (D-056's 0.29 was part of HIS fold where the constant 47.84 left 0.16... his fold was tight differently.) With my sharper piece 3 (S₃ = 1.3703), the piece-6 budget is 2.18 — the CRUDE digamma bound (½|ψ-diff| ≤ ½|log(w/w₀)| + ½·(remainder sums)) with even a lossy remainder fits: |ψ(w)−ψ(w₀)| ≤ |log(w/w₀)| + |r(w)| + |r(w₀)| + |1/(2w)−1/(2w₀)|: with 5d's crude ‖ψ(w) − log w‖ ≤ 3: |ψ-diff| ≤ |log(w/w₀)| + 6 — too big (6 > 2·2.18). With the middle route: ψ(w) = log w − 1/(2w) + r with |r| ≤ C/|w|²... the level-2 EM gives |r| ≤ (1/12)·∫₀^∞ dx/|x+w|³·... For |im w| ≥ 5: |x+w| ≥ ... the integral ∫₀^∞ dx/|x+w|³: |x+w| ≥ √(x² + 25)... ∫₀^∞ dx/(x²+25)^{3/2} = [x/(25·√(x²+25))]₀^∞ = 1/25: so |r(w)| ≤ (1/12)·(1/25)·2?... hmm the EM form: ψ(w) = log w − 1/(2w) − ∫₀^∞ B̃₂(x)/(x+w)³ dx·(some factor): |B̃₂| ≤ 1/12: |∫| ≤ (1/12)·∫₀^∞ dx/|x+w|³ = (1/12)·(1/|im w|²)·∫₀^∞ du/(u²+1)^{3/2}·(u = x/|im|) — ∫₀^∞ du/(1+u²)^{3/2} = 1: so |r(w)| ≤ 1/(12·|im w|²)·... = 1/(12·(t/2)²) = 1/(3t²)·... hmm wait: ∫₀^∞ dx/|x+w|³ with |x+w| ≥ √(x² + (t/2)²): ∫₀^∞ dx/(x²+c²)^{3/2} = 1/c² (c = t/2): so |r| ≤ (1/12)·(1/c²) = 1/(12·(t/2)²)·... = 4/(12t²) = 1/(3t²). At t = 10: 1/300 = 0.0033!! Tiny. So piece 6: |ψ(w)−ψ(w₀)| ≤ |log(w/w₀)| + (1/2)|1/w − 1/w₀| + 2/(3t²)·... ≤ 0.582 + 0.0818 + 0.0067 = 0.67; ½·0.67 = 0.335 ≤ 2.18 ✓✓ EASY. Even the lossy |log(1+u)| ≤ −log(1−|u|) = 0.582 works. GREAT — piece 6 is comfortable with the level-2 EM remainder (the LiRBound b2Fun machinery) + the crude log bound. So the full 5f assembly is FEASIBLE with margin ~1.9, all pieces elementary-ish. The remaining big piece is piece 3 (the interval machine). Piece 1's integral (∫ log x/x²) — clean antiderivative. Let me now update D-069 §3 with these refined constants (the S₃ telescope form, the budgets) — actually the design doc says enough; the journal will record the refinements. Let me continue building: piece 1 next (dirichletC2 ≤ 0.9956... let me set the target: 0.1733+0.1223+0.7 = 0.9956 — prove dirichletC2 ≤ 0.9956). Actually — for Lean convenience, let me use the bound dirichletC2 ≤ 1 (rounder)! Budget check: piece 1 ≤ 1: total const = 1 + 2.7 + 42.599 + 0.09 + 0.335 = 46.724 ≤ 48.568 ✓ margin 1.84. So dirichletC2 ≤ 1 suffices!! And that's cleaner to prove (the fold: (log 2)/4 + (log 3)/9 + (log 3+1)/3 ≤ 1 ⟺ with log 2 ≤ 0.6932, log 3 ≤ 1.1: 0.1733+0.1223+0.7 = 0.9956 ≤ 1 ✓). dirichletC2 ≤ 1. That's the target. The steps: 1. term-norm form: ‖LSeries.term Λ 2 n‖ = if n = 0 then 0 else (Λ n)/n² (real-valued). 2. Summable g (g n = Λ n / n²): from the LSeries abs-summability — how did norm_logDeriv_zeta_le_dirichlet handle it? Let me look at its proof for the summability input. 3. g n ≤ log n/n² (vonMangoldt_le_log). 4. Σ' g ≤ head + tail with tail ≤ ∫₃^∞ log x/x² = (log 3+1)/3 ≤ 0.7. For step 2, let me read norm_logDeriv_zeta_le_dirichlet's proof to reuse its summability.
Piece 1 next. Checking how `norm_logDeriv_zeta_le_dirichlet` handles the summability (for reuse).
tool: Read
input
{
  "file_path": "D:\\Python\\Quantum\\research\\lean\\NguyenRH1\\NguyenRH1\\LiCircleBound.lean",
  "offset": 206,
  "limit": 45
}
raw content_json (database row)
[{"type":"thinking","thinking":"The pattern is clear. For ∫_{Ioi 3} log x/x² dx with antiderivative F(x) = −(log x + 1)/x:\n- `integral_Ioi_of_hasDerivAt_of_tendsto' (hderiv : ∀ x ∈ Ici a, HasDerivAt F (F' x) x) (F'int : IntegrableOn F' (Ioi a)) (hf : Tendsto F atTop (𝓝 m)) : ∫ x in Ioi a, F' x = m − F a`.\n- F(x) = −(log x + 1)/x: HasDerivAt F (log x / x²) x for x ≥ 3: deriv computation: d/dx[−(log x + 1)/x] = −[(1/x)·x − (log x + 1)·1]/x² = −[1 − log x − 1]/x² = log x/x² ✓. In Lean: HasDerivAt (fun x => −(log x + 1)/x) (log x/x²) x: via (hasDerivAt_log (x≠0)).add_const, .div (hasDerivAt_id'?)... let me build: ((log x + 1)/x)': use HasDerivAt.div (hc : HasDerivAt c c' x) (hd : HasDerivAt d d' x) (hd0 : d x ≠ 0): HasDerivAt (c/d) ((c'·d x − c x·d')/(d x)²): with c = log + 1 (c' = 1/x), d = id (d' = 1): ((1/x)·x − (log x + 1)·1)/x² = (1 − log x − 1)/x² = −log x/x². Then negate: −(c/d) has deriv +log x/x² ✓. So:\n```lean\nhave hF : ∀ x ∈ Ici (3:ℝ), HasDerivAt (fun x => -(Real.log x + 1)/x) (Real.log x / x^2) x := by\n  intro x hx\n  have hx0 : x ≠ 0 := by ... (x ≥ 3)\n  have h1 : HasDerivAt (fun x => (Real.log x + 1)/x) (-(Real.log x)/x^2) x := by\n    have h := ((Real.hasDerivAt_log hx0).add_const 1).div (hasDerivAt_id' x) hx0\n    -- h : HasDerivAt ((log · + 1)/id) ((1/x * x − (log x + 1) * 1)/x²) x\n    convert h using 1  -- or field_simp + ring the derivative value\n    · ext y; rfl?  -- the function (log y + 1)/y vs (fun x => (log x + 1)/x) ✓ same\n    · field_simp; ring  -- the derivative value\n  exact h1.neg\n```\nHmm — the exact forms need care (the div derivative form). Also `hasDerivAt_id'` — in this Mathlib: hasDerivAt_id' (x) : HasDerivAt id (1) x? The banked gotcha from session 033: \"hasDerivAt_id' s₀ |>.div_const 2\" ✓ exists.\n\n- F'int: IntegrableOn (fun x => log x/x²) (Ioi 3): via `integrableOn_Ioi_deriv_of_nonneg'` (used in the example above!): `apply integrableOn_Ioi_deriv_of_nonneg' _ _ tendsto-...` hmm — the example: `integrableOn_Ioi_deriv_of_nonneg' _ _ tendsto_log_atTop.inv_tendsto_atTop.neg` with goals: the hasDerivAt ∀ x ∈ Ioi? and nonneg. So integrableOn_Ioi_deriv_of_nonneg' (a) (F?) (htendsto : Tendsto F atTop (𝓝 0))?: let me infer from the example: `integrableOn_inv_div_log_sq_Ioi` proof: `apply integrableOn_Ioi_deriv_of_nonneg' _ _ tendsto_log_atTop.inv_tendsto_atTop.neg; · intro t _; convert! (hasDerivAt_inv_log ...).neg using 1; field; · intro t _; positivity`. So the lemma: integrableOn_Ioi_deriv_of_nonneg' (a : ℝ) (F : ℝ → ℝ) (hlim : Tendsto F atTop (𝓝 0))? (hderiv : ∀ x ∈ Ioi a, HasDerivAt F (F' x) x) (hnonneg : ∀ x ∈ Ioi a, 0 ≤ F' x) : IntegrableOn F' (Ioi a). I'll mimic exactly.\n- Tendsto F atTop (𝓝 0): F = −(log x + 1)/x → 0: (log x + 1)/x → 0: from `Real.tendsto_log_div_atTop`? hmm: log x/x → 0 is `Real.tendsto_log_div_atTop : Tendsto (fun x => log x / x) atTop (𝓝 0)` — exists? I believe `Real.tendsto_log_div_atTop` hmm or `tendsto_pow_log_div_...`? There is `Real.tendsto_log_div_atTop`? In recent Mathlib: `Real.tendsto_log_div_atTop : Tendsto (fun x => Real.log x / x) atTop (𝓝 0)` — I think it exists (in Analysis/SpecialFunctions/Log/Deriv.lean or Limits). And 1/x → 0. So (log x + 1)/x = log x/x + 1/x → 0. F = −that → 0: .neg.\n- Then ∫ Ioi 3 = m − F(3) = 0 − (−(log 3 + 1)/3) = (log 3 + 1)/3.\n\n- The antitone condition: f = log x/x² antitone on Ici 3: `AntitoneOn f (Ici 3)`: via deriv ≤ 0: `antitoneOn_of_deriv_nonpos`? Signature: antitoneOn_of_deriv_nonpos (hD : Convex ℝ D) (hf : ContinuousOn f D) (hf' : DifferentiableOn ℝ f (interior D)) (hder : ∀ x ∈ interior D, deriv f x ≤ 0) : AntitoneOn f D. For D = Ici 3 (convex, interior = Ioi 3): f' (x) = (1 − 2 log x)/x³ ≤ 0 for x > 3 (log x > 1.09 > 1/2 ✓). deriv f x: f = fun x => log x / x^2: deriv via rules; then ≤ 0. ~40 lines.\n\n- The nonneg: log x/x² ≥ 0 for x ≥ 3 ✓ (log 3 > 0).\n\nThen the assembly: dirichletC2 = ∑' n, ‖term n‖ = ∑' n, g(n) where g(0) = 0, g(n) = Λ n/n²: \n- step 1: show ‖LSeries.term Λ (2:ℂ) n‖ = (if n = 0 then (0:ℝ) else Λ n / n²): per n: cases n = 0 (term = 0, norm 0 ✓) / n ≥ 1: term = Λ n/(n:ℂ)²... ‖(Λ n : ℂ)/((n:ℂ)^(2:ℂ))‖ = Λ n / n²: norm_div + the cpow norm + the Λ-norm. Hmm — (n:ℂ)^(2:ℂ) is cpow. ‖(n:ℂ)^(2:ℂ)‖ = ‖(n:ℂ)‖^((2:ℂ).re)·... = n² via Complex.norm_cpow_eq_rpow_re_of_pos? For x = (n:ℝ) > 0: ‖(x:ℂ)^s‖ = x^(s.re) hmm the lemma name: `Complex.norm_cpow_eq_rpow_re_of_pos (hx : 0 < x) (s : ℂ) : ‖(x : ℂ) ^ s‖ = x ^ s.re`? Let me check: there's `Complex.norm_cpow_eq_rpow_re_of_pos` and `norm_cpow_eq_rpow_re_of_nonneg`? For s = 2: (n:ℝ)^(2:ℝ)... rpow vs pow: x^(2:ℝ) = x² via `Real.rpow_two`? Real.rpow_natCast: x^((2:ℕ):ℝ) = x^2. So ‖(n:ℂ)^(2:ℂ)‖ = ((n:ℝ)^(2:ℝ)) — need (2:ℂ).re = 2 and the cast (n:ℂ) = ((n:ℝ):ℂ)... Then (n:ℝ)^(2:ℝ) = n² (rpow_two: x^(2:ℝ) = x*x or rpow_natCast). Manageable.\n- step 2: ∑' g = g(0) + ... head/tail split: Σ' n, g n = Σ_{n<4} g n + Σ' n, g (n+4) via sum_add_tsum_nat_add (needs Summable g). Summable g: from Λ/n² ≤ log n/n² and the integral-test summability... circular-ish. Alternative: g summable from the LSeries absSummable (the Λ LSeries is abs-summable for re > 1 — `ArithmeticFunction.LSeriesSummable...`? LiCircleBound's norm_logDeriv_zeta_le_dirichlet used the summability — let me check what it used: `LSeries.absSummable...`. The term-norm series IS dirichletC2's summand — its summability: from `ArithmeticFunction.vonMangoldt` LSeries absSummable at 2: there should be `ArithmeticFunction.LSeries_vonMangoldt_absSummable`? or LSeriesSummable_vonMangoldt (hs : 1 < re s). Then dirichletC2's summand = |term| — summable = abs-summable ✓. So Summable g via that.\n- step 3: g n ≤ log n/n² for n ≥ 1 (vonMangoldt_le_log / n²) and = 0 at n = 0 (log 1 = 0 anyway... g 0 = 0 and log 1/1 = 0 ✓ so g n ≤ log n/n² for all n with log 0/0? n=0: log 0/0 — division by zero = 0 in Lean (1/0 = 0): log 0 = 0, 0/0 = 0 — and g 0 = 0 ✓ consistent).\n- step 4: h : Summable (fun n => log n / n²)? For tsum_le_tsum I need both summable. The log n/n² summability: via the integral test (AntitoneOn.summable_of_integrableOn_Ioi or similar) with the integrable from the FTC argument. OK.\n- step 5: Σ' g ≤ Σ' (log n/n²) [tsum_le_tsum pointwise] = head(4) + tail ≤ [(log 2)/4 + (log 3)/9] + (log 3 + 1)/3 ≤ 0.995 — the final numeric: log 2 ≤ 0.6932 (Real.log_two_lt_d9 : log 2 < 0.6931471808), log 3 ≤ 1.0987 (Real.log_three_lt? hmm — log 3 < 1.09861228866811? Mathlib has Real.log_... for 3? Not sure. log 3 bounds: maybe not in Mathlib. Can derive: log 3 = log 2 + log(3/2) — or via Real.log_le_sub_one_of_pos: log 3 ≤ 3−1 = 2 — too big. Hmm: need log 3 ≤ 1.0987-ish. Route: log 3 = −log(1/3) and... or log 3 ≤ (3−1)/√3·... the standard Mathlib-friendly: Real.log_le_sub_one_of_pos gives log x ≤ x − 1 — too weak. Better: log x ≤ √x − 1/√x (x ≥ 1)? There's `Real.log_le_sub_one_of_pos` only. Hmm — `Real.log_le_sub_one_of_pos`, `Real.log_le_self`? For log 3 ≤ 1.0987: 3 ≤ e^1.0987 — via Real.exp partial sums: e^1.1 ≥ Σ_{k≤4} 1.1^k/k! = 1 + 1.1 + 0.605 + 0.2218 + 0.0610 = 2.9878 < 3 — not enough; e^1.101: ~2.99... e^1.0989 ≥ ... this needs ~5-6 terms. There might be a cleaner bound: `Real.log_three_lt_d9`? Let me check. Actually — hmm, the budget: piece 1 ≤ 1.01; my computed total 0.9949 — the room is 0.015. If log 3's upper bound is sloppy (say ≤ 1.10), fine. log 3 ≤ 1.10 ⟸ 3 ≤ e^{1.10}: e^{1.1} ≥ partial sum to k=5: 1+1.1+0.605+0.22183+0.061004+0.013421 = 3.00126 ≥ 3 ✓ (Real.sum_le_exp_of_nonneg — used in LiBasePoints!). So log 3 ≤ 1.1 via: Real.log_le_iff... `Real.log_le_iff_le_exp`? There's Real.log_le_iff_le_exp (hx : 0 < x)? or le_exp: `Real.log_le_iff_le_exp : 0 < x → (log x ≤ y ↔ x ≤ exp y)`? Something like Real.log_le_iff_le_exp. Then 3 ≤ exp 1.1 via the partial sum (Real.sum_le_exp_of_nonneg (show 0 ≤ (1.1:ℝ)) (n := 5) : Σ_{k∈range 5} 1.1^k/k! ≤ exp 1.1) and the rational computation Σ = 3.00126... ≥ 3 by norm_num. OK — doable, ~20 lines. Similarly log 2 ≤ 0.6932 via Real.log_two_lt_d9 (exists ✓ used in project).\n\nSo piece 1 total: log2/4 + log3/9 + (log3+1)/3 ≤ 0.6932/4 + 1.1/9 + (1.1+1)/3 = 0.17330 + 0.12222 + 0.70 = 0.99552 ≤ 0.9955. And budget: 1.01? Hmm — actually what's the real budget? Let me recompute the fold: the D-069 assembly: piece1 + piece2 + piece3 + pieces45 + piece6 ≤ 10.5L + 48 with the C0hat-containing pieces: piece2 ≤ 0.6L + 0.886LL + 2.7; piece3 ≤ 12.7279·C0hat(t+1) + 7.00 = 12.7279·(0.433L' + 0.886LL' + 2.9) + 7.00 where L' = log(t+3) ≤ L + 1/12·... hmm — let me be careful about L' vs L: piece 3 uses C0hat(t+1) = 0.433·log(t+3) + 0.886·loglog(t+3) + 2.9. log(t+3) ≤ log(t+2) + 1/(t+2)·... ≤ L + 1/12 (t ≥ 10: log(t+3) − log(t+2) = log(1 + 1/(t+2)) ≤ 1/(t+2) ≤ 1/12 ✓). Similarly LL(t+3) ≤ LL + (1/12)/L·... ≤ LL + 1/(12·2.48) ≤ LL + 0.034. So piece 3 ≤ 12.7279·(0.433(L+1/12) + 0.886(LL+0.034) + 2.9) + 7.00 = 12.7279·(0.433L + 0.886LL + 2.9 + 0.433/12 + 0.886·0.034) + 7.00 = 12.7279·(0.433L + 0.886LL + 2.9 + 0.0361 + 0.0301) + 7.00 = 12.7279·(0.433L + 0.886LL + 2.9662) + 7.00 = 5.5112L + 11.2769LL + 37.756 + 7.00 = 5.5112L + 11.2769LL + 44.756.\nTotal: piece1 (≤ 1.01 const) + piece2 (0.6L + 0.886LL + 2.7) + piece3 (5.5112L + 11.2769LL + 44.756) + pieces45 (0.09) + piece6 (0.30):\nL-coeff: 0.6 + 5.5112 = 6.1112; LL: 0.886 + 11.2769 = 12.1629; const: 1.01 + 2.7 + 44.756 + 0.09 + 0.30 = 48.856?!? — over 48!! Wait: 1.01 + 2.7 = 3.71; +44.756 = 48.466; +0.09 = 48.556; +0.30 = 48.856. That's OVER 48 by 0.856!! Hmm — but wait, my piece-3 constant estimate: 12.7279·2.9662 = 37.756 — but D-069 §3 said piece3 ≤ 12.7279·C₀ + 7.00 with C₀ = C0hat(t+1)... the C0hat constant 2.9 × 12.7279 = 36.91 and the L'/L conversion added 12.7279·0.0662 = 0.843. Total const: 36.91 + 7.00 + 0.843 = 44.75. Plus pieces 1,2,4,5,6 constants: 1.01 + 2.7 + 0.09 + 0.30 = 4.10. Grand total: 48.86. Over by 0.86.\n\nHmm!! My D-069 estimate said 47.6 — because I used the L' = L approximation without the +1/12 conversion slack. The honest conversion costs 0.84. So the current budget breaks by ~0.86.\n\nCan I recover? Options:\n(a) The L'/L conversion: instead of converting log(t+3) ≤ log(t+2) + 1/12, keep piece 3 in terms of log(t+3) and make the FINAL target 10.5·log(|t|+3)?? — no, the target is baked: 10.5·log(|t|+2) + 48.\n(b) Sharpen piece 3's constants: the tail 0.55 and the C₀(2t+1) ≤ C₀+0.55: the tail Σ_{k>t}: at t ≥ 10: ≤ 0.433·(log10+1)/10 + (2.9+0.886·LL(3t))/11·... my 0.55 estimate: 0.433·0.4302 + 0.886·1.206·0.0909 + 0.2636 = 0.186+0.097+0.264 = 0.547. Hmm. The +0.55 for C0hat(2t+1) − C0hat(t+1): 0.433·log((2t+3)/(t+3)) + 0.886·(LL(2t+3)−LL(t+3)): log((2t+3)/(t+3)) ≤ log 2·(1 − ...) ≤ 0.693·(t+3...)/(t+2)... = log(2 − 3/(t+3)) ≤ log 2 − 3/(2(t+3))·... ≈ 0.686 at t=10 decreasing to 0.693. So 0.433·0.686 = 0.297; LL-diff: LL(2t+3) − LL(t+3) = log(log(2t+3)/log(t+3)) ≈ log(1 + 0.686/2.56) ≈ 0.236 at t=10 decreasing; 0.886·0.236 = 0.209. Total 0.506 ≤ 0.55 ✓ tight-ish.\n(c) Reduce piece 1 to the true Z₂ = 0.57: certified via partial sums — in Lean that's the heavy computation. The difference: 0.995 − 0.57 = 0.43 savings. Still over by 0.43.\n(d) The pinch: actually — WAIT. The binding constraint isn't the constant alone: the target is 10.5L + 48 and the assembly is 6.111L + 12.163LL + 48.86. Need 12.163·LL − 4.389·L ≤ −0.86+... i.e. 12.163LL − 4.389L + 48.86 ≤ 48 ⟺ 12.163LL − 4.389L ≤ −0.86?? — but at the pinch (L = 2.77) the LHS is +0.234 > 0. So it FAILS — need the constant ≤ 48 − 0.234 = 47.77. Currently 48.86. Must save 1.09.\n(e) Sharpen piece 6: 0.30 → the true ψ-diff bound is ≈ 0.23 (D-056) — save 0.07.\n(f) Sharpen piece 3's leading: use the per-interval sharpened term 4.5/(k√(1+k²)) instead of 4.5√2/(k(k+1)): the per-side interval-sum constant 1.3227 vs √2·1 = 1.4142: saves (1.4142−1.3227)·2·C₀ = 0.183·C₀·... wait: piece 3 = 4.5·Σ count·term: with term ≤ 1/(k√(1+k²)): per side Σ = 1.3227·count-ish: total 4.5·[1.3227·(C₀ + C₀(2t+1)) + tail] = 4.5·[1.3227·(2C₀ + 0.55) + 0.547] = 4.5·[2.6454·C₀ + 0.7275 + 0.547] = 11.904·C₀ + 5.735. vs previous 12.7279·C₀ + 7.00. C₀ ≈ 0.433L' + 0.886LL' + 2.9 + conversion: 11.904·C₀ + 5.735 = 11.904·(0.433L + 0.886LL + 2.9662) + 5.735 = 5.154L + 10.547LL + 35.310 + 5.735 = 5.154L + 10.547LL + 41.045. New totals: L: 0.6 + 5.154 = 5.754; LL: 0.886 + 10.547 = 11.433; const: 1.01 + 2.7 + 41.045 + 0.09 + 0.30 = 45.145. Constraint: 11.433·LL − (10.5−5.754)·L + 45.145 ≤ 48 ⟺ 11.433·LL − 4.746·L ≤ 2.855. At the pinch L* = 11.433/4.746 = 2.409 (below log 12 = 2.485!): for L ≥ 2.485 the LHS is decreasing (deriv 11.433/L − 4.746 < 0 for L > 2.409) ⟹ max at L = 2.485: 11.433·0.9103 − 4.746·2.485 = 10.407 − 11.794 = −1.39 ≤ 2.855 ✓✓ HUGE margin. So with the sharpened per-interval term, the assembly fits 10.5/48 comfortably.\n\nBut the sharpened term 1/(k√(1+k²)) needs the sum Σ 1/(k√(1+k²)) ≤ 1.3227 in Lean — a non-telescoping series bound (integral comparison again: Σ_{k≥1} 1/(k√(1+k²)) ≤ 1/√2 + ∫₁^∞ dx/(x√(1+x²))... ∫ dx/(x√(1+x²)) = ... substitution u = √(1+x²): = log(√(1+x²)−1) − log x = −log(√(1+x²)/x + ...) hmm: ∫ dx/(x√(1+x²)) = −arsinh(1/x)·... = log(x/(1+√(1+x²))). At ∞: log(1) = 0... the antiderivative is −log((1+√(1+x²))/x). Not in Mathlib directly — provable via hasDerivAt of that composition (sqrt chain) — ~30 lines. The value at 1: −log((1+√2)) = −log(2.414) = −0.8814; at ∞ → 0: integral = 0.8814. Total Σ ≤ 0.7071 + 0.8814 = 1.5885?? — that's the ∫ from 1 — hmm: Σ_{k≥1} ≤ f(1) + ∫₁^∞ f = 0.7071 + 0.8814 = 1.5885 — WORSE than 1.3227 (the integral from 1 is lossy). Take more head terms: f(1)+f(2)+f(3) + ∫₃^∞: 0.7071+0.2236+0.1054 + [−log((1+√(1+x²))/x)]₃^∞ = 1.0361 + (0 − (−log((1+√10)/3))) = 1.0361 + log(4.1623/3) = 1.0361 + log(1.3874) = 1.0361 + 0.3273 = 1.3634. Still worse than 1.3227 — the TRUE sum ≈ 1.3227 (computed numerically). The integral route converges slowly to the truth; more head: f(1..5) + ∫₅^∞: 1.1966 + log((1+√26)/5) = 1.1966 + log(6.099/5) = 1.1966 + 0.1985 = 1.3951?? worse?? no wait: ∫₅^∞ = −log((1+√(1+x²))/x)|₅→∞: at ∞: −log(1) = 0⁻... the antiderivative F(x) = −log((1+√(1+x²))/x): F(5) = −log((1+√26)/5) = −log(6.0990/5) = −log(1.2198) = −0.19866; F(∞) = −log(1) = 0. ∫₅^∞ f = F(∞) − F(5) = 0.19866. Head f(1)+...+f(4) = 0.7071+0.2236+0.1054+0.0606 = 1.0967. Total ≤ 1.0967 + 0.1987 = 1.2954 ≤ 1.3227?? hmm wait that's the sum from k=5: Σ_{k≥5} f(k) ≤ f(5) + ∫₅^∞ f = 0.0392 + 0.1987 = 0.2379; total Σ_{k≥1} ≤ 1.0967 + 0.2379 = 1.3346. Hmm — 1.3346 vs the telescoping √2-form's 1.4142. Savings: (1.4142 − 1.3346)·2·C₀·4.5 = 0.0796·2·4.5·C₀ = 0.7164·C₀ ≈ 0.7164·(0.433L+0.886LL+2.97) — that's 0.31L + 0.63LL + 2.13 — hmm wait that's a SAVING so the piece-3 total becomes 12.7279C₀ + 7.00 − 0.716C₀ = 12.01C₀ + 7.00. Let me recompute totals with Σ-const = 1.3346 (call it S₃): piece 3 = 4.5·[S₃·C₀ + S₃·(C₀+0.55) + 0.547] = 4.5·[2·S₃·C₀ + 0.55·S₃ + 0.547] = 9·S₃·C₀ + 4.5·(0.734+0.547) = 9·1.3346·C₀ + 4.5·1.281 = 12.0114·C₀ + 5.765. Totals: L: 0.6 + 12.0114·0.433 = 0.6 + 5.201 = 5.801; LL: 0.886 + 12.0114·0.886 = 11.528; const: 1.01 + 2.7 + (12.0114·2.9662 + 5.765) + 0.09 + 0.30 = 1.01+2.7+35.633+5.765+0.09+0.30 = 45.498. Constraint: 11.528·LL − 4.699·L ≤ 48 − 45.498 = 2.502. Pinch: L* = 11.528/4.699 = 2.453 < 2.485 ⟹ max at L = 2.485: 11.528·0.9103 − 4.699·2.485 = 10.494 − 11.678 = −1.18 ≤ 2.502 ✓ EASY.\n\nHmm wait — but hold on: the per-interval sharpened term — the far sum's interval split: interval k gets term ≤ 4.5/(x√(1+x²)) ≤ 4.5/(k√(1+k²))·... wait the term is 4.5·|s₀−s|-normalized... let me recheck: the term is ‖(s₀−s)/((s−ρ)(s₀−ρ))‖ ≤ 4.5/(x·√(1+x²)) with x = |t−γ| (|s−ρ| ≥ x, |s₀−ρ| ≥ √(1+x²)). On the interval x ∈ [k, k+1): ≤ 4.5/(k√(1+k²)) ✓. The interval sum: Σ_k count_k·4.5/(k√(1+k²)) with count_k ≤ C₀ (left) / C₀(2t+1) (right) — monotone ✓. So piece 3 ≤ 4.5·[C₀·Σ_left + C₀(2t+1)·Σ_right + tail] where Σ_left, Σ_right ≤ Σ_{k≥1} 1/(k√(1+k²)) ≤ 1.3346 — hmm but the tail (k > t): the per-interval count C₀(t+k+1) GROWS with k — can't bound by C₀(2t+1) for k > t. D-056 handled the k > t tail separately: Σ_{k>t} count·term ≤ Σ_{k>t} C₀(t+k+1)/(k√(1+k²))·4.5 ≤ 4.5·Σ C₀(2k+1)·(1/k²-ish)... the tail ≤ 4.5·[0.433·((log 10+1)/10) + ...] ≈ 4.5·0.547/4.5 — wait I had tail ≤ 0.55 for the 4.5√2-included form. Let me redo: tail T := Σ_{k>t} C0hat(t+k+1)·4.5/(k√(1+k²)) ≤ 4.5·Σ_{k>t} [0.433·log(3k) + 0.886·loglog(3k) + 2.9]/k²·... ≤ 4.5·[0.433·Σ_{k>t} log(3k)/k² + 0.886·LL(3t)·Σ 1/k² + 2.9·Σ 1/k²]: Σ_{k>t} 1/k² ≤ 1/(t−1)·... ≤ 1/9 (t ≥ 10: Σ_{k≥11} 1/k² ≤ ∫₁₀^∞ dx/x² = 0.1 — hmm: Σ_{k≥11} 1/k² ≤ 1/121 + ∫₁₁^∞ = 0.0083 + 0.0909 = 0.0992). Σ_{k≥11} log(3k)/k² = log 3·Σ1/k² + Σ log k/k² ≤ 1.0986·0.0992 + 0.3303 = 0.4393 (the Σ log k/k² ≤ (log 10+1)/10 = 0.3303 from before). So tail ≤ 4.5·[0.433·0.4393 + 0.886·loglog(33)·0.0992 + 2.9·0.0992] = 4.5·[0.1902 + 0.886·1.1935·0.0992 + 0.2877] = 4.5·[0.1902 + 0.1049 + 0.2877] = 4.5·0.5828 = 2.6226?!? Hmm that's bigger than the 0.55 I had — because I previously factored 4.5 OUT. Let me redo: the tail bound 0.55 was for the FORM without the 4.5√2 factor? D-056's \"the k > t tail ≤ C₀(2t)/(t+1) + 0.433/t ≤ 0.53\" — that's INSIDE the 4.5√2 multiplier (piece 3 = 4.5√2·[... + 0.53]). So in the sharpened form: piece 3 = 4.5·[C₀·S₃ + (C₀+0.55)·S₃ + tail'] where tail' = Σ_{k>t} count_k/(k√(1+k²)) ≤ Σ_{k>t} C0hat(t+k+1)/k² ≤ 0.433·0.4393 + 0.886·1.1935·0.0992 + 2.9·0.0992 = 0.5828/4.5·4.5 hmm: tail' ≤ 0.1902+0.1049+0.2877 = 0.5828. So piece 3 ≤ 4.5·[S₃·C₀ + S₃·C₀ + 0.55·S₃ + 0.5828] = 4.5·[2·1.3346·C₀ + 0.734 + 0.5828] = 12.0114·C₀ + 4.5·1.3168 = 12.0114·C₀ + 5.926. OK consistent-ish with before.\n\nSo the full honest totals: L: 5.801; LL: 11.528; const: 45.5; need 11.528·LL − 4.699·L ≤ 2.5 for L ≥ 2.485 — max at boundary L = 2.485: −1.18 ≤ 2.5 ✓ margin 3.7. And the t=10 endpoint value: full bound at t=10: 5.801·2.485 + 11.528·0.9103 + 45.5 = 14.42 + 10.49 + 45.5 = 70.41 ≤ 10.5·2.485+48 = 74.09 ✓ margin 3.7. At t = 10¹²: 5.801·27.63 + 11.528·3.319 + 45.5 = 160.3+38.3+45.5 = 244.1 ≤ 10.5·27.63+48 = 338.1 ✓ margin 94. GREAT — the sharpened assembly has robust margins everywhere (the pinch dissolves: the max of 11.528·LL − 4.699·L over L ≥ 2.485 is at the boundary and equals −1.18).\n\nHmm wait — but the pinch region t ≈ 13: L = log(15.15) = 2.718: 11.528·LL(2.718)=11.528·1.0 = 11.528... at L = 2.718: 11.528·1.0 − 4.699·2.718 = 11.528 − 12.772 = −1.244 ≤ 2.5 ✓. Yes fine (the function 11.528·log L − 4.699·L is decreasing throughout L ≥ 2.485 since the critical point 2.453 < 2.485 ✓).\n\nBUT the sharpened interval sum Σ 1/(k√(1+k²)) ≤ 1.3346 needs: (i) the antiderivative of 1/(x√(1+x²)) — −log((1+√(1+x²))/x) — a sqrt-chain hasDerivAt (~30 lines, sqrt derivatives exist: Real.hasDerivAt_sqrt), (ii) the Ioi FTC again, (iii) the antitone condition. Compare: the telescoping form Σ 1/(k(k+1)) = 1 is FREE-ish in Lean? 1/(k(k+1)) = 1/k − 1/(k+1) telescopes: `Summable` + tsum = 1 — Mathlib probably has this or it's 20 lines. The √2-form piece 3 (12.7279·C₀ + 7.06) breaks the budget by ~0.86–1.09; the sharpened form (12.011·C₀ + 5.93) fits with margin 3.7. The extra cost: the 1/(k√(1+k²)) sum bound (~80-100 lines of integral plumbing). Worth it — it keeps the baked constants.\n\nHmm — wait, actually, alternatively: keep the telescoping form but take the FIRST interval exactly: interval k=1: term ≤ 4.5/(1·√2) = 3.182 (both forms agree at k=1). The √2-form per-interval bound is 4.5√2/(k(k+1)): at k=1: 3.182 ✓ same; k=2: √2-form 4.5√2/6 = 1.0607 vs sharp 4.5/(2√5) = 1.0062... The total per-side: √2-form Σ = 4.5√2·1 = 6.364; sharp: 4.5·1.3346 = 6.006. Difference per side: 0.358; both sides + tail: ~0.72·C₀-independent... hmm the earlier computation: the difference between the two piece-3 totals: (12.7279 − 12.0114)·C₀ + (7.06 − 5.93) = 0.7165·C₀ + 1.13 — at C₀ ≈ 5 (t=10): 4.7 — yes that's the budget-breaking amount. OK so the sharp sum is needed.\n\nAlternatively — a MIDDLE route: avoid the antiderivative entirely by splitting at k = 1: interval k=1 term ≤ 4.5/√2; intervals k ≥ 2: term ≤ 4.5√2/(k(k+1))·(something)... hmm the ratio sharp/√2-form at k: [4.5/(k√(1+k²))]/[4.5√2/(k(k+1))] = (k+1)/(√2·√(1+k²)) = (k+1)/(√(2+2k²)): at k=2: 3/√10 = 0.949; k=3: 4/√20 = 0.894; k→∞: → 1/√2 = 0.707. The total ratio: ~0.94. The savings from the √2-form: 6.364·(1 − 0.94) per side... not clean. The k=1-exact trick: piece3 ≤ count₁·4.5/√2 + Σ_{k≥2} count·4.5√2/(k(k+1)) ≤ C₀·[4.5/√2 + 4.5√2·(1 − 1/2)]·2 + ... = C₀·[3.182 + 4.5√2·0.5]·2 = C₀·[3.182+3.182]·2 — no savings (4.5√2·(Σ_{k≥2} 1/(k(k+1))) = 4.5√2·(1/2) = 3.182 and the k=1 sharp 3.182 — equal!). Because the √2-form is EXACT at k=1 (3.182 = 3.182) — the slack starts at k=2. So splitting k=1 gives nothing. The slack is distributed. So the sharp sum is genuinely needed. OK — the integral plumbing for 1/(x√(1+x²)) is in. Actually hmm — wait, one more alternative: Σ_{k≥1} 1/(k√(1+k²)) ≤ Σ 1/k^{3/2}·(k/√(1+k²))... no: 1/(k√(1+k²)) ≤ 1/k² ⟹ Σ ≤ π²/6 = 1.645 — too big. The antiderivative route it is. OR — hmm, actually: 1/(k√(1+k²)) ≤ 1/(k(k+1))·(k+1)/√(1+k²) and (k+1)/√(1+k²) ≤ √(2(k+1)²/2)... (k+1)² ≤ 2(k²+1) ⟺ k²+2k+1 ≤ 2k²+2 ⟺ 0 ≤ k²−2k+1 = (k−1)² ✓ so (k+1)/√(1+k²) ≤ √2 — that's the D-056 form (consistent). The sharp form needs the integral. Fine.\n\nHmm, wait — actually, let me reconsider. Maybe there's an even simpler decomposition avoiding the antiderivative: Σ_{k≥1} 1/(k√(1+k²)): substitute the integral test with f(x) = 1/(x·(1+x²)^{1/2}) — antitone on [1,∞) (product of antitone positive functions ✓ NO deriv needed! 1/x antitone, 1/√(1+x²) antitone — product of positive antitone is antitone ✓). The integral ∫₁^N dx/(x√(1+x²)): substitute x = 1/u? dx/(x√(1+x²)): u = √(1+x²) ⟹ u du = x dx... x² = u²−1: ∫ dx/(x√(1+x²)) = ∫ (x dx)/(x²√(1+x²)) = ∫ du/(u² − 1) = (1/2)log((u−1)/(u+1)). So the antiderivative = (1/2)·log((√(1+x²)−1)/(√(1+x²)+1)) = log((√(1+x²)−1)/x)·... = log(x) − log(1+√(1+x²))·... let me verify: (1/2)log((u−1)/(u+1)) with u = √(1+x²): (u−1)/(u+1) = (u−1)²/(u²−1) = (u−1)²/x²: (1/2)log((u−1)²/x²) = log((u−1)/x) = log((√(1+x²)−1)/x). And (√(1+x²)−1)/x = x/(√(1+x²)+1) ✓. So F(x) = log(x/(1+√(1+x²))). F'(x) = 1/(x√(1+x²)) ✓. In Lean: hasDerivAt of log(x/(1+√(1+x²))): log-deriv of the ratio: deriv log(g x) = g'/g — g(x) = x/(1+√(1+x²)): g'/g = 1/x − (√')/(1+√): √'(1+x²) = x/√(1+x²): so g'/g = 1/x − (x/√(1+x²))/(1+√(1+x²)) = 1/x − x/(√(1+x²)(1+√(1+x²))) = [√(1+x²)(1+√(1+x²)) − x²]/(x·√(1+x²)(1+√(1+x²))) = [√(1+x²) + 1+x² − x²]/(x·√(1+x²)(1+√)) = (√(1+x²)+1)/(x·√(1+x²)(1+√)) = 1/(x√(1+x²)) ✓. In Lean this is a `HasDerivAt.log` + div/sqrt chain + a field_simp/ring_nf algebraic identity — maybe 40 lines. F(∞) : x/(1+√(1+x²)) → 1 ⟹ F → log 1 = 0. The limit: x/(1+√(1+x²)) → 1 as x → ∞: √(1+x²) ~ x: ratio ~ x/(1+x) → 1: needs a tendsto argument (~20 lines: √(1+x²)/x → 1 via sqrt(1/x²+1) → 1...).\n\nOK. This is all doable but it's a lot of calculus plumbing. The honest assessment: 5f-i's remaining piece 1 + piece 6's digamma + piece 3's interval machine + assembly is ~2 sessions of Lean. Tonight I've done the identity + pieces 2/4/5. Given it's ~1:40 AM, let me finish piece 1 (dirichletC2 ≤ 0.995 — self-contained ~100 lines) and then wrap up the session cleanly. Actually — piece 1 needs: the term-norm form, the summabilities, the head/tail split, the tail integral ∫₃^∞ log x/x² = (log 3+1)/3 (antiderivative −(log x+1)/x — no sqrt! just log and div), the antitone condition, and the numeric fold with log 2/log 3 bounds. That's tractable tonight.\n\nHmm — wait, for piece 1, do I even need the antitone/integral machinery? Alternative: Σ_{n≥4} log n/n² — bound by a DIRECT comparison with a telescoping series? log n/n² vs 1/n^{3/2}: log n ≤ (2/e)·√n ⟹ log n/n² ≤ (2/e)·n^{−3/2}: Σ_{n≥4} n^{−3/2} ≤ ∫₃^∞ x^{−3/2} dx = 2·3^{−1/2} = 1.1547: total ≤ (2/e)·1.1547 = 0.736·1.1547 = 0.8497 — vs the sharp integral 0.6995. Total piece 1: 0.1733 + 0.1221 + 0.8497 = 1.145 > 1.01 budget ✗. Hmm — but wait: with the sharpened piece 3, the constant budget changed: total const was 45.498 with piece 1 = 1.01; if piece 1 = 1.145: total = 45.633 vs the available 48 − (max pinch −1.18)... the constraint: const ≤ 48 − (11.528·LL − 4.699·L)_max = 48 − (−1.18) = 49.18. So the binding constraint is const ≤ 49.18!! Piece 1 = 1.145 gives 45.63 ≤ 49.18 ✓✓ EASY. \n\nOh nice — with the sharpened piece 3, the pinch dissolved (the LL-L function is DECREASING on L ≥ 2.485, max at the boundary = −1.18), so the constant budget is a generous 49.18, and piece 1 can be as big as 1.145 + slack. Then the crude n^{−3/2} comparison suffices for piece 1 — no log integral needed! Let me double-check the Σ_{n≥4} n^{−3/2} ≤ 2/√3 without an integral: hmm — n^{−3/2} ≤ ∫_{n−1}^{n} x^{−3/2} dx (antitone) — still an integral comparison. Simpler: Σ_{n≥4} n^{−3/2} ≤ Σ_{n≥4} 1/(n^{1/2}·(n−1)·n)... hmm. Alternative telescoping: n^{−3/2} ≤ 2(1/√(n−1) − 1/√n)·something? 1/√(n−1) − 1/√n = (√n − √(n−1))/(√n√(n−1)) = 1/(√n√(n−1)(√n+√(n−1))) ≥ 1/(√n·√n·2√n) = 1/(2 n^{3/2})·(√n/√(n−1})... ≈ 1/(2n^{3/2})·(1+1/(2n))·... So n^{−3/2} ≤ 2·(1/√(n−1) − 1/√n)·(√(n−1)/√n) ≤ 2·(1/√(n−1) − 1/√n) — since √(n−1)/√n ≤ 1... wait direction: n^{−3/2} vs 2(Δ): Δ = 1/(√n√(n−1)(√n+√(n−1))) ≥ 1/(√n·√n·2√n) = 1/(2n^{3/2}) ✓ (since √(n−1) ≤ √n and √n+√(n−1) ≤ 2√n). So n^{−3/2} ≤ 2Δ = 2(1/√(n−1) − 1/√n) ✓ TELESCOPING! Σ_{n≥4} n^{−3/2} ≤ 2·(1/√3) = 1.1547 ✓. And the telescoping sum ∑' (1/√(n−1) − 1/√n) from n=4: = 1/√3 (limit) — in Lean: summable via the telescope + tsum of a telescoping difference = first term: there's `Summable` machinery for differences: ∑' (f(n+1) − f(n)) = ... hmm: Σ_{n≥4} (1/√(n−1) − 1/√n) = Σ_{m≥3} (1/√m − 1/√(m+1)) = 1/√3 (since 1/√m → 0). In Lean: the telescoping tsum: `Summable` of a difference where f → 0: there's a lemma `tsum_of_...`? The cleanest: Σ_{m≥3} (f m − f (m+1)) with f m → 0: tsum = f 3: hmm — `Summable.hasSum_iff`... Let me use: the partial sums telescope: Σ_{m=3}^{M} (f m − f(m+1)) = f 3 − f(M+1) → f 3. The tsum = f 3 via `HasSum` of the telescoping series: Mathlib: `hasSum_...`? There might be a direct lemma: `Summable.tsum_eq...`? I don't recall a named telescope-tsum lemma offhand, but the partial-sum form: tsum_eq_of... Alternatively use `Summable.hasSum`... The standard approach: `hasSum_iff_tendsto_nat_of_nonneg`? or the telescope: for f → 0: ∑' m, (f m − f (m+1)) = f 0 -ish. Hmm — there's `tsum_of...`... Actually the cleanest available might be through the integral after all. OR — even simpler: Σ_{n≥4} n^{−3/2} ≤ Σ_{n≥4} 2·(√(n) − √(n−1))/(n·... no.\n\nHmm, hold on — actually the SIMPLEST: Σ_{n≥4} log n/n² ≤ Σ_{n≥4} (2/e)·n^{−3/2} — and Σ_{n≥4} n^{−3/2} ≤ Σ_{n≥4} (1/(n−1)^{1/2} − 1/n^{1/2})·2 — the telescope tsum: in Lean, `Summable (fun n => (1/√(n) − 1/√(n+1)))` and its tsum: there IS a lemma — `tsum_of_...`. Actually `MeasureTheory`... no. The plain fact: for f : ℕ → ℝ with f n → 0: ∑' (f n − f (n+1)) = f 0. I recall this IS in Mathlib as... `Summable.tsum_sub`? no. Hmm: it might be easier to use: ∑'_{n≥4} n^{−3/2} ≤ ∫₃^∞ x^{−3/2} via AntitoneOn.tsum_comp_add_le_integral — the integral ∫₃^∞ x^{−3/2} dx = 2/√3 has antiderivative −2/√x — the FTC route again (same machinery as the log integral but simpler function). The antitone condition for x^{−3/2}: easy (rpow antitone... `Real.rpow_antitoneOn`? or product of antitone: x⁻¹ antitone, x^{−1/2} antitone ⟹ product antitone ✓ no deriv).\n\nOK you know what — piece 1's exact shape (integral vs telescope) I'll decide at build time. The point: with the sharpened piece 3, piece 1's budget is generous (~1.9+), so even Σ_{n≥4} log n/n² ≤ 1.0 suffices. Actually — hold on, even simpler: Λ(n) ≤ log n ≤ (n−1) — way too big. Let me think about what crude bound on dirichletC2 is EASIEST in Lean:\n- dirichletC2 = Σ Λ(n)/n². Head exact: n ≤ 3. Tail Σ_{n≥4}: Λ(n)/n² ≤ log n/n² ≤ (2/e)·n^{−3/2}. Need Σ_{n≥4} n^{−3/2} ≤ 1.2 (say). \n\nReal.rpow-based: n^{−3/2} = 1/(n·√n) ≤ 1/((n−1)·√(n−1))... hmm. Or n^{−3/2} ≤ 2/(n·√(n−1))-ish... The telescoping √ difference is the clean one. Let me check if Mathlib has the telescope-tsum: grep \"tsum_sub_tsum_...|hasSum_..._sub\"? There's `Summable.hasSum` combos... Actually I do recall: `tsum_of_...`? Hmm, there might be a `Real...`? Whatever — I'll find it at build time or prove it via partial sums (Finset.sum_range_sub — the telescoping finset sum EXISTS: `Finset.sum_range_sub (f) (n) : ∑ i ∈ range n, (f (i+1) − f i) = f n − f 0` ✓ that's a standard lemma). Then the tsum via the partial-sum limit: tsum_eq_lim... `HasSum` from tendsto of partial sums: hasSum_iff... use `Summable.hasSum`... Actually: the series Σ (f(n+1) − f(n)) has partial sums f(N) − f(0) → L − f(0) if f → L. So hasSum (fun n => f(n+1) − f n) (L − f 0) via `HasSum` def + the partial-sum identity + tendsto: `hasSum_iff_tendsto_nat_of_summable`? or directly: HasSum f l ↔ Tendsto (partial sums) (𝓝 l) — `hasSum_iff_tendsto_nat_of_nonneg`? The general: HasSum f l ↔ Tendsto (fun N => ∑ n ∈ range N, f n) atTop (𝓝 l) — that's `hasSum_iff_tendsto_nat_of_summable`?? The name... `Summable.hasSum` no... it's `hasSum_iff_tendsto_nat_of_nonneg` (needs nonneg) hmm or for general: `hasSum_iff_tendsto_nat_of_summable`?? I'll find it. The machinery exists; ~40 lines for the telescope.\n\nGiven the sharpened piece 3 makes piece 1 easy, the CRITICAL path is piece 3's sharp sum Σ 1/(k√(1+k²)) ≤ 1.3346 (needs the log-ratio antiderivative) OR... hmm — wait, actually — can piece 3's sum ALSO use a telescope? Σ_k 1/(k√(1+k²)): compare 1/(k√(1+k²)) ≤ 1/k² ≤ ...: telescope √-difference: 1/k² ≤ 1/(k(k−1)) = 1/(k−1) − 1/k (k ≥ 2) ✓! So Σ_{k≥2} 1/(k√(1+k²)) ≤ Σ_{k≥2} 1/k² ≤ Σ_{k≥2} 1/(k(k−1)) = 1. And the k=1 term: 1/√2 = 0.7071. Total ≤ 1.7071 — vs the needed ≤ 1.3346·(something). Hmm — 1.7071 vs 1.3346: the difference in piece 3: 4.5·(1.7071 − 1.3346)·2·C₀ = 3.35·C₀ — too big. But wait — do I need ≤ 1.3346 exactly? Let me recompute the required S₃ from the budget. Piece 3 = 4.5·[S₃·C₀ + S₃·(C₀+0.55) + tail'] = 9·S₃·C₀ + 4.5·(0.55·S₃ + 0.5828). With S₃ = 1.7071: 15.364·C₀ + 4.5·(0.9389+0.5828) = 15.364·C₀ + 6.848. Totals: L: 0.6 + 15.364·0.433 = 7.25; LL: 0.886 + 15.364·0.886 = 14.50; const: piece1 1.15 + 2.7 + (15.364·2.9662 + 6.848) + 0.09 + 0.30 = 1.15+2.7+45.58+6.848+0.09+0.30 = 56.67. Constraint: 14.50·LL − (10.5−7.25)·L + 56.67 ≤ 48?? 14.50·LL − 3.25·L ≤ −8.67 — FALSE (LHS at L=2.485: 14.50·0.91 − 3.25·2.485 = 13.2 − 8.08 = +5.12 > 0). BREAKS badly. So the k=1 exact + k≥2 telescope (S₃ = 1.7071) fails. Need S₃ ≤ ~1.34.\n\nWhat about S₃ via: k=1, k=2, k=3 exact + telescope from k=4? Σ_{k≥4} 1/(k√(1+k²)) ≤ Σ_{k≥4} 1/k² ≤ Σ_{k≥4} 1/(k(k−1)) = 1/3. Head: 1/√2 + 1/(2√5) + 1/(3√10) = 0.7071 + 0.2236 + 0.1054 = 1.0361. Total ≤ 1.0361 + 0.3333 = 1.3694. Hmm — closer. Piece 3 = 9·1.3694·C₀ + 4.5·(0.55·1.3694 + 0.5828) = 12.325·C₀ + 6.016. Totals: L: 0.6+5.337 = 5.937; LL: 0.886+10.918 = 11.804; const: 1.15+2.7+(12.325·2.9662)+6.016+0.09+0.30 = 1.15+2.7+36.56+6.016+0.09+0.30 = 46.82. Constraint: 11.804·LL − 4.563·L + 46.82 ≤ 48 ⟺ 11.804·LL − 4.563·L ≤ 1.18. Pinch: L* = 11.804/4.563 = 2.587 (t = 11.3): value 11.804·log(2.587) − 4.563·2.587 = 11.804·0.9504 − 11.805 = 11.219 − 11.805 = −0.586 ≤ 1.18 ✓ margin 1.77. And boundary L = 2.485: 11.804·0.9103 − 4.563·2.485 = 10.745 − 11.339 = −0.594 ✓. At large L: decreasing ✓. So with S₃ ≤ 1.3694 (k≤3 exact + telescope from 4) it FITS with margin ~1.77 at the pinch. And the telescope Σ_{k≥4} 1/(k(k−1)) = 1/3 is the standard telescoping sum (1/(k(k−1)) = 1/(k−1) − 1/k) — the Finset.sum_range_sub + limit machinery — and the per-term bound 1/(k√(1+k²)) ≤ 1/k²·(1) hmm: 1/(k√(1+k²)) ≤ 1/(k(k−1)) ⟺ k−1 ≤ √(1+k²) ✓ (k−1 ≤ k ≤ √(1+k²)·... √(1+k²) ≥ k > k−1 ✓). So per-term: 1/(k√(1+k²)) ≤ 1/(k(k−1)) for k ≥ 2 ✓ (via 1/k² ≤ 1/(k(k−1)) and 1/(k√(1+k²)) ≤ 1/k² since √(1+k²) ≥ k). All elementary — NO integral needed!! And the k=2,3 exact terms: 1/(2√5) and 1/(3√10) — with √5 ≥ 2.23, √10 ≥ 3.16 (rational lower bounds: (2.23)² = 4.9729 ≤ 5 ✓ so √5 ≥ 2.23; (3.16)² = 9.9856 ≤ 10 ✓ √10 ≥ 3.16): 1/(2·2.23) = 0.2242, 1/(3·3.16) = 0.1055. Head ≤ 0.7072 (1/√2: √2 ≥ 1.414: 1/√2 ≤ 1/1.414 = 0.70722) + 0.2242 + 0.1055 = 1.0369. Total S₃ ≤ 1.0369 + 1/3 = 1.3702 ≤ 1.3703. Pinch margin ~1.76. GOOD ENOUGH — no integral plumbing for piece 3's sum!\n\nLet me redo the FULL honest constant assembly with this S₃ to nail the final numbers:\n- piece 1: Z₂ ≤ 0.9955 (log2 ≤ 0.6932, log3 ≤ 1.1: (0.6932)/4 + 1.1/9 + (1.1+1)/3 = 0.1733+0.12222+0.7 = 0.9955) — via the ∫₃^∞ log/x² integral — OR the crude route: Σ_{n≥4} Λ/n² ≤ Σ log n/n² ≤ Σ (2/e)·n^{−3/2} ≤ (2/e)·(telescope 2/√3) = (2/e)·1.1547 = 0.85: piece 1 ≤ 0.1733 + 0.1222 + 0.85 = 1.1455. With the generous budget, use the crude route (no integral!): the √-telescope Σ n^{−3/2} ≤ 2/√3: n^{−3/2} ≤ 2(1/√(n−1) − 1/√n) ⟺ 1/(n√n) ≤ 2(√n−√(n−1))/(√n√(n−1)) ⟺ √(n−1) ≤ 2√n(√n−√(n−1))·... 2(√n−√(n−1)) = 2/(√n+√(n−1)): so need 1/(n√n) ≤ 2/(√n√(n−1)(√n+√(n−1))) ⟺ √(n−1)(√n+√(n−1)) ≤ 2n ⟺ √(n(n−1)) + (n−1) ≤ 2n ⟺ √(n(n−1)) ≤ n+1 ✓ (n(n−1) = n²−n ≤ n²+2n+1 ✓). Elementary ✓. And 2/e ≤ 0.7358 (e ≥ 2.718: 2/2.718 = 0.7359). And log n ≤ (2/e)·√n ⟺ log(√n)·... log n/√n ≤ 2/e ⟺ (log n)/n^{1/2} max at n = e²: value 2/e ✓ — the standard \"log x ≤ x^a/a\" — Real.log_le_rpow_div! (session 034's lemma: log x ≤ x^ε/ε): with ε = 1/2: log n ≤ 2·√n·... wait: log n ≤ n^{1/2}/(1/2) = 2√n. That's log n ≤ 2√n NOT (2/e)√n. The 2/e form: log n ≤ (2/e)·√n ⟺ log(n)/√n ≤ 2/e — from log_le_rpow_div with ε = 1/2: log n ≤ 2·n^{1/2} — the e-form is sharper but log_le_rpow_div gives 2·√n. Hmm — 2√n vs (2/e)√n = 0.736√n: the rpow_div lemma is lossy by e. With log n ≤ 2√n: Σ_{n≥4} log n/n² ≤ 2·Σ n^{−3/2} ≤ 2·(2/√3) = 4/√3 = 2.309: piece 1 ≤ 0.1733+0.1222+2.309 = 2.60 — too big? Budget check with S₃ = 1.3702: const total = piece1 2.60 + 2.7 + 36.56 + 6.016 + 0.09 + 0.30 = 48.27 — vs the available 48 − (pinch max −0.586) = 48.59. 48.27 ≤ 48.59 ✓ FITS by 0.32! TIGHT. Hmm. With piece 1 = 1.1455 (the (2/e) form): 46.82, fits by 1.77. The (2/e) form: log n ≤ (2/e)√n — from log_le_rpow_div... no. From the max of log x/√x: provable via deriv (log x/√x)' = (1/x·√x − log x/(2√x))/x = (1 − (log x)/2)/x^{3/2} — zero at x = e² — max value (log e²)/e = 2/e. The deriv argument: ~30 lines. OR use log_le_rpow_div with ε = 1/4: log n ≤ 4·n^{1/4}: Σ_{n≥4} 4/n^{7/4}: ≤ 4·∫₃^∞ x^{−7/4}·... telescope: n^{−7/4} ≤ (4/3)(1/(n−1)^{3/4} − 1/n^{3/4})? similar √-telescope with rpow 3/4: (n−1)^{−3/4} − n^{−3/4} = ... ≈ (3/4)n^{−7/4}: so n^{−7/4} ≤ (4/3)(...): Σ_{n≥4} ≤ (4/3)·3^{−3/4} = (4/3)·0.4387 = 0.585. ×4 = 2.34. no better. OR piece 1 via the sharp integral after all (∫₃^∞ log x/x² = (log 3+1)/3 — the antiderivative is clean (no sqrt!): F = −(log x + 1)/x): piece 1 ≤ 0.9955. Given the budget tightness (0.32 with the crude route), the sharp integral is worth it: piece 1 ≤ 0.9955 gives total 46.82, margin 1.77.\n\nHmm — this is all getting tight. Let me consolidate the FINAL honest assembly (all pieces with Lean-feasible bounds):\n\n- piece 1: ≤ (log 2)/4 + (log 3)/9 + (log 3 + 1)/3 ≤ 0.1733 + 0.1223 + 0.7 = 0.9956 (sharp integral; log 2 ≤ 0.6932 via log_two_lt_d9; log 3 ≤ 1.1 via e^1.1 ≥ 3.0013 partial sum).\n- piece 2: ≤ 0.6L + 0.886LL + 2.7 (P1).\n- piece 3: ≤ 4.5·[S₃·C₀ + S₃·(C₀ + 0.55) + 0.5828] with S₃ ≤ 1.3703, C₀ = C0hat(t+1) ≤ 0.433(L + 1/12) + 0.886(LL + 0.034) + 2.9 ≤ 0.433L + 0.886LL + 2.9662 (the L' conversion — hmm 0.433/12 = 0.0361, 0.886·0.034 = 0.0301: 2.9+0.0361+0.0301 = 2.9662 ✓): piece 3 ≤ 9·1.3703·(0.433L + 0.886LL + 2.9662) + 4.5·(0.55·1.3703 + 0.5828) = 12.333·(0.433L + 0.886LL + 2.9662) + 4.5·1.3365 = 5.340L + 10.927LL + 36.585 + 6.014 = 5.340L + 10.927LL + 42.599.\n  Hmm wait: 9·S₃·C₀ = 9·1.3703·C₀ = 12.3327·C₀ (the two sides: left S₃·C₀, right S₃·(C₀+0.55)): 4.5·(S₃·C₀ + S₃·C₀ + 0.55·S₃ + 0.5828) = 4.5·(2·1.3703·C₀ + 0.7537 + 0.5828) = 4.5·(2.7406·C₀ + 1.3365) = 12.333·C₀ + 6.014 ✓.\n- pieces 4/5: 0.045 + 0.045 = 0.09.\n- piece 6: ≤ 0.30 (the sharp digamma remainder route).\nTOTALS: L: 0.6 + 5.340 = 5.940; LL: 0.886 + 10.927 = 11.813; const: 0.9956 + 2.7 + 42.599 + 0.09 + 0.30 = 46.685.\nConstraint: 11.813·LL − (10.5 − 5.940)·L + 46.685 ≤ 48 ⟺ 11.813·LL − 4.560·L ≤ 1.315 for L ≥ 2.485. Pinch: L* = 11.813/4.560 = 2.590 (t = e^{2.590} − 2 = 11.33): value 11.813·log(2.590) − 4.560·2.590 = 11.813·0.9517 − 11.810 = 11.242 − 11.810 = −0.568 ≤ 1.315 ✓ margin 1.88. Boundary L = 2.485: 11.813·0.9103 − 4.560·2.485 = 10.753 − 11.332 = −0.579 ✓. Decreasing thereafter ✓. FITS with margin ≈ 1.9.\n\nOK so the final assembly fits 10.5/48 with comfortable margin (~1.9) using:\n- piece 1 sharp integral (0.9956),\n- piece 3 with S₃ ≤ 1.3703 (k≤3 exact + telescope from k=4),\n- the tail bound 0.5828, the C₀(2t+1) ≤ C₀ + 0.55, the L'/L conversion,\n- piece 6 ≤ 0.30.\n\nAll bounds elementary except piece 1's integral (clean antiderivative) and piece 6's digamma remainder (level-2 EM).\n\nWAIT — one more check on piece 6's constant: D-056 got 0.29; budget 0.30. The sharp form: ½|ψ(s/2) − ψ(s₀/2)| with ψ(w) = log w − 1/(2w) + r(w), |r| ≤ 1.2/|w|²: |log(w/w₀)|: w = s/2, w₀ = s₀/2: |w − w₀| = |s−s₀|/2 ≤ 2.25; |w₀| ≥ t/2 ≥ 5: |log(w/w₀)| ≤ |w/w₀ − 1|·(1/(1−|w/w₀−1|)) hmm: |log(1+u)| ≤ |u|/(1−|u|) for |u| < 1 (provable? |log(1+u)| ≤ −log(1−|u|) — hmm — the standard: |log(1+u)| ≤ 2|u| for |u| ≤ 1/2 — Mathlib has `Complex.norm_log_one_add_le`? `Complex.abs_log_one_add_le`? There's `Complex.norm_log_one_add_le (h : ‖z‖ ≤ r)...`? I recall `Complex.norm_log_one_add_le : ‖log (1 + z)‖ ≤ ...`? hmm — there's `Complex.abs_log_one_add_lt`? In Mathlib: `Complex.norm_log_one_add_le (hz : ‖z‖ < 1) : ‖Complex.log (1 + z)‖ ≤ -Real.log (1 - ‖z‖)`? something like that. And −log(1−x) ≤ 2x for x ≤ 1/2 (Real.log... via log(1−x) ≥ −2x ⟸ ...). Then |u| = |w/w₀ − 1| = |w−w₀|/|w₀| ≤ 2.25/(t/2) = 4.5/t ≤ 0.45 (t ≥ 10): |log(w/w₀)| ≤ 2·0.45·... hmm wait — log(w/w₀) = log(1 + (w−w₀)/w₀): |·| ≤ 2·|u| with |u| ≤ 4.5/t·(1/2)·2 — hold on: |u| = |w−w₀|/|w₀| ≤ 2.25/(t/2) = 4.5/t. At t = 10: 0.45. |log(1+u)| ≤ 2|u| = 0.9?? D-056 had ½|log(s/s₀)| ≤ 0.23 ⟹ |log| ≤ 0.46. My 2|u| = 0.9 is 2× lossy. The tighter: |log(1+u)| ≤ |u|/(1−|u|) = 0.45/0.55 = 0.818 — still lossy vs 0.46. The arg/modulus split (D-056): |log(w/w₀)|² = (log|w/w₀|)² + (arg)²: |log|w/w₀|| ≤ |1 − |w/w₀||/(1−...)·... |w|/|w₀|: |w| ≥ t/2 − ... |w| ≥ |im w| = t/2 (im w = t/2 ✓); |w₀| ≥ t/2: ||w|−|w₀|| ≤ |w−w₀| ≤ 2.25: |log(|w|/|w₀|)| ≤ 2.25/(t/2 − 2.25)·... ≤ 2.25/2.75 = 0.818?? hmm at t=10: |w₀| ≥ 5, |w| ≥ 5 − 2.25 = 2.75: |log ratio| ≤ max(log(7.25/5), log(5/2.75)) = max(0.371, 0.598) = 0.598. arg: |arg(w/w₀)| ≤ |w−w₀|/|w₀|·... arg difference ≤ 2.25/5 = 0.45 rad? (the angle between w and w₀ — both have im = t/2: the ratio w/w₀ = (s/2)/(s₀/2) = s/s₀: arg(s/s₀): the points s, s₀ both at height t: arg(s/s₀) = arg s − arg s₀: |arg s − arg s₀| ≤ ... both near the imaginary axis: arg s ≈ π/2 − (σ)/t-ish: |arg s − arg s₀| ≈ |σ − 2|/t ≤ 4.5/t = 0.45 ✓. So |log(s/s₀)| ≤ √(0.598² + 0.45²) = √(0.3576+0.2025) = √0.560 = 0.748. ½·0.748 = 0.374. Plus ½·(1/(2w)−1/(2w₀)) ≤ ½·(1/2)·|w−w₀|/(|w||w₀|)·2 = ½·(1/2)·2.25/(2.75·5)·2·... let me redo: |1/(2w) − 1/(2w₀)| = (1/2)·|w₀−w|/(|w||w₀|) ≤ (1/2)·2.25/(2.75·5) = 1.125/13.75 = 0.0818; ½ of that: 0.041. Plus ½|r-diff|: |r(w)| + |r(w₀)| ≤ 1.2/|w|² + 1.2/|w₀|² ≤ 1.2/2.75² + 1.2/25 = 1.2/7.5625 + 0.048 = 0.1587+0.048 = 0.2067; ½·that = 0.103. Total piece 6: 0.374 + 0.041 + 0.103 = 0.518?!? Over the 0.30 budget. Hmm. The slack: my |log ratio| bound 0.598 is lossy (D-056 had ½|log| ≤ 0.23 ⟹ |log| ≤ 0.46 — via the arg ≤ 4.5/|t| AND |log|s/s₀|| ≤ 0.02: √(0.46²... 0.02² + 0.45² = 0.2029: √ = 0.4504; ½ = 0.225 ✓). The |log|s/s₀|| ≤ 0.02: |s|/|s₀|: |s| = √(σ²+t²), |s₀| = √(4+t²): ratio² = (σ²+t²)/(4+t²) ∈ [(t²+... for σ ∈ [−2.5,3]: σ² ≤ 9: ratio² ≤ (9+t²)/(4+t²) ≤ 9/4: |s|/|s₀| ≤ 1.5: |log ratio| ≤ log 1.5 = 0.405?? D-056 said 0.02?! Let me recheck: |s|/|s₀| for σ ∈ [−2.5, 3], t = 10: σ = 3: |s| = √(9+100) = 10.44; |s₀| = √104 = 10.198: ratio 1.024: log = 0.0237. σ = −2.5: |s| = √(6.25+100) = 10.307: ratio 1.0107: log = 0.0106. So |log ratio| ≤ 0.024 at t = 10 ✓ D-056's 0.02-ish. My |w|/|w₀| bound used |w| ≥ |im w| only — lossy; the correct one uses |w| = |s|/2 ≥ √(t²+0)/2 = t/2·... |s| ≥ t (|s| ≥ |im| = t ✓) and |s| ≤ √(9+t²) ≤ t·√(1+9/100) = 1.045t·... ratio |s|/|s₀| ∈ [t/√(4+t²)·... let me just: |s|/|s₀| ∈ [√(t²)/√(t²+4)·(min over σ...)]: min |s| = t (σ = 0 ∈ range ✓), min |s₀| = √(4+t²): ratio_min = t/√(t²+4) ≥ 10/√104 = 0.9806: log ≥ −0.0196. max |s| = √(9+t²) (σ = 3), |s₀| = √(4+t²): ratio = √(9+t²)/√(4+t²) ≤ √(109/104) = 1.0237: log ≤ 0.0234. So |log|s/s₀|| ≤ 0.024 at t=10, decreasing ✓. arg: |arg s − arg s₀| — both in the upper half plane: arg s = π/2 − arctan(σ/t)-ish: |arg s − arg s₀| = |arctan(σ/t) − arctan(2/t)| ≤ |σ−2|/t ≤ 4.5/t = 0.45 (arctan Lipschitz 1/(1+x²) ≤ 1). Hmm — is |arg s − arg s₀| ≤ |σ − 2|/t right? arg s = atan2(t, σ): for σ > 0: arg s = arctan(t/σ)... ugh — the clean bound: |arg(s/s₀)| = |arg(1 + (s−s₀)/s₀)| ≤ 2·|s−s₀|/|s₀|·... For |u| ≤ 1/2: |arg(1+u)| ≤ ... the log: |log(1+u)| ≤ 2|u| covers both. Alternatively just use |log(1+u)| ≤ 2|u| with |u| = |s−s₀|/|s₀| ≤ 4.5/10.198 = 0.441: |log(s/s₀)| ≤ 2·0.441 = 0.883 — too lossy. The tight route: |log(1+u)| ≤ |u|/(1−|u|) = 0.441/0.559 = 0.789 — still lossy. D-056's arg/modulus split gives 0.45. The Mathlib lemma for the split: Complex.log (1+u) = log|1+u| + i·arg(1+u): ‖log(1+u)‖ = √(log²|1+u| + arg²): needs the arg bound |arg(1+u)| ≤ ... For |u| < 1: |arg(1+u)| ≤ arcsin(|u|)-ish ≤ 2|u|·... Hmm — actually a cleaner classical bound: |log(1+u)| ≤ |u|·(1 + |u|/2 + |u|²/3+...) = |u|·(−log(1−|u|))/|u|·... = −log(1−|u|)·... the power series: log(1+u) = Σ u^k/k·(−1)^{k+1}: |log(1+u)| ≤ Σ |u|^k/k = −log(1−|u|) ✓ (norm of the series ≤ the series of norms — needs the absolute convergence — fine for |u| < 1). −log(1−x) ≤ x·(1 + x/2·(1/(1−x))·...) ≤ x/(1−x) ✓. So |log(s/s₀)| ≤ −log(1−0.441) = 0.581·... hmm −log(0.559) = 0.582. Still 0.582 vs D-056's 0.45. The difference: D-056 separates modulus (0.024) and arg (0.45) and takes the NORM of the complex log: √(0.024² + 0.45²) = 0.451 — the Pythagorean saving. To get the arg bound in Lean: |arg(1+u)| ≤ 2|u| for |u| ≤ 1/2-ish — is there a Mathlib lemma? `Complex.abs_arg_le...`? There's `Complex.abs_arg_le_pi_div_two`? or the abs of the imaginary part of log: |Im(log(1+u))| = |arg(1+u)| ≤ |log(1+u)|... circular. Hmm. There might be `Complex.norm_log_one_add_le`... \n\nOK — piece 6's exact form needs care but the budget: the total const budget is 48 − (pinch max) ≈ 48 + 0.57 = 48.57 (the pinch LL-term is NEGATIVE at the max, so the constraint is const ≤ 48 + 0.57·... — wait no: the constraint is 11.813·LL − 4.560·L + const ≤ 48 for ALL L ≥ 2.485; the max of (11.813·LL − 4.560·L) is −0.568; so const ≤ 48 − (−0.568) = 48.568. My pieces: 0.9956 + 2.7 + 42.599 + 0.09 + p6 ≤ 48.568 ⟺ p6 ≤ 2.18. So piece 6 has budget 2.18, not 0.30!! (D-056's 0.29 was part of HIS fold where the constant 47.84 left 0.16... his fold was tight differently.) With my sharper piece 3 (S₃ = 1.3703), the piece-6 budget is 2.18 — the CRUDE digamma bound (½|ψ-diff| ≤ ½|log(w/w₀)| + ½·(remainder sums)) with even a lossy remainder fits: |ψ(w)−ψ(w₀)| ≤ |log(w/w₀)| + |r(w)| + |r(w₀)| + |1/(2w)−1/(2w₀)|: with 5d's crude ‖ψ(w) − log w‖ ≤ 3: |ψ-diff| ≤ |log(w/w₀)| + 6 — too big (6 > 2·2.18). With the middle route: ψ(w) = log w − 1/(2w) + r with |r| ≤ C/|w|²... the level-2 EM gives |r| ≤ (1/12)·∫₀^∞ dx/|x+w|³·... For |im w| ≥ 5: |x+w| ≥ ... the integral ∫₀^∞ dx/|x+w|³: |x+w| ≥ √(x² + 25)... ∫₀^∞ dx/(x²+25)^{3/2} = [x/(25·√(x²+25))]₀^∞ = 1/25: so |r(w)| ≤ (1/12)·(1/25)·2?... hmm the EM form: ψ(w) = log w − 1/(2w) − ∫₀^∞ B̃₂(x)/(x+w)³ dx·(some factor): |B̃₂| ≤ 1/12: |∫| ≤ (1/12)·∫₀^∞ dx/|x+w|³ = (1/12)·(1/|im w|²)·∫₀^∞ du/(u²+1)^{3/2}·(u = x/|im|) — ∫₀^∞ du/(1+u²)^{3/2} = 1: so |r(w)| ≤ 1/(12·|im w|²)·... = 1/(12·(t/2)²) = 1/(3t²)·... hmm wait: ∫₀^∞ dx/|x+w|³ with |x+w| ≥ √(x² + (t/2)²): ∫₀^∞ dx/(x²+c²)^{3/2} = 1/c² (c = t/2): so |r| ≤ (1/12)·(1/c²) = 1/(12·(t/2)²)·... = 4/(12t²) = 1/(3t²). At t = 10: 1/300 = 0.0033!! Tiny. So piece 6: |ψ(w)−ψ(w₀)| ≤ |log(w/w₀)| + (1/2)|1/w − 1/w₀| + 2/(3t²)·... ≤ 0.582 + 0.0818 + 0.0067 = 0.67; ½·0.67 = 0.335 ≤ 2.18 ✓✓ EASY. Even the lossy |log(1+u)| ≤ −log(1−|u|) = 0.582 works. GREAT — piece 6 is comfortable with the level-2 EM remainder (the LiRBound b2Fun machinery) + the crude log bound. \n\nSo the full 5f assembly is FEASIBLE with margin ~1.9, all pieces elementary-ish. The remaining big piece is piece 3 (the interval machine). Piece 1's integral (∫ log x/x²) — clean antiderivative.\n\nLet me now update D-069 §3 with these refined constants (the S₃ telescope form, the budgets) — actually the design doc says enough; the journal will record the refinements. Let me continue building: piece 1 next (dirichletC2 ≤ 0.9956... let me set the target: 0.1733+0.1223+0.7 = 0.9956 — prove dirichletC2 ≤ 0.9956). Actually — for Lean convenience, let me use the bound dirichletC2 ≤ 1 (rounder)! Budget check: piece 1 ≤ 1: total const = 1 + 2.7 + 42.599 + 0.09 + 0.335 = 46.724 ≤ 48.568 ✓ margin 1.84. So dirichletC2 ≤ 1 suffices!! And that's cleaner to prove (the fold: (log 2)/4 + (log 3)/9 + (log 3+1)/3 ≤ 1 ⟺ with log 2 ≤ 0.6932, log 3 ≤ 1.1: 0.1733+0.1223+0.7 = 0.9956 ≤ 1 ✓). \n\ndirichletC2 ≤ 1. That's the target. The steps:\n1. term-norm form: ‖LSeries.term Λ 2 n‖ = if n = 0 then 0 else (Λ n)/n² (real-valued).\n2. Summable g (g n = Λ n / n²): from the LSeries abs-summability — how did norm_logDeriv_zeta_le_dirichlet handle it? Let me look at its proof for the summability input.\n3. g n ≤ log n/n² (vonMangoldt_le_log).\n4. Σ' g ≤ head + tail with tail ≤ ∫₃^∞ log x/x² = (log 3+1)/3 ≤ 0.7.\n\nFor step 2, let me read norm_logDeriv_zeta_le_dirichlet's proof to reuse its summability.","signature":""},{"type":"text","text":"Piece 1 next. Checking how `norm_logDeriv_zeta_le_dirichlet` handles the summability (for reuse)."},{"type":"tool_use","id":"Read_159","name":"Read","input":{"file_path":"D:\\Python\\Quantum\\research\\lean\\NguyenRH1\\NguyenRH1\\LiCircleBound.lean","offset":206,"limit":45},"extra_content":null}]