Repository navigation
Import Erdős 111 bipartization and countable colouring theorem - #686
Conversation
There was a problem hiding this comment.
{
"overall_verdict": "approve",
"reviewed_head": "b534f1df2de85785831351623f05cf325dd0d239",
"review_kind": "Separate full-source acquisition review; content recommendation, not merge authorization",
"coverage": "Read all 19 upstream proof modules, Solution.lean, Statement/FinalAssembly endpoints, all 22 added files, the complete source-to-port diff, the upstream licence, formalization.yaml and blueprint. No source file or proof slice was omitted because of size.",
"faithfulness": {
"verdict": "pass",
"bottom_line": "The four card statements match the Lean, with no undisclosed hard-step hypothesis.",
"proves_the_claim": "proves_it",
"claim_note": "countably_colorable_of_linear quantifies over real C and every finite subgraph, concluding Nonempty (G.Coloring ℕ); the two Tendsto theorems concern the whole natural-number sequence and the Hilbert-space lemma retains arbitrary real Hilbert spaces.",
"assumed_inputs": "Only the disclosed linear bipartization bound, absence of a natural-number colouring, or chromatic cardinal equal to aleph-one, respectively. No stronger graph property or conditional external theorem is assumed.",
"findings": []
},
"novelty": {
"verdict": "pass",
"bottom_line": "No duplicate was found in the compared Mathlib, Tau Ceti or pool sources.",
"already_formalized": "",
"novelty_note": "Mathlib SimpleGraph.nonempty_hom_of_forall_finite_subgraph_hom requires [Finite W], unlike the natural-number palette here. The Tau Ceti candidate generateFrom_restrictFinCylinders concerns the measurable space of countably labelled graphs, not colouring from finite bipartization costs. Exact-name and conceptual searches over pinned Mathlib/Tau Ceti and pool, plus live GitHub code, PR/issue and source-URL searches, found no result covering these hypotheses. This is a bounded prior-art comparison; exhaustive semantic novelty is unverifiable.",
"findings": []
},
"significance": {
"verdict": "pass",
"bottom_line": "A complete research-level infinite graph theorem with reusable measure and colouring infrastructure is a good pool fit.",
"fit": "good_fit",
"level": "research",
"branch": "infinite graph theory",
"mode": "mixed",
"significance_one_sentence": "The formalization proves the limit assertion of Erdős Problem 111 and the stronger countable-colouring theorem, while retaining Boolean projective limits, finite minimax, closure chains, well-founded greedy colouring and Hilbert-space classes.",
"findings": []
},
"sources": {
"verdict": "pass",
"bottom_line": "The immutable upstream blueprint supports the new theorem; the original 1987 Problem 7 independently confirms the historical question and its aleph-one hypothesis.",
"source_match": "matches",
"findings": [],
"verification_limits": "The live problem catalogue returned HTTP 403. As an independent primary-source check, the original Erdős 1987 scan, Problem 7 on printed page 225, was retrieved and visually checked: it states the aleph-one chromatic h(n)/n divergence question. The imported result proves that assertion, plus the stated stronger countable-colouring theorem. Present catalogue status and exhaustive literature priority remain unverified. The upstream formalization labels external review self-assessed."
},
"quality": {
"verdict": "pass",
"bottom_line": "Competent proof modules with explicit construction lemmas; import narrowing and removal of seven redundant assumptions improve reuse without changing the headlines.",
"code_quality": 3,
"findings": []
},
"dependency_closure_audit": "Pattern, ForcingData, Chain and IsCopy fields are consumed and constructed by the imported existence proofs. The cardinal induction obtains a smaller layer at every step, including singular cardinalities; h is bounded on finite subgraphs before its supremum is used. The finite bipartization/edge-cost bridge proves both directions. There is no hidden constructor assuming the headline.",
"trust_and_validation": "Local clean build, warning scan, generated-index check, 15 Mathlib linters, style, whole-repository static checks, resolution of all four card declarations, axiom checking for 128 parsed declarations and environment/backdoor audit for all 21 modules passed. Only Classical.choice, propext and Quot.sound are permitted. Final protected CI and configured external reviews remain separate requirements.",
"performance": "Matched project-cold trials with warmed pinned dependencies: 25.34 s before, 24.95 s after; a small 1.5% difference, not a robust speedup claim. The sign-class proof allocation trace fell from 19,742,256 to 19,521,640 after sharing the L2 embedding. Profiles and import-dependency analysis found no further material safe improvement. Full measurements, including the 28.00 s contention-affected trial, are in the PR description.",
"merge_eligibility": "Eligible for the validated native merge queue: source/license/provenance/trust and all review findings are settled, applicable protected PR and current-main validation pass, PR610/611 are merged. Preserve exact source head and normal protections. Daily documentation publishing is excluded from the gate assessment.",
"source_verification_addendum": {
"primary_pdf": "https://www.renyi.hu/~p_erdos/1987-28.pdf",
"page": 225,
"verification": "PDF page 3 rendered and visually read; the second paragraph of Problem 7 asks h(n)/n to diverge for aleph-one chromatic graphs. This supplements the direct catalogue HTTP 403 with a primary-source check."
},
"kernel_replay_addendum": "Native lake comparator accepted all three theorem statements against the original Mathlib-only challenge and replayed the solution in Lean default kernel with the standard three allowed axioms and no definition holes. Exports were generated locally with pinned leanexport from complete environments, without modifying proof terms or exported constants.",
"ci_addendum": {
"reviewed_head": "b534f1df2de85785831351623f05cf325dd0d239",
"Lean_CI": "https://github.com/LeanPool/lean-pool/actions/runs/39231176260",
"result": "PASS: generated indexes, warning-free pool build, Mathlib linters, text style and repository quality checks. Required Build project and content separation succeed; the other six required contexts are skipped by applicability. Metadata and trust advisories pass.",
"configured_reviews": "Greptile success; GPT approve on this exact head, all five rubrics pass.",
"current_main": "5199f6df453142c54782d7d7812c9ffa3c6b98e0: applicable required checks pass, including queue Lean validation and post-push Python/workflow checks."
}
}|
Advisory cross-file review against Lean Pool's supervisory rubric. This is not by itself a significance, source-verification, or merge verdict. [Low impact] No concrete defect was found, but the unverified external source and dependency comparisons prevent an unconditional merge recommendation. SummaryAdds the Erdős 111 proof from linear finite bipartization bounds to countable colouring, then derives whole-sequence divergence of
Reviews (1) · Last reviewed commit: "Import Erdős 111 bipartization and count..." · Reviewed by Greptile |
|
/review Please review exact head b534f1d. Local build, linters, style, static checks and trust audits pass; protected CI remains in progress and must still pass before any queue entry. Source verification supplement: Erdős's original 1987 paper, Problem 7 on printed page 225, was retrieved and visually checked at https://www.renyi.hu/~p_erdos/1987-28.pdf. It asks the same aleph-one chromatic h(n)/n divergence question. The primary new proof remains the immutable upstream blueprint linked in the card. The direct catalogue HTTP 403 does not prevent checking this original source. A separate Lean check also passed after copying the upstream Mathlib-only Challenge.lean into a fresh namespace, preserving its definitions and statement text and replacing only the three open proof bodies with the imported theorems. This supplements, rather than replaces, protected CI and the normal reviews. |
🤖 LLM review (
|
| Rubric | Verdict | Bottom line |
|---|---|---|
| Faithfulness | ✅ pass |
All four headlines match the Lean; protected CI remains pending, and local elaboration was blocked by HTTP 403 fetching pinned Mathlib. |
| Novelty | ✅ pass |
No duplicate of the four headlines was identified in the checked declarations; broader semantic equivalence with Tau Ceti remains unverifiable. |
| Significance | ✅ pass |
The countable-colouring theorem and its Erdős 111 consequence meet the research-level bar, supported by substantial probabilistic and transfinite theory. |
| Sources | ✅ pass |
The pinned blueprint supports all four claimed results, the imported development is credited, and Erdős’s original Problem 7 confirms the limit question. |
| Code quality (advisory) | ✅ pass |
The successor argument is well factored through reused helpers such as exists_copies, starCopy_isOver, and key_inequality; CI remains running, and absent local dependencies prevented an independent build. |
| Aspect | Value |
|---|---|
| Proves the claim | ✅ proves_it |
| Assumed, not proved | The respective graph hypotheses and the Hilbert theorem’s complete real inner-product-space assumptions are disclosed in the card; closure chains, forcing data, probability laws, and intermediate colouring results are constructed rather than assumed by the headlines. |
| Matches cited source | ✅ matches |
| Fit | ✅ good_fit |
| Level | research |
| Branch | infinite graph theory |
| Mode | mixed |
| Code quality | 4 / 5 |
Statement check: The development proves countable colouring from uniform linear finite bipartization bounds, whole-sequence divergence for graphs without a natural-number colouring and hence chromatic cardinal ℵ₁, and the stated partition of Hilbert-space unit vectors.
countably_colorable_of_linear establishes a finite bipartization criterion for countable colourability, and erdos_111 proves the divergence conclusion asked in Erdős’s 1987 Problem 7.
Tokens: 6,828,306 in / 34,466 out across 5 model calls · Tier: codex-subscription · Effort: xhigh · Billing: Codex subscription quota (no API credits) · Estimated cost: $27.8302 (Standard API equivalent; uncached input)
Each rubric is an independent review against .github/review-rubrics/ on top of .github/REVIEW_RULES.md. Disagree? Reply on the PR; rules can be updated in a PR of their own.
CI was not green for this commit at review time; this review does not replace CI.
This imports a complete proof of the limit question in Erdős Problem 111: a graph whose every finite subgraph on m vertices can be made bipartite with at most C m edge deletions has a proper colouring by natural numbers. Consequently h_G(n)/n tends to infinity along the whole sequence for every graph that is not countably colourable, including every graph of chromatic cardinal aleph-one. The exact growth of h_G is outside the claim.
The closure also preserves useful independent infrastructure: Boolean-product probability laws and ultrafilter limits, a finite minimax lemma, closure chains at arbitrary cardinalities, greedy colouring along well-founded relations, and a countable partition of unit vectors in a real Hilbert space with a positive agreement bound within each class.
Source and acquisition eligibility
Port and measured optimization
Upstream already uses exactly Lean v4.35.0-rc3 and Mathlib c55e6e786f49471c72fbddbec5415808896aec1e, matching this pool revision. Imports are prefixed with LeanPool, copyright/licence attribution is retained in standard headers, and the project card records the immutable source and AI provenance.
Removed six file-wide Classical openings in favour of declaration scopes and seven unused typeclass assumptions, generalizing the affected helper lemmas. Narrowed imports after inspecting Lake shake evidence; the Hilbert-space infrastructure now builds independently of the graph-cost module. Shared the L2 embedding of signs within the expensive agreement lemma. Headline theorem statements and strength are unchanged. No heartbeat/depth override, suppression, gate or workflow change is introduced.
Measurement command:
/usr/bin/time -v lake build LeanPool.Erdos111, with only this project's build products removed before each trial, warmed pinned dependency oleans, the same x86_64 16-logical-CPU VM, and Lake's default parallelism. A matched sequential rerun gave 25.34 s before → 24.95 s after, with user CPU 36.97 → 36.64 s. This is a small change, not evidence of a robust wall-time speedup. The first baseline was 24.93 s; an earlier post-change run alongside repository static checks was 28.00 s and is reported as a contention-affected trial. HilbertClasses and Successor.Key were profiled at declaration level; sharing the sign embedding reduced exists_sign_classes' raw profiler allocation count from 19,742,256 to 19,521,640. No further material safe improvement was evident in these short modules.Validation and review
Local validation passed:
lake exe mk_all --module --check;lake exe runLinter --no-build LeanPool.Erdos111.Imports: 15 Mathlib linters, 168 declarations plus 101 generated declarations;lake exe lint-style LeanPool.Erdos111.Imports;Additional fidelity validation also passed: the three imported proofs typecheck against the original challenge in a fresh namespace, and native
lake comparatoraccepted all three original statements and replayed the ported solution with Lean’s default kernel, the standard three allowed axioms, and no definition holes. Both complete environment exports were generated locally with the pinnedleanexport; no proof terms or exported constants were edited.Full protected CI remains authoritative. No Python source is changed. Prior-art checks covered project cards, source modules, repository history, all 15 currently open PRs, issue/PR source-URL searches, pinned Mathlib/Tau Ceti source, and live GitHub code search. Mathlib's closest graph compactness theorem, SimpleGraph.nonempty_hom_of_forall_finite_subgraph_hom, requires a finite target; it does not give this countable-colouring result. No matching headline formalization was found in the searched corpora; this is a bounded comparison, not a claim of exhaustive semantic search.
Greptile completed successfully without an actionable finding. The configured GPT review passes all five rubrics and approves exact head b534f1d; the separate full-source review also recommends approval on that head. The configured reviewer could not build independently because fetching pinned Mathlib returned HTTP 403; the local validation and native replay above succeeded, and full protected Lean CI has now passed on the reviewed head. All eight required contexts are satisfied under the current applicability rules. Current-main applicable validation also passed. This unchanged source head is eligible for the validated native merge queue; no author-branch rebase or protection bypass is used. Daily documentation publishing is asynchronous and is not counted as a merge gate.