run_all.py — src/21-gravity

The script src/21-gravity/run_all.py of the validation package of the paper 21-grav, rendered with an anchor per line. ▶ run the predicates on Google Colab.

21-gravity ledgersrc/21-gravity/run_all.py · 1.5 KBrun_all.pyColab
1"""2run_all.py — the 21-gravity validation package, end to end3===========================================================4Runs the twenty-one scripts of the suite through the registry (gravcommon), writes results.json — one record per5family, carrying the paper's ledger row(s) it witnesses — and exits nonzero if any family fails. Python 3.10+ with6numpy and sympy (mpmath); ≈ 1 minute (validate_branch's nonlinear solves and validate_fluxnoise's simulation dominate).78    python3 run_all.py910Families (one per script; the twelve of the paper's original suite first, then the eight of the round-01/0211revisions, then the uniqueness proof):12    newton ppn strongfield fp_gauge branch fluxnoise rar deepregime radiative orderone rotating primordial13    2pn 1pn_eih binding counting defect inertia deepregime_orbit fold_echo14    fierz_pauli15"""16import sys, time17import gravcommon1819FAMILIES = ["grav." + s for s in [20    "newton", "ppn", "strongfield", "fp_gauge", "branch", "fluxnoise", "rar", "deepregime", "radiative", "orderone", "rotating", "primordial",21    "2pn", "1pn_eih", "binding", "counting", "defect", "inertia", "deepregime_orbit", "fold_echo",22    "fierz_pauli"]]2324def main():25    t0 = time.time()26    for fam in FAMILIES:27        print(f"\n— {gravcommon.script_of(fam)}.py")28        gravcommon.run_block(fam)29    ok = gravcommon.summary(write=True)30    print(f"{len(gravcommon.RESULTS)} families, {len(gravcommon.MICRO)} micro-checks, {time.time() - t0:.0f} s; results.json written")31    sys.exit(0 if ok else 1)3233if __name__ == "__main__":34    main()35