README.md
4.4 kB · markdown
design-zeta
- The Dirichlet series of a digit design,
zeta_F(s) = sum_(n in S_F) n^(-s)over the base-baseintegers whose digits all lie in a digit setF, continued to the whole plane and read for its zeros. - Abscissa
alpha = log_base fill,fill = card F; the object is Burnol 2026'sK(s), and the continuation is his Proposition 4.1 in a peeled form. - Peeling: with
E_j(w)the sum over the exactly-j-digit elements andG_P(w) = sum_(j >= P) E_j(w), the digit map gives(1 - fill base^(-w)) G_P(w) = E_P(w) + sum_(l >= 1) binom(-w, l) base^(-w-l) gamma_l G_P(w+l)withgamma_l = sum_(a in F) a^l, andzeta_F(w) = D_(P-1)(w) + G_P(w)for the finite Dirichlet polynomialD_(P-1)overS_Fbelowbase^(P-1). - The
l-series has ratiomax F/base^P, so the peel depth buys the convergence; the small quantityG_Pis carried directly and never as a difference of two large ones. - Truncation is proved and propagated:
abs(G_P(w)) <= k_1 (fill base^(-Re w))^(P-1)/(1 - fill base^(-Re w))bounds the base of the ladder, a binomial majorant with a geometric remainder bounds thel-cut, and the same recursion that carries the value carries the bound. - Every printed value carries its bound, the census included: the ladder raises rather than returns when the requested tolerance is not reached, and the census prints the largest bound it met anywhere on its contour beside the largest phase step.
- Residues come off the same ladder: at
s_(m,j) = alpha - m + 2 pi i j/log basethe factor1 - fill base^(-s)has derivativelog base, so the residue is the ladder numerator overlog base.
THE CENSUS
- The census reads the Lyndon cofactor
Z(s) = zeta_F(s)(1 - fill base^(-s))and notzeta_F. The level-mdenominator of the ladder is1 - fill base^(-(s+m)), soZis analytic onRe s > alpha - 1, every zero ofzeta_Fright of that line is a zero of one analytic function, and no pole-free strip is needed. - One strip,
alpha - 0.92 < Re s < alpha + 3.02,0.02 < Im s < 60, split atRe s = alphaexactly. The two halves are therefore right of the abscissa and left of it with nothing unscanned between them; the stated strip is the computed strip and its edges are printed with the count. - Below
Re s = alpha - 0.92the ladder cannot reach tolerance against the cofactor's own pole lineRe s = alpha - 1, so that is the left edge and the left-hand count is a count on the strip actually scanned. - The phase is accumulated along an adaptively refined contour that halves any segment whose principal-branch step exceeds one radian; a box of winding one is bisected by quadrant and polished by Muller.
- The count is Verified and not Proved. The largest surviving phase step is printed, but nothing here bounds
zeta_F'/zeta_Fon the contour, so the argument principle is resolved and not certified and a zero pair closer than the surviving spacing would stay invisible.
RUN
uv run python research/lab/py/design-zeta/design_zeta.pyuv run python research/lab/py/design-zeta/design_zeta.py --fullruns the census toIm s = 60and adds the base-10 columns;--y10=40caps the base-10 height alone.- Prints only, writes nothing.
CONTROLS
- Base 2 on the full digit set is the whole integer line, so
zeta_Fiszetathere. The engine matches mpmath'szetato the printed bound ats = 2, at the first zero, at0.3 + 40i, at-1 + 2iand at0.5 + 100i, gives residue exactly1atalpha = 1, and gives residue zero atalpha + 2 pi i/log 2, where the design family has a pole and the integers do not. - That column is censused on BOTH sides of its abscissa
alpha = 1, and each side names the object it counts. Zeros ofzetaright of the abscissa,alpha + 0.02 < Re s < alpha + 3.02: winding zero, which is what the Euler product forbids, now computed and not quoted. Zeros ofzetaleft of it,alpha - 0.98 < Re s < alpha - 0.02: exactly the first thirteen belowIm s = 60, six of them belowIm s = 40. - The cofactor is a different object on that column and is counted separately.
1 - 2 base^(-s)has teeth exactly ONRe s = alpha,floor(T log base/2 pi)of them below heightT, so the one-strip cofactor count reads19 = 13 + 6atIm s < 60and never puts a zero ofzetaright ofRe s = 1. - The residues at
base = 3reproduce the certified interval enclosures oflab/py/burnol-residuedigit for digit on bothF = {0,1}andF = {0,2}, by a route that shares no code with them.