Skip to content

Fix mathematical correctness across modules; add errata + verification anchors - #1

Merged
ericrihm merged 1 commit into
mainfrom
fix/math-correctness-audit
May 31, 2026
Merged

Fix mathematical correctness across modules; add errata + verification anchors#1
ericrihm merged 1 commit into
mainfrom
fix/math-correctness-audit

Conversation

@ericrihm

Copy link
Copy Markdown
Owner

Mathematical correctness audit

An independent, adversarial re-audit of every quantitative claim in the library
(symbolic and discrete) turned up 29 confirmed errors, ranging from two
critical coefficient bugs to documentation/code sign mismatches. Each is fixed
in source or — where the correction is research-level — flagged honestly in-code
with an # ERRATA <ID> tag. The full record, including how we caught each one
and an invitation to contribute corrections, is in ERRATA.md.

Critical

  • Fefferman–Graham g₄ carried a spurious 1/(n−4) on the algebraic
    g₂² term (that pole belongs only on the Bach differential term) and used
    instead of 1/16 at n=4. Verified against the exact 1/16 g₀ on the
    hyperbolic filling of Sⁿ.
  • Renormalized volume v₂ was −1/(n−2) J; correct is −½J
    (n-independent). The two coincide at n=4, which masked the bug.

Major (selected)

  • Conformal Laplacian P₂ was the bare Laplacian — added the curvature
    term −(n−2)/(4(n−1)) R that makes it conformally covariant.
  • n=3 holographic stress tensor was not traceless despite the "no anomaly"
    claim; coefficient (3/2)J → J.
  • Discrete H²−K was mislabeled as the 4D GJMS Q₄ and the README claimed
    its mesh mean → 6; it is the Willmore integrand and → 0. Relabeled, and a
    false Q₄ = 2K² − 2KH² "identity" removed.
  • Discrete Bach proxy rationale corrected (stiffness vs pointwise
    bi-Laplacian); added a pointwise=True option.

Plus minor/convention items (tractor μ-slot weight, Bach 1/(n−3) docstring,
Carroll connection scope + symmetry-predicate completeness, rank check, dead
code, Q₂ normalization caveat).

Meta-finding

In most cases the code was right and the prose was wrong, or vice-versa — and
every existing test that touched a buggy function used flat / n=2 / n=4
cases where the bug is invisible
. That's why the bugs survived, and why
docs/TOOLING_GAPS.md proposes a Sage-execution CI
harness on curved, non-conformally-flat anchors.

Tests & docs

  • 3 new discrete regression anchors (tests/test_discrete/test_errata_anchors.py),
    160 tests total; PyTorch suite passes.
  • New: ERRATA.md, docs/TOOLING_GAPS.md, README "Verify it yourself" +
    "Contributing corrections".

Note: the SageMath-side tests were not executed in the authoring
environment
(no Sage available); the symbolic edits are syntax-checked and
verified by inspection against the audit anchors, but a maintainer should run
./sage-run.sh test before merge.

…n anchors

Independent adversarial re-audit of every quantitative claim in the library.
29 confirmed errors fixed or documented honestly (full record in ERRATA.md).

Critical:
- Fefferman-Graham g4: drop spurious 1/(n-4) on the algebraic term (belongs
  only on the Bach differential term); fix n=4 trace coefficient 1/8 -> 1/16
- Renormalized volume v2: -1/(n-2) J -> -1/2 J (n-independent), and n=2 sign

Major:
- Conformal Laplacian P2: add the missing curvature term -(n-2)/(4(n-1)) R
  (was the bare Laplacian; the term is what makes P2 conformally covariant)
- n=3 holographic stress tensor: make it trace-free, (3/2)J -> J
- Discrete Bach proxy: correct the stiffness-vs-pointwise rationale, add a
  pointwise=True option (M^-1 L M^-1 L)
- Remove false discrete identity Q4 = 2K^2 - 2KH^2; relabel H^2-K as the
  Willmore integrand, not the 4D GJMS Q4
- README: discrete order-4 mean converges to 0 (not 6); Q4 closed form (n-1)!;
  P6 principal part +Delta^3 (not -Delta^3)

Minor/convention: tractor mu-slot weight +1; Bach 1/(n-3) docstring; Carroll
connection scope + symmetry predicate completeness; Carroll rank check; remove
dead/incorrect symmetrization line; Q2 normalization caveat.

Docs: ERRATA.md (per-error claim/code/correct-math/how-we-caught-it + how to
contribute), docs/TOOLING_GAPS.md, README "Verify it yourself" and
"Contributing corrections". Tests: 3 discrete regression anchors (160 total);
PyTorch suite green.
@ericrihm
ericrihm merged commit 9aa59ce into main May 31, 2026
1 of 2 checks passed
@ericrihm
ericrihm deleted the fix/math-correctness-audit branch May 31, 2026 18:04
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant