Skip to content

math0 results: Lean-verified OEIS conjectures and formal-conjectures statements - #1

Open
abu-aska wants to merge 76 commits into
mainfrom
claude/math-capabilities-showcase-961iya
Open

abu-aska wants to merge 76 commits into
mainfrom
claude/math-capabilities-showcase-961iya

Conversation

@abu-aska

@abu-aska abu-aska commented Oct 17, 2026 •

Copy link
Copy Markdown
Collaborator

Summary

This PR adds a collection of mathematics produced by Claude. Every result has a complete Lean 4 proof, checked by the kernel against a fixed statement and using only the standard axioms. The collection's page is RESULTS.md. README.md stays main's hub page, with one row added to its projects table. Whether the collection stays in this repository or moves to its own is open for the maintainers.

153 results. Each passed an adversarial integrity referee. For open problems, a novelty referee also searched the literature, and where the referees disagreed the more conservative classification was used.

Classification Count
New result (conjecture settled; no earlier resolution found) 74
First formal proof of a known result 55
Independent formal proof (a Lean proof of it already exists elsewhere) 18
Misformalization found (the upstream statement does not match the problem) 6

How hard were the new results? All 74 are routine. An independent assessor judged each one, and a second assessor challenged every "substantial" verdict. Routine means a short or standard argument, something that follows from material already in the OEIS entry or the literature, or a finite search. Most of these conjectures stayed open for lack of attention, not because they were hard. Each result page gives the assessor's reasons.

A278212 (Kagey's bishop/queen mobility) was rated substantial until 29 Oct. Its queen bound turned out to have a one-page charging proof, written up in results/oeis-a275815/short-proof.md. That proof is not formalized; the Lean proofs use computer-found LP-dual certificates. Two independent agents checked it, one by hand and one by searching for counterexamples exhaustively and at random, and both found it valid for every n ≥ 8.

Where the statements come from

  • Third-party (43 results): google-deepmind/formal-conjectures at pinned commit c77fdd4. Checked syntactically by #math0_proves, #math0_refutes, #math0_answers and #math0_refutes_every_answer. Every "open" item settled there had already been resolved elsewhere, or was a misformalization.
  • Formalized by math0 (110 results): conjectures left in OEIS entries about series, awkward fractions and irregular shapes. Each statement's definitions are kernel-checked against the OEIS data. A separate agent reviews it for fidelity, it is frozen by hash, and only then does a prover try to settle it (#math0_settles). Fidelity is a judgement, not a machine check, so every result page quotes the OEIS text.
    • Review packets: review/fidelity/ holds 11 packets of 10 statements each. An adversarial agent prepared them for human review: each entry shows the OEIS text beside the Lean statement, with a plain-English reading and any points to check.
    • What that pass found: no unfaithful or questionable statement, and 15 minor points, listed first in the index.
    • Human review: none of these statements has had one yet.

96 results have a proofread LaTeX manuscript in results/<slug>/.

Verification (changed in response to review)

  • No build cache. lean.yml rebuilds every math0 module from scratch on every run. Only Mathlib's prebuilt oleans are fetched. Modules build two at a time with swap, because the heaviest proof files need up to 8 GB each. The run fails unless exactly one statement check runs per catalogue entry.
  • Freeze rules. scripts/check_freeze.py enforces them:
    • frozen hashes must match;
    • FROZEN.sha256 is append-only;
    • every math0 statement must be frozen;
    • for new results, the statement must be committed strictly before its proof. CI now checks this order from git for the 16 results added since 26 Oct.
    • The 94 statements frozen before this rule were committed together with their proofs. They are listed in FROZEN_WITH_PROOF.txt, and for them the order is recorded only in the pipeline's logs.
  • Audit tests. tests/audit/ holds eleven files the audit must reject and one it must accept. CI runs them.
  • Kernel replay. kernel-replay.yml replays every Math0 module through leanchecker in 4 shards and runs leanprover-community/axiom-audit. A running replay is never cancelled by a newer push.

Test plan

  • On the current head 140e4ff: the uncached build (153 distinct statement checks), all four leanchecker shards and axiom-audit passed.
  • scripts/test_audit.sh: 11 of 11 rejected, 1 of 1 accepted.
  • scripts/check_freeze.py --base origin/main --order passes, with the order verified for 16 new results.

Open for the maintainers

  • Should this PR be split into infrastructure, the formal-conjectures track and frontier batches? The review packets could serve as the batches.
  • Keep the committed PDFs, or build them in CI and attach them to releases?
  • Should the collection stay in this repository, or move to its own?
  • Who does the human fidelity review of the 110 math0-formalized statements, using review/fidelity/?
  • Who should own lean/Math0/Statements/** in CODEOWNERS?

🤖 Generated with Claude Code

https://claude.ai/code/session_015RMccximnhHjshZzajcbbf

claude added 11 commits October 17, 2026 14:54
Lean 4 project pinned to Mathlib v4.33.1 and google-deepmind/formal-conjectures
c77fdd4. Math0.Audit provides #math0_audit (axiom whitelist), #math0_proves /
#math0_refutes (exact statement match against the upstream declaration) and
#math0_answers (value questions). CI builds and audits every result.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015RMccximnhHjshZzajcbbf
Two results, each proving the exact formal-conjectures statement with only
standard axioms:
- Erdős #10 (Grechuk's example): 1117175146 is not a prime plus at most three
  powers of two (first formal proof; kernel-checked certificate).
- Erdős #1010 (Rademacher): floor(n^2/4)+1 edges force floor(n/2) triangles
  (independent proof; an implying Lean proof exists elsewhere).

Adds README, CONTENTS.md generated from catalog.json, per-result pages,
history.md, verify.sh, and the Apache-2.0 license.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015RMccximnhHjshZzajcbbf
Checks that our theorem has exactly the type
  ∀ a, ¬ (upstream statement with its unknown X.answer replaced by a),
so a report that an upstream value question is false for every possible
answer is machine-checked against the upstream text.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015RMccximnhHjshZzajcbbf
- Erdős #142 (asymptotic and Θ forms): the upstream statements use one unknown
  answer for every k, but r_1(N) = N and r_2(N) <= 1, so both statements are
  false for every possible answer (machine-checked with
  #math0_refutes_every_answer). The intended problem needs a k-dependent answer.
- Erdős #1048 variant: the component of {z : |z^n| <= 1} containing 0 is the
  closed unit disk, of diameter exactly 2 (first formal proof).

CI now runs once per PR update instead of twice.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015RMccximnhHjshZzajcbbf
New Lean-verified results (exact upstream statements, standard axioms only):
- arXiv:0805.3777 (Blekherman-Teitler): maximal rank <= 2 x generic rank
- Erdős #1121, higher-dimensional variant (first formal proof)
- Erdős #723: every prime power is the order of a projective plane
- Erdős #1136: Müller's density-1/2 example and the 1/2 upper bound
  (independent proofs; implying Lean proofs exist elsewhere)

Manuscripts (LaTeX + PDF, independently proofread) for Erdős #10 (Grechuk's
example) and Erdős #1010 (Rademacher).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015RMccximnhHjshZzajcbbf
All prove (or refute) the exact formal-conjectures statement, with only standard
axioms, after an independent referee pass. Highlights:
- Erdős #1180 'optimal' variant refuted: the formal C(eps) ranges over all
  primes, so it grows like 2^(1/eps); includes a full Lean proof of Glibichuk's
  theorem to rule out the vacuous case (misformalization report).
- Green's Problem 44 refuted as formalized (explicit 1000-prime sieve with
  N = 10^5). Classified as an independent proof: the problem was resolved in
  April 2026 (Erdős #1202) and a stronger form is already formalized.
- Bugeaud 10.9 (Mahler Z-numbers are countable, hence null and of Hausdorff
  dimension 0), Johnson graph J(18,9) needs 11 colours, Gowers-Long lower bound,
  Jacobian conjecture => Poisson conjecture, and others.

Helper lemmas that collided across files are now private.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015RMccximnhHjshZzajcbbf
Referees classified every new item; none is a new theorem. Notably:
- OEIS A051903 (both Ordowski questions): our witness and refutation match the
  Mishra-Senthilkumar preprint (Sep 30 2026), which already has Lean proofs.
- Erdős #367 (B_r variant): answered on the erdosproblems forum in June 2026;
  ours is the first complete Lean proof of the upstream statement.
- Erdős #319, #409(i) and Bugeaud 10.6: misformalization reports.

Audit: #math0_settles checks a theorem against a statement that math0 itself
formalized (a sorry-free Prop definition), for the new OEIS frontier track.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015RMccximnhHjshZzajcbbf
New track: neglected OEIS conjectures. Statements are formalized by math0 in
Math0/Statements (definitions kernel-checked against the OEIS data), reviewed
for fidelity, frozen by hash, then settled and checked with #math0_settles.

- A294512 (W. Lang, 2017): the conjectured formula a(n) = A250400(n+1)/(n+1)
  for denominators of octagonal reciprocal sums is false; it first fails at
  n = 164 (a factor 11 survives). Kernel-checked; both referees: new result.
- A209802 (R. Zumkeller, 2012): the exponential-Möbius Mertens function is
  always positive. Proved in Lean; the novelty referee notes it follows from
  Rogers' 1964 bound on the density of squarefree numbers, so it is listed as
  a first formal proof of a known consequence.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015RMccximnhHjshZzajcbbf
lean/Math0/Statements/FROZEN.sha256 records the hash each statement had when
its fidelity referee froze it, before any proof attempt; CI fails if a
statement file changes afterwards.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015RMccximnhHjshZzajcbbf
- A375522 (Sigrist & Sloane, 2024): 'S2(n) - S1(n) = 1 except n = 4, 6' for
  the prime-scaled greedy Egyptian sum is false: the difference is 5 at n = 42.
  Checked by a kernel-run exact modular simulation. New result.
- A323695 (P. D. Hanna, 2019): odd terms occur only at n = k(k+2). Proved: mod 2
  the series collapses to the divisor-counting function. New result.
- A091817 (Quet): proved; follows from a known harmonic-number congruence
  (Sun-Zhao 2013), so listed as a first formal proof of a known result.
- A175385: proved; AlphaProof Nexus already has a Lean proof, so listed as an
  independent proof.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015RMccximnhHjshZzajcbbf
They remain in the working tree and are added back once refereed.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015RMccximnhHjshZzajcbbf
orda-aska
orda-aska previously approved these changes Oct 18, 2026
…progression)

Refutes the 2012 conjecture that hexagons are the only equiangular convex
polygons with integer sides in arithmetic progression: sides
(1,4,5,8,9,2,3,6,7,10) close up with all exterior angles 36 degrees. The
referee notes that this also follows from the known characterisation of
equiangular polygons with sides 1..N (N not a prime power), so it is listed as
a first formal proof of a known result.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015RMccximnhHjshZzajcbbf
claude added 15 commits October 18, 2026 23:02
- A338885 (P. Kagey, 2020): 'the smallest number in row n is A228286(n)' is
  false at n = 655: the tilted lattice rectangle (4,0),(655,42),(651,104),(0,62)
  touches all four sides of a 655 x 104 box, while A228286(655) = 115. New.
- A363482 (M. Bouras, 2023): every denominator of
  1/(2-3/(3-4/(...-n/(-5)))) other than 49 is 1 or prime. Full Lean proof via
  convergent closed forms, Legendre's formula and a case analysis on the least
  prime factor. New.
- A229159: every odd prime is a side of a Heronian triangle (Pythagorean
  witness); known, first formal proof.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015RMccximnhHjshZzajcbbf
Each paper was written from the Lean proof and the referee notes, then
independently proofread (all numbers recomputed, references verified).
The A294512 paper also notes that the entry's comment 'numerators are given in
A250401' fails at the same index n = 164.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015RMccximnhHjshZzajcbbf
…og.json)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015RMccximnhHjshZzajcbbf
- A005590 (R. Stephan, 2003): for the signed Stern sequence
  a(2n) = a(n), a(2n+1) = a(n+1) - a(n), a(3n) = 0 iff n is fibbinary (no two
  adjacent 1-bits). Proved via a 3-state automaton on the binary digits and an
  invariant preserved by both branch maps. New.
- A326602 (P. D. Hanna, 2019): a(n) is odd iff n is a square. Proved via a
  mod-2 symmetry of the bivariate generating function. New.
- A344710: the conjectured inequality for non-obtuse lattice triangles is
  proved; the novelty referee judged it a direct consequence of known facts.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015RMccximnhHjshZzajcbbf
- A335012 (S.-P. Eu, 2020): the number of distinct residues of the repunits
  R_1..R_n mod n equals n-1 exactly when n is a long-period prime (2 or a
  prime with ord_n(10) = n-1). Proved (parity, mod-5, and ord/totient
  arguments). New.
- A262957 (R. Israel, 2015): b(n) and c(n), defined by Israel's recurrence,
  are coprime integers, so a(n) = b(n). Proved via the convergents of the
  alternating continued fraction and a determinant identity. New.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015RMccximnhHjshZzajcbbf
Three more OEIS statements formalized, refereed for fidelity, frozen
by hash and settled with #math0_settles.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015RMccximnhHjshZzajcbbf
gen_contents.py now links a manuscript only once paper.pdf is tracked,
so drafts that are still being proofread are not linked from the
README or result pages.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015RMccximnhHjshZzajcbbf
Proofread LaTeX manuscripts (paper.tex + paper.pdf) for A005590,
A262957, A326602, A335012, A338885, A348484, A362086 and A363482.
Each was checked by an independent proofreader against the frozen
statement, the Lean proof and the cited sources.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015RMccximnhHjshZzajcbbf
- A357216 (Shannon): internal n-gons in a regular n-gon have triple
  points only for n = 3, 4, 6; otherwise there are n*k^2 + 1 regions.
- A386538 (Huber): the largest lattice polygon in a disk of radius 7 is
  bigger when the center is moved off the grid (138.5 > 138).
- A326407 (Tatkiewicz): prime-Minesweeper counts satisfy a(n) < 6, and
  a(n) = 5 only at n = 6.
- A355076: first formal proof (follows from the Calkin-Wilf row sums of
  Choudary-Reddy).
- A397315: independent formal proof; Pemmasani refuted his own
  conjecture (T(5,8) = 14) in his repository on Oct 17-18.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015RMccximnhHjshZzajcbbf
Proofread against the frozen statements, the Lean proofs and the cited
sources. The A393794 paper credits the Almirantis-Li 2-cycle
{10891089, 108910890}, which contains the counterexample, as prior
computation that was not connected to the conjecture.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015RMccximnhHjshZzajcbbf
The proofreader found that Table 2 of arXiv:2410.11784 lists the
2-cycle {10891089, 108910890} of a related reversal map. The note now
says so, matching the manuscript.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015RMccximnhHjshZzajcbbf
New proofread manuscripts: A334603, A215010, A091817, A115026, A209802,
A175385. A second proofreading pass refined the A393794, A300789,
A344710 and A229159 papers. For A393794 it records that Almirantis-Li
also list 108910890 among the outputs of the two-step 1089 trick
(Appendix A.2), and it credits OEIS A124074 (Dumortier, 2006). The
catalogue note now says the same.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015RMccximnhHjshZzajcbbf
Proofread against the frozen statements, the Lean proofs and the cited
sources. Every frontier result now has a manuscript.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015RMccximnhHjshZzajcbbf
- A062887: an odd 'descending-by-2' digit multiple of 2n+1 exists exactly
  when 125 does not divide 2n+1 (Irvine's conjecture).
- A106505: the common sides of primitive triangles with one angle twice
  another satisfy a(n+5) = a(n) + 8 for n > 2 (Stephan's conjecture).
- A116184: 37^3 divides the numerator of sum_{k<=36} 1/k^n for every
  n = 3 (mod 36), and the converse direction for primes (Adamchuk);
  an easy corollary of classical Glaisher/Zhao congruences.
- A392943: no primitive Heronian triangle has integer circumradius;
  first formal proof (van Luijk 2008).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015RMccximnhHjshZzajcbbf
- A363609 (Donahoe): the least number of visible pips on a polycube of
  k^3 standard dice is 6k(k+2) for every k > 1; the cube is optimal.
- A097154 (Earls): the only fixed points of x -> rev(x) - maxdigit(x)
  are 0 and 89.
- A332010 (Kagey): the average first letter of the one-descent
  derangements of [n] has reduced denominator 2^(n-2).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015RMccximnhHjshZzajcbbf
Proofread papers for Schulte's identities for C(2n+1,2k+1)*Cat(n-k)
(A281000), the row-product factorial criterion k+1 prime (A249434) and
Barry's Feigenbaum parity conjecture (A127752).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015RMccximnhHjshZzajcbbf

@ahrazzle ahrazzle left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Review: math0 Lean results collection

Verdict: request changes. The audit design is good, and every check I could run came back clean. But CI doesn't do what the PR says: it replays cached results instead of re-checking the proofs. The statement freeze isn't enforced, and one result is now stale against OEIS. The PR is also too large to review as one unit.

What I checked, and what held up

  • Audit commands (Audit.lean). #math0_proves / #math0_refutes compare types structurally against the upstream constant (mdata stripped, universe parameters compared). An axiom whitelist runs via collectAxioms. #math0_settles requires a universe-monomorphic def … : Prop that is itself sorry-free. This design is sound.
  • Coverage. Math0.lean imports 131 result files, which contain exactly 131 audit commands (36 proves, 3 refutes, 4 refutes_every_answer, 88 settles), matching the 131 catalog entries.
    • Every settles targets Math0.Statements.<A>.statement, defined in the matching frozen file, and no proof file redefines it.
    • All 88 statement files are listed in FROZEN.sha256.
    • Every proves/refutes target is an upstream constant, and no Math0 declaration shadows one.
  • Red flags. None found anywhere under lean/: no sorry, admit, native_decide, axiom, implemented_by/extern, debug.skipKernelTC or run_cmd/run_elab, and nothing redefines the #math0_* syntax.
  • Generated files. Re-running scripts/gen_contents.py and scripts/gen_root.py leaves the tree unchanged.
  • OEIS fidelity (sampled). I fetched all 88 frontier entries from oeis.org today and compared each quoted conjecture with the live text. 86 match closely; the other two are format differences, not errors.
    • I also read the entries where wording like "proof", "is true" or "holds" sits next to a conjecture that math0 lists as new (A073642, A086004, A092054, A127752, A249434, A333650, A363482, A369366, A393794). None of them already resolves the conjecture math0 claims.
    • The exception is A057566 (inline): OEIS corrected that formula on 21 Oct.
  • Numbers. A083020: (3^(3^18) + 2) % 961 == 0 ✓. A393794: T(108910890) = 108910890, 9 digits, ≠ a 5 ✓.

Blocking

  1. CI replays instead of rebuilding (inline on lean.yml). In the latest run every result module is Replayed from the Actions cache.

  2. The freeze isn't enforced (inline). A statement and its hash can change together, and in this history they always land in the same commit as the proof.

  3. A057566 refutes a formula that OEIS has since corrected (inline).

  4. Size. 551 files, 104,833 lines, 56 commits, including 92 committed paper.pdf files (30 MB) alongside their .tex sources. The kernel checks the proofs, but statement fidelity needs a human, and nobody can do that across 88 statements in one PR. Suggest splitting it:

    • (a) infrastructure (Audit.lean, CI, lakefile, scripts, catalog schema) with its negative tests;
    • (b) the formal-conjectures track;
    • (c) frontier results in batches.

    Build the PDFs in CI or attach them to releases instead of committing them.

Should fix

  1. README headline rule (inline). "Written by someone else" is true for 43 of 131 results.

  2. "New result (open problem settled)" overstates some entries.

    • A073642's own result page says the identity "also follows from Gutkovskiy's 2019 g.f. in the entry".
    • A393794's counterexample 108910890 is 10 × 10891089, the "1089‖1089" concatenation, i.e. the non-primitive kind that the entry itself sets apart. The literal refutation is valid, but it reads more like an OEIS correction.

    Consider a more modest label (e.g. "OEIS conjecture settled") and keep "open problem" for results a referee judges non-routine.

  3. PR description is stale. It says 86 manuscripts; the tree has 92.

  4. Conflicts with other open PRs. README.md conflicts with #3 and #6, and .gitignore is add/add with #3. #6 describes math0 as a hub whose projects get their own repositories, which doesn't fit merging this collection into math0. The maintainers should decide math0's role first.

Minor: CI shows eight linter.unusedSectionVars warnings in A357216.lean (hn unused).


Generated by Claude Code

Comment thread .github/workflows/lean.yml Resolved
Comment thread .github/workflows/lean.yml Outdated
Comment on lines +15 to +16
- name: Statements formalized by math0 are unchanged since their fidelity review
run: cd lean/Math0/Statements && sha256sum -c FROZEN.sha256

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The freeze check can't catch a statement edited together with its hash. sha256sum -c compares each statement with a hash file in the same tree, so a PR that edits a statement and updates FROZEN.sha256 passes. In this branch's history, statements, hashes and proofs always land in the same commit. Two statements were rewritten between their first appearance (97f6910) and their freeze, each in the same commit as its proof:

  • A392943 in d151955;
  • A394981 in 2ceb0fd, where it was re-encoded with padded cell indices.

I'm not suggesting anything wrong happened. But "fidelity-reviewed and frozen before any proof attempt" can't be confirmed from the repo. Cheap fixes:

  • CODEOWNERS on lean/Math0/Statements/** (including FROZEN.sha256), requiring a human review;
  • a pull_request CI step that fails if any existing line of FROZEN.sha256 differs from the base branch (adding lines stays allowed);
  • land each statement in its own commit or PR, before the proof that uses it.

Generated by Claude Code

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Two of the three fixes are in (0630a37). The third, CODEOWNERS, is open.

  • scripts/check_freeze.py replaces the bare sha256sum -c.
    • Every frozen hash must still match its file.
    • FROZEN.sha256 is append-only against the base: no existing line may change or disappear.
    • Every math0-formalized statement in the catalogue must be listed.
    • On pull requests, each new result's statement must have been committed in a strict ancestor of the commit that adds its proof.
  • Statements frozen before this check existed were committed together with their proofs, so git can't show their order. They are listed in FROZEN_WITH_PROOF.txt (94 entries), and their result pages now say so.
  • From now on, statements land first, on their own. 7139d9f (4 statements) and 21c2fb4 (6) were pushed before any of their proofs succeeded. The order check will apply when those results land. lean/Math0/Statements.lean imports every frozen statement, so pending ones are compiled too.
  • CODEOWNERS needs a maintainer to name the owners, so I've left it for them and this thread open.

Generated by Claude Code

Comment thread lean/Math0/Statements/OEIS/A057566.lean Resolved
Comment thread README.md Resolved
claude added 10 commits October 26, 2026 13:07
… audit

CI (.github/workflows/lean.yml):
- No GitHub build cache: every math0 module is elaborated and kernel-checked
  on every run (only Mathlib's prebuilt oleans are fetched). verify.sh
  --clean --expect N fails if any module is replayed or if the number of
  statement checks differs from the number of catalogue entries.
- scripts/check_freeze.py replaces the bare sha256sum check: frozen hashes
  must match, FROZEN.sha256 is append-only against the base, every
  math0-formalized statement must be frozen, and (on pull requests) each
  new result's statement must be committed strictly before its proof. The
  88 statements committed together with their proofs are listed in
  FROZEN_WITH_PROOF.txt.
- tests/audit: eleven files the audit must reject (sorry, native_decide,
  custom axiom, weaker or merely defeq statement, sorry in the statement,
  wrong polarity, ...) and one it must accept, run by scripts/test_audit.sh.
- New weekly kernel-replay workflow: leanchecker over every Math0 module
  (4 shards) and leanprover-community/axiom-audit.

Statements: lean/Math0/Statements.lean imports every frozen statement, so
statements committed before their proofs are compiled too.

Wording: the README rule now covers statements formalized by math0; the
'open problem settled' label becomes 'conjecture settled; no earlier
resolution found'; result pages say whether git can show the freeze order.

A057566: OEIS corrected Layman's formula on 21 Oct 2026; the result and its
manuscript now say they refute the formula as printed before the correction.
Also: removes eight unused-section-variable warnings in A357216, and records
that the A373345 GitHub-issue citation was confirmed.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015RMccximnhHjshZzajcbbf
Proofread papers for four first formal proofs of known results: the gcd of
the interior binomial coefficients (Kaplan-Levy), column sums of reversed
partitions (Archibald et al.), Schreier row lengths (Chu) and Mathar's
column-3 g.f. for centred-monomer domino tilings.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015RMccximnhHjshZzajcbbf
… proofs

Four OEIS conjectures formalized by math0 and frozen by the fidelity review
(hashes appended to FROZEN.sha256). They are committed here, on their own and
ahead of any proof, so the order is visible in git; CI checks it for each
result that later settles them. Until then they are compiled through
Math0/Statements.lean but no result uses them.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015RMccximnhHjshZzajcbbf
…(first formalizations)

Six more OEIS conjectures settled in Lean and refereed:
- A350557: Schulte's conjecture, signed A350557 is the inverse of A350512
- A144637: Bala's parity conjecture, (1/18) 6^n a(n)/n! is odd iff n = 2^k
- A127755: Barry's conjecture, the inverse of 1/n! [k<=n<=2k] is integral
- A022445: Stephan's g.f. for closed self-avoiding walks in a 3-wide strip
- A334592: records of the XOR-triangle zero count are the powers of two
  (follows from Brunat-Maureso 2017; first formalization)
- A373359: Schreier row lengths equal the Zeckendorf weight (Chu 2019)

These statements were frozen by the pipeline before their proofs but are
committed together with them, so they are listed in FROZEN_WITH_PROOF.txt.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015RMccximnhHjshZzajcbbf
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015RMccximnhHjshZzajcbbf
Addresses review point 6 ('New result (open problem settled)' overstates
some entries). An independent assessor agent judged each of the 57 settled
OEIS conjectures, with a second assessor challenging any 'substantial'
verdict. 56 were judged routine (a short or standard argument, a
consequence of material already in the entry or the literature, or a
finite search) and one, A278212, substantial; none was judged to settle
its conjecture only under a literal reading.

catalog.json gains an 'assessment' field; each result page shows the
verdict and its reasons, CONTENTS.md adds a difficulty column, and the
README highlights state the split and list the substantial result first.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015RMccximnhHjshZzajcbbf
… in memory

The first uncached builds were killed by the runner (exit 143, 'shutdown
signal') as soon as the proof files started compiling: the heaviest ones
peak at 6.7-7.8 GB each (A394981, A022445, A278212 measured locally), and
lake ran four at once on a 16 GB runner. verify.sh now builds the audit,
every frozen statement and every result in batches of MATH0_BATCH modules
(default 2), counts distinct statement checks (later batches replay earlier
modules' messages), and CI adds a 20 GB swap file and LEAN_NUM_THREADS=2.
The kernel-replay jobs use the same batched build.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015RMccximnhHjshZzajcbbf
…342645 before their proofs

Six OEIS conjectures formalized by math0 and frozen by the fidelity review,
committed on their own ahead of any proof attempt:
- A057566b: the floor formula for collinear triples in a 3 x n grid as
  corrected in OEIS on 21 Oct 2026 (the formula printed before that is
  A057566, already refuted at n = 24)
- A188474: row sums of the generalized Deutsch triangle equal A137398(n+1)
- A123710: rows of the inverse of [n/k] with exactly 4 nonzero entries
- A357583: Kurkov's recursion for row polynomials of convolution triangles
- A350499: Kurkov's recursion for free cumulants from free moments
- A342645: polynomial diagonals of the eventual Mahonian-column polynomials

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015RMccximnhHjshZzajcbbf

@ahrazzle ahrazzle left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The current independent-kernel-replay run is incomplete: shard 1 has a failed job conclusion, its module-build step remains recorded as in progress, and its replay step never started. This is a runner/check-completion gap, not evidence of a rejected proof. The main Lean build and the other three replay shards passed. A completed successful replay of the missing shard is needed before merge.

The freeze hashes and generated catalogue checks pass locally for 137 results. The freeze-order command checks zero new results because the legacy exemptions cover this batch, so it does not independently establish their freeze-before-proof history. The earlier requests to review statement fidelity in bounded batches and resolve the collection versus hub placement remain open.

…LTS.md

main now describes math0 as the hub for Foundation0's mathematics, with
larger projects in their own repositories. To resolve the README conflict
without deciding that question, README.md is main's version with one row
added to its projects table for this collection, and the collection's own
page moves to RESULTS.md (gen_contents.py now refreshes its highlights
there). Whether the collection should instead become its own repository is
left to the maintainers.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015RMccximnhHjshZzajcbbf

Copy link
Copy Markdown
Collaborator Author

This covers both reviews (25 Oct and 28 Oct). The four inline threads have their own replies.

Done

  • 1. CI replays the cache. Fixed: the build is now uncached, batched and checked against the catalogue count. On 21c2fb4 it passed in 53 min. Kernel replay (leanchecker in 4 shards, plus axiom-audit) also passed, except for shard 1. That runner died mid-build, before any replay. The new head 2580222 reruns all shards; I'll follow it until every shard has completed and passed.
  • 2. Freeze. FROZEN.sha256 is now append-only, enforced by CI. New results get a freeze-before-proof order check, and 10 statements have since been committed ahead of their proofs. As the 28 Oct review notes, the check verifies 0 of the 137 current results: all 94 math0-formalized statements so far are in FROZEN_WITH_PROOF.txt. Their freeze order is attested only by the pipeline's logs, and their result pages say so. CODEOWNERS is for the maintainers to set.
  • 3. A057566. Retitled, with a note about the 21 Oct correction. The corrected formula is a separate result, A057566b, frozen before its proof.
  • 5. README rule. Reworded.
  • 6. Labels. "New result (open problem settled)" now reads "New result (conjecture settled; no earlier resolution found)". An independent assessor judged each of the 61 new results, and a second assessor challenged every "substantial" verdict. 60 are routine and 1 is substantial (A278212). Routine here means a short or standard argument, something that follows from material already in the entry, or a finite search. Each result page gives the reasons, and the highlights and CONTENTS show the split.
    • A073642: routine. The page says it follows from Gutkovskiy's g.f. and from a one-line binary-increment step.
    • A393794: the assessor did not judge it literal-only. The entry's "primitive" remark describes a(n) itself, while the uniqueness claim covers all (n+4)-digit numbers. Still, the counterexample is 10 × 10891089, the non-primitive kind, and the assessment says the refutation needed no new idea.
  • 7. PR description. Updated to match the tree.
  • Minor: the eight unusedSectionVars warnings in A357216 are gone (omit hn in; the proof still checks).
  • Negative tests: the audit tests weren't actually committed before, despite what the description said. They are now in tests/audit/ and run by CI: eleven files that must be rejected and one that must be accepted.

Left to the maintainers

  • 4. Size and splitting, and the committed PDFs. I can split this into (a) infrastructure, (b) the formal-conjectures track and (c) frontier batches, or move the PDFs to CI or releases. I haven't, because both reshape the repository and that's the maintainers' call.
  • 8. Collection or hub. Merging main conflicted on README.md. I kept main's hub README unchanged, apart from one row in its projects table pointing to RESULTS.md, which now holds this collection's page. Whether the collection stays here or moves to its own repository, as the hub README suggests for larger projects, is the open decision.
  • Fidelity review in bounded batches. The 94 math0-formalized statements still need human review of fidelity. I can prepare batches, for example 10 statements per PR with each OEIS text beside its Lean statement, once the maintainers choose a structure.

Generated by Claude Code

@abu-aska abu-aska changed the title math0: Lean-verified results on third-party formal statements of open problems math0 results: Lean-verified OEIS conjectures and formal-conjectures statements Oct 29, 2026
…ion)

Four OEIS conjectures settled in Lean and refereed. Their statements were
committed on their own before any proof (7139d9f, 21c2fb4), so these are the
first results whose freeze-before-proof order CI can check from git.
- A182617: Librandi's formula for the hexagonal toothpick spiral,
  a(n) = 2n + ceil(sqrt(12n - 3))
- A368846: Luschny's conjecture on the diagonal sums (equal to A229580)
- A188474: Barry's row-sum conjecture for the generalized Deutsch triangle
- A057566b: the floor formula for collinear triples in a 3 x n grid as
  corrected in OEIS on 21 Oct 2026 (follows from Mathar's closed form)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015RMccximnhHjshZzajcbbf
…ch push

A replay takes over an hour, so cancelling it on every push meant it rarely
completed. A newer push now queues one pending replay behind the running
one; the main build still restarts on each push.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015RMccximnhHjshZzajcbbf

Copy link
Copy Markdown
Collaborator Author

Kernel replay on 2580222 completed in full (run 40875304335). All four leanchecker shards passed, shard 1 included (replay 13:34–13:51 UTC), and so did axiom-audit. Each job also rebuilt every module from scratch first.

Since then, the replay workflow no longer cancels a running replay when a new commit is pushed. Instead it queues one newer run behind it, so a replay always finishes.


Generated by Claude Code

…(first formalizations)

Six OEIS conjectures settled in Lean and refereed, each with its statement
committed before any proof (7139d9f, 21c2fb4), so CI checks the order:
- A275815: Jones's a(n) = 8(n-2)^2 for n >= 6 (queen mobility); n >= 7
  follows from math0's A278212, and the n = 6 case is added here
- A123710: Hasler's conjecture, the rows of inv(floor(n/k)) with four
  nonzero entries are n = 6 and the proper prime powers
- A357583: Kurkov's recursion for row polynomials of convolution triangles,
  for the Bell numbers and for every integer sequence
- A342645: Kagey's diagonal polynomials of the eventual Mahonian columns
- A265649: Schulte's two closed forms (special cases of Maier 2023 and
  Hsu-Shiue 1998; first formalization)
- A350499: Kurkov's free-cumulant recursion (a case of the Krawczyk-Speicher
  products-as-arguments formula; first formalization)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015RMccximnhHjshZzajcbbf
…55360 before their proofs

Six OEIS conjectures formalized by math0 and frozen by the fidelity review,
committed on their own ahead of any proof attempt:
- A320099: the order-10 recurrence for no-leaf subgraphs of the 5 x n grid
- A267486: O'Sullivan's Gaussian-polynomial / Chebyshev representation
- A132616: Irwin's nested-sum formula for column 0 of A132615
- A126127: the bivariate g.f. of the inverse square of A061554
- A001040: Kurkov's rook Hamiltonian-path interpretation of 2 n! a(n)
- A355360: columns 1 and 2 of the Jacobi-triple-product triangle

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015RMccximnhHjshZzajcbbf
… the latest results

While assessing A275815, an adversarial assessor found a one-page charging
proof of the queen bound M <= 8(n-2)^2. Two independent agents then checked
it: one re-derived every step and wrote out the corner cases, and one
searched by computer for counterexamples (all 2^25 corner-block patterns,
exhaustive dependency sets, random and annealed boards for n = 8..14). Both
found it valid for every n >= 8. It is written up, unformalized, in
results/oeis-a275815/short-proof.md.

With it, A275815 is rated routine, and so is A278212. A278212 was the one
result rated substantial, because its queen half seemed to need
computer-found certificates; its page records that revision and why.
A123710, A342645 and A357583 are routine too, so all 68 new results are now
rated routine.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015RMccximnhHjshZzajcbbf
Six OEIS conjectures settled in Lean and refereed, each with its statement
committed before any proof (1b7e058), so CI checks the order:
- A320099: Kagey's order-10 recurrence for no-leaf subgraphs of the 5 x n grid
- A267486: O'Sullivan's Gaussian-polynomial / Chebyshev representation
- A132616: Irwin's nested sums give column 0 of A132615
- A126127: Israel's bivariate g.f. of the inverse square of A061554
- A001040: Kurkov's rook-tour interpretation of 2 n! a(n)
- A355360: columns 1 and 2 of Hanna's theta-series triangle are P(x)^3
  and 2 P(x)^6

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015RMccximnhHjshZzajcbbf
…9, A355360 (all routine)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015RMccximnhHjshZzajcbbf
Addresses the open review request to check statement fidelity in bounded
batches. An adversarial reviewing agent went over all 110 frozen statements
again. For each one it quotes the OEIS conjecture and the Lean statement side
by side, restates the Lean in plain words, says what the kernel checks
against the OEIS data, and lists anything a reviewer should look at. The
result is review/fidelity/, with eleven packets of ten and an index that
lists the minor points first.

Outcome: 72 faithful, 38 faithful with notes, none questionable or
unfaithful, no major points. 15 minor points are flagged for human
attention. They cover reading choices (offset shifts, n = 1 exclusions),
data checks on computable surrogates, and the 'except for 9/49' readings
of A362086 and A363482. Those two are now noted on their result pages.

Also records an OEIS data error the pass found and that was recomputed
exactly: A386538's listed terms are wrong at n = 13, 17, 18, 22 and 23,
because the entry's program does not compute the convex-hull area. The
math0 counterexample at n = 7 is unaffected.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015RMccximnhHjshZzajcbbf

Copy link
Copy Markdown
Collaborator Author

On reviewing statement fidelity in bounded batches: review/fidelity/ (140e4ff) has eleven packets of ten statements, covering all 110 that math0 formalized itself. Each entry quotes the OEIS conjecture beside the frozen Lean statement. It also restates the Lean in plain words, says what the kernel checks against the OEIS data, and flags anything to look at.

An adversarial agent prepared them, so they are not a human review; they are meant to make one quick. That pass found no unfaithful or questionable statement and no major point. It flagged 15 minor points, all listed first in the index. They are:

  • reading choices: offset shifts, n = 1 exclusions;
  • data checks that run on a computable stand-in rather than the definition used in the statement;
  • the "except for 9/49" wording of A362086 and A363482. Read strictly, each conjecture also needs that value to occur only once. That holds by computation for n < 1200 but is not part of the Lean result, and both result pages now say so.

The pass also found an OEIS data error, which I recomputed exactly: A386538's listed terms are wrong at n = 13, 17, 18, 22 and 23. The math0 counterexample at n = 7 is unaffected.

If the maintainers want fidelity reviewed in separate PRs, the packets can serve as the batches.


Generated by Claude Code

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.

4 participants