compute_all.py

back to table · edit · history · where entries came from · files · download

716 bytes, as of the version from 2026-11-02 11:04 (current). Recorded here, not run.

import json,time
import numberdb.sage as numberdb
import mpmath as mp
from generate import compute,identities
from sage.env import SAGE_VERSION
print(json.dumps({'versions':{'sage':SAGE_VERSION,'mpmath':mp.__version__,'numberdb':numberdb.__version__}}),flush=True)
for key in identities():
    start=time.monotonic()
    a=compute(key,140);b=compute(key,190)
    with mp.workdps(200):
        delta=abs(mp.mpf(a)-mp.mpf(b))
        agreement='exact' if delta==0 else mp.nstr(-mp.log10(delta/max(1,abs(mp.mpf(b)))),8)
    assert agreement=='exact' or mp.mpf(agreement)>115
    print(json.dumps({'k':key,'at140':a,'at190':b,'relative_agreement_digits':agreement,'seconds':round(time.monotonic()-start,3)}),flush=True)