# Author: David Niedbala Giraudin (ORCID 0009-0009-1526-1178), independent researcher, France. # Ancillary file of the note 'The Schur-Siegel-Smyth trace problem: the lower bound 1.8022246'. # Written with the assistance of an AI system (Claude, Anthropic). # Independent non-rigorous cross-check: F at chosen points by direct numerical integration (mpmath), # with g read from the certificate as a piecewise-linear density (no closed-form potential formulas). import json, sys, mpmath as mp from fractions import Fraction as Fr mp.mp.dps = 40 c = json.load(open(sys.argv[1])) e = [mp.mpf(Fr(x).numerator)/Fr(x).denominator for x in c['nodes']] rho = [mp.mpf(Fr(x).numerator)/Fr(x).denominator for x in c['rho']] lamQ = [mp.mpf(Fr(x).numerator)/Fr(x).denominator for x in c['lamQ']] lam = mp.mpf(Fr(c['lambda']).numerator)/Fr(c['lambda']).denominator IS = mp.mpf(sys.argv[2]) # I(g)/s from the rigorous checker N = len(e) - 1 gv = [mp.mpf(0)]*(N+1) for k in range(1, N): gv[k] = rho[k-1]*2/(e[k+1]-e[k-1]) s = sum(rho) def Ug(x): tot = mp.mpf(0) for k in range(N): a, b = e[k], e[k+1] if gv[k] == 0 and gv[k+1] == 0: continue # integrate in t = y - x so that the singularity sits at t = 0 exactly f = lambda t: mp.log(abs(t))*(gv[k]+(gv[k+1]-gv[k])*(x+t-a)/(b-a)) if a < x < b: tot += mp.quad(f, [a-x, 0, b-x]) else: tot += mp.quad(f, [a-x, b-x]) return tot for xs in sys.argv[3:]: x = mp.mpf(xs) val = x - lam + IS - 2*Ug(x) for Q, l in zip(c['A'], lamQ): if l: val -= l*mp.log(abs(mp.polyval([mp.mpf(q) for q in Q], x))) print(f"F({xs}) = {mp.nstr(val, 12)}", flush=True) print("mass s =", mp.nstr(s, 15))