T-245: Jatloe reports a Lean proof that the 4 × 3 grid is optimal,
V0 C0 Optimality recorded
Jatloe reports a Lean 4 proof that twelve unit squares need a square of side 4, so that the grid is optimal: . Its theorem, N12Compact.Final.optimality : S12.packingConstant12 = 4, takes packingConstant12 as the infimum of the sides L > 0 at which twelve open unit squares, each at its own rotation and translation, lie in [0, L]^2 with pairwise disjoint interiors; the grid, gridPacking, attains 4, the case's exact upper bound. The lower half normalizes a packing below side 4 and excludes it through marker ownership and a classification into 117 original cases, each closed by a proof term, after a written proof of about 250 chapters.
Its trust boundary, as the source states it: Lean's kernel checks the geometric arguments, the checkers' soundness and the assembly, and 1,624 finite facts are decided by native_decide, so Lean's compiler is trusted as well; the final axiom audit lists propext, Classical.choice, Quot.sound and those 1,624 facts, and no sorryAx. The source reports that a run in a repository that is not public accepted all 5,377 project modules of the theorem's closure on compiled objects reused from a checkpoint that an earlier run saved before it failed, with a fresh final type and axiom audit, and says that no full rebuild has been run.
Nothing here has built it. The statement audit of 25 October read the theorem as the unrestricted problem with no premise, checked by Lean's kernel and its compiler; no review has read the proof.
Jatloe wrote the mathematical proof and a partial formalization, Ben Gurevitch aided the formalization and Lewis (CTJLewis) refactored and compiled it, as the source's README credits them; Ahmed published it, Jatloe12SquaresFormalized, 16 October 2026, and announced it on X on 22 October. The source makes no statement of AI assistance; its AGENTS.md sets rules for agents working on the project.
Significance, composition and next rung
- Significance
- Scored as a claim, as T-060, T-153 and T-194 were while unverified, by the rubric's anchor, a new result establishing an important previously open case: is one of the five open cases below (12, 17, 18, 19 and 20), and the claim settles it at the grid's side 4, closing the gap of 57/2000 = 0.0285 between the verified floor 7943/2000 (T-095) and the ceiling, in a proof assistant with a stated trust boundary. The case record calls the most plausible place for a new proved value of , and it is the first optimality claim the record holds at 12. Significance is separate from whether the proof is correct. Proposed for the owner's confirmation, and for the stage 4 review to confirm or change.
- Composition
- One cited entry, the source's report (E-n012-jatloe-lean-report), which claims the exact value; it sets both rungs. The upper half, a packing at side 4, is gridPacking in the Lean, which uses no native_decide; it is the grid E-basic-grid-upper holds, V3/C3 here and independent of the source. That entry is not cited, since citing it would make this result hold the case's verified upper bound in its place. The lower half rests on the Lean build and its 1,624 native_decide facts, and the only record of that build is the source's own, from a repository that is not public, on objects the accepting run reused.
By epistemics.md's predicates: V3 needs proof-assistant-checked evidence with a certificate, a replay command and a passing replay, and no build of the proof is retained here, so the result stands at V0, declared with the notes; no numerical method (V1) or unavailable proof (V2) fits. No review has read the proof, so C0; C1 needs a qualifying, dated read. C3 would need a complete build with a confirming origin.
The statement audit of 25 October, an AI review, reads N12Compact.Final.optimality line by line as over the unrestricted model, with no premise, and the grid as attaining it. Its counts, made by devtools.audit_n12_lean into the packet's receipts/statement-audit.json, map the 1,624 native_decide axioms of the source's log one to one onto the calls of 1,525 declarations, find 948 further calls in 749 declarations that the final theorem does not reach, and find every one of the 5,377 modules as the run's manifest lists it.
Its two major findings bind the record: the theorem is checked by Lean's kernel and its compiler (M-1), and the accepting run compiled no module, reusing objects from a run that failed, in a repository nobody here can inspect, so the build stays the source's report and qualifies for no source-build entry (M-2). A reading of the statement is not a read of the proof, so it moves no rung. - Next rung
- C1 needs the rest of the stage 4 review, a mathematical review of Jatloe's written proof and its formalization from the retained packet (think-4l14); the statement audit of 25 October is done. The source's per-module receipts and final audit do not qualify as a complete producer build under epistemics.md's rule for reported formal proofs: the accepting run compiled nothing, and the upstream repository and its runs are not public (the audit's M-2).
V3 and C3 need a complete build of the theorem's 5,377-module closure from the pin, here or by a third party whose build is retained here, with its axiom receipt equal to the source's (think-dd3v): about 28 CPU-hours, 17 to 40, by the source's per-module receipts, within the owner's 40 CPU-hour item cap at its high reading and gated on a machine whose memory is known to hold the largest modules. That would be reproduction with the producer's code. A build of the 109-module statement closure decides the statement and the grid in Lean and moves no rung.
V4 and C4 need, on top of V3 and C3, two accepting adversarial AI reviews by distinct reviewers and the owner's oversight record naming trust-boundary, certificate-meaning and ai-findings. V5 needs a formalization review by a named human expert who is not an author. - Unfinished confirmations
- C1 (think-4l14): the stage 4 mathematical review of Jatloe's written proof and its formalization, read from the retained packet; the statement audit is done. Not priced.
C3 (think-dd3v): a complete build of Compact.Assembly.Final's 5,377-module closure from the pin, at Lean 4.35.0 with Mathlib 56a00585, accepted only with the axiom list of the source's global-type-axiom-audit.log, here or by a third party whose build is retained here. About 28 CPU-hours, up to about 40 (priced 2026-10-25). - Novelty
- previously-published Present in an identified source
The case
Results on the case
13 results in the register on , oldest first, each with what it established and how it stands now.
2005 published T-007
for
V0 C1 Lower bound incomplete on this case, superseded by T-095 and T-245 (reported)
2026-08-25 published T-049
V3 C3 Lower bound confirmed superseded by T-095 and T-245 (reported)
Daniel after Burns, Massaccesi · evand square-packing 2026 · packet · source 1 · source 2 · review 1 · review 2 · register
2026-09-04 established T-017
V3 C3 Lower bound confirmed superseded by T-095 and T-245 (reported)
Levy after Burns, Massaccesi · register
2026-09-04 published T-085
Nagamochi 2005, Lemma 1 is false for every container with and
V3 C3 Correction confirmed
Karakuş; Vlasenko · Karakuş 2026 · chelokot Nagamochi counterexample 2026 · packet · register
2026-09-28 published T-249
Daniel reports a Lean kernel proof that , the bound T-049 holds
V0 C0 Formalization recorded
Daniel after Burns, Massaccesi · Daniel S12H Lean 2026-09-28 · packet · source · register
2026-09-29 published T-058
Rectangle-certificate ceiling
α·UB(n)proved for ..100;B·UB(n)on 64 grid rowsV3 C3 Method limit confirmed
Hosono after Tokoharu, Daniel · wand125 tools 2026 · packet · register
2026-09-29 published T-083
for every nonsquare
V3 C3 Lower bound confirmed on this case, superseded by T-095 and T-245 (reported)
Karakuş · Karakuş 2026 · source · register
2026-10-02 published T-078
, Daniel's certificate rescaled by
V3 C3 Lower bound confirmed superseded by T-095 and T-245 (reported)
Ryu after Daniel · squarepacker s12 2026 · packet · packet · source 1 · source 2 · review 1 · review 2 · register
2026-10-02 established T-079
, Daniel's points re-weighted
V3 C3 Lower bound confirmed superseded by T-095 and T-245 (reported)
2026-10-05 published T-095
, Daniel's points dilated and re-weighted
V3 C3 Lower bound confirmed
Ryu after Daniel, Levy · squarepacker s12 2026-10-05 · packet · packet · source 1 · source 2 · review 1 · review 2 · register
2026-10-07 published T-124
Reported non-strict local minima for 178 source configurations
V0 C0 Restricted optimality recorded
Daniel after Couzo · Daniel exact and local reports 2026 · packet · register
2026-10-12 published T-261
Reported grade-C local minima for 233 source configurations of field degree at most 4
V3 C1 Restricted optimality incomplete
Daniel after Schadt, Ellsworth, Levy · Daniel exact and local reports 2026-10-12 · packet · packet · register
2026-10-16 published T-245 this result
Jatloe reports a Lean proof that the 4 × 3 grid is optimal,
V0 C0 Optimality recorded
jatloe, Gurevitch, ctjlewis, Ahmed · Jatloe n12 Lean 2026-10-16 · packet · source · review · register
Links
- On this site
- Case record, · Frontier row, · T-245 in the results table
- Issues
- Issue #810
On GitHub, at main
- Register
- T-245 in
results.yaml, line 35095 - Evidence
E-n012-jatloe-lean-report- Proofs and certificates
- certificate
Final.lean· proofFinal.lean· auditreview-2026-10-25-n12-lean-formalization-statement-audit.md· axiomsglobal-type-axiom-audit.log.gz - Sources
- Jatloe n12 Lean 2026-10-16 (its own site, retained copy)
- Source packet
resources/web/jatloe-n12-lean-2026-10-16/README.md- Artifacts
14 artifacts and controls
resources/web/jatloe-n12-lean-2026-10-16/README.mdresources/web/jatloe-n12-lean-2026-10-16/Jatloe12SquaresFormalized/Lean/Proofs/N12-jatloe/Compact/Assembly/Final.leanresources/web/jatloe-n12-lean-2026-10-16/Jatloe12SquaresFormalized/Lean/Proofs/N12-jatloe/Compact/Assembly/SourceAssembly.leanresources/web/jatloe-n12-lean-2026-10-16/Jatloe12SquaresFormalized/Lean/Proofs/N12-jatloe/source/S12/PackingConstant.leanresources/web/jatloe-n12-lean-2026-10-16/Jatloe12SquaresFormalized/Lean/Proofs/N12-jatloe/source/S12/Normalization.leanresources/web/jatloe-n12-lean-2026-10-16/Jatloe12SquaresFormalized/Lean/Proofs/N12-jatloe/source/S12/Diagonal.leanresources/web/jatloe-n12-lean-2026-10-16/Jatloe12SquaresFormalized/verification/run-38849916588/global-type-axiom-audit.log.gzresources/web/jatloe-n12-lean-2026-10-16/Jatloe12SquaresFormalized/verification/run-38849916588/github-replay.json.gzresources/web/jatloe-n12-lean-2026-10-16/receipts/lean-closure.json.gzresources/web/jatloe-n12-lean-2026-10-16/receipts/statement-closure.json.gzresources/web/jatloe-n12-lean-2026-10-16/receipts/statement-audit.jsondevtools/lean_closure.pydevtools/audit_n12_lean.pydocs/project/reviews/review-2026-10-25-n12-lean-formalization-statement-audit.md- Case file
frontier/n-012.md(verified lower, verified upper, reported lower, reported upper)