n = 28 open ★=R

1147200≤s(28)≤29122223083370350000000000000

The best packing known for 28 squares, side 5.82444461…, David Ellsworth 2025
5.7355.824
567
5.2926.292
nn+1

Proven

5.735000≤s(28)≤5.824445

  • new result
  • exact
  • rigid (catalogue)

Citation record n-028

lowerwand125 after Tokoharu, Levy et al. 2026, GitHub (confirmed T-107)

upperEllsworth 2025, Squares in Squares (confirmed T-101)

Open

  • optimality

Bounds

Best known packing

5.82444461…

5.82444461667405
Found by
David Ellsworth 2025
Construction
annealing, catalogue rigid
Minimal polynomial, degree 6
s6−24s5+212s4−812s3+1025s2+882s−1615=0
Source
[Kingbird]
Evidence
E-kingbird-upper-register
Verified upper bound

29122223083370350000000000000

5.82444461667406

The reported value, verified here.

Evidence
E-evand-exact-ceilings-2026-10-05-exact-replay, E-evand-exact-ceilings-2026-10-05-source-replay
Reported lower bound

1147200

Proved by
wand125 2026
Kind
counting
Scope
Unrestricted unit-square packing with independent rotations and disjoint interiors.
Note
wand125's square-packing-bounds (6 October 2026) reports s(28)≥1147/200 from a density of 531 uniform rectangles of total mass 2799999/100000, on a net the certificate declares: core side 999/1000 and 416 half-angle tangents of step 1/1001, accepted there at every direction by sqverify-proof-net, the source's copy of this repository's sqverify_fast changed to read a declared net (a check2 bundle, with no C++ record). It is above the 2289/400 the record reported (T-068). sqverify-fast, this repository's clean-room measure verifier, decided it here at all 416 directions on 6 October 2026.
Source
[wand125 mixed bounds check2 2026-10-06]
Evidence
E-n028-wand125-mixed-5735-report
Verified lower bound

1147200

The reported value, verified here.

Evidence
E-n028-wand125-mixed-5735-sqverify-fast-replay
Gap

0.08944461…

Verified upper minus verified lower.

Results in the register

Verification

upper: replayed here; lower: replayed here

—

Rigidity

undetermined, numerically checked, numerical multiprecision

Evidence: E-translation-escape-not-rigid

Scope

Assessed and not settled. No square of the retained witness can be translated at any tolerance screened, which is consistent with rigidity but does not establish it: rotation and coordinated multi-square motion are outside the screen. What a source says about this packing's rigidity is carried by reported_upper_bound.catalogue_rigid and is deliberately not restated here as a finding of ours.

s(28) — open

Exact certificate, 2026-10-06. Evan Daniel’s square-packing published on 5 October 2026 an exact rational certificate of this packing, decided here over ℚ by two exact checkers that share no code with each other or with the source, and by the source’s own two run here: it proves s(28)≤5.82444461667406, the verified upper bound (T-101). Until then the verified upper bound was the trivial grid bound 6.

External intake, 2026-10-06. wand125’s check2 source reports s(28)≥1147/200=5.735 (T-107), from a density of 531 rectangles of total mass 2799999/100000<28, on a net the certificate declares: core side 999/1000 and 416 half-angle tangents of step 1/1001. Since 999/1000·(1+1/1001)<1, every unit square contains a core at a net angle strictly in its interior. The source ships no record of its C++ checker for it: it accepts it at every direction with its copy of this repository’s sqverify_fast, changed to read a declared net. It is above the reported 2289/400 (T-068) by 0.0125. This repository’s clean-room verifier sqverify-fast decided it here on 6 October 2026 at all 416 directions of its net, and refused two mutants scaled below coverage one: confirmed, re-implemented sharing the producer’s components (the source’s check is a copy of the same crate), so it is also the verified lower bound. wand125’s README says parts of the work were produced with AI assistance under human direction.

External intake, 2026-10-01. wand125’s rectangle-density source reports s(28)≥2289/400=5.7225, since superseded (T-107), with total mass 2799/100=27.99<28, accepted by Tokoharu’s unchanged interval checker. The complete 201-direction coverage replay here accepted it again, after this repository’s exact audit checked that the regenerated checker input is the published one and checked the mass and net premises, so it was also verified until 2026-10-06, when the certificate above superseded it in both lanes. wand125’s README says parts of the work were produced with AI assistance under human direction.

External intake, 2026-09-28. wand125’s rectangle-density source reports a direct 143/25=5.72 certificate for this case, whose reported bound the 2026-10-01 intake above raises, with total mass 2799/100=27.99<28, accepted by Tokoharu’s unchanged interval checker. The replayed n27 certificate carried 28/5=5.6 here by monotonicity, the verified lower bound until the 2026-10-01 intake above. wand125’s README says parts of the work were produced with AI assistance under human direction.

External intake, 2026-09-27. wand125’s rectangle-density source reports a direct 1139/200=5.695 certificate for this case, whose reported bound the 2026-09-28 intake above raises, with total mass 2799/100=27.99<28, accepted by Tokoharu’s unchanged interval checker. The replayed n27 certificate carried 28/5=5.6 here by monotonicity, the verified lower bound until the 2026-10-01 intake above.

The complete replay of Tokoharu’s n26 rectangle-density certificate previously verified s(28)≥1377/250=5.508 by monotonicity, until the replayed n27 certificate superseded it. Tokoharu’s README says parts of the work were produced with AI assistance under human direction. Friedman DS7 reports Green’s 5.511708697746 lower bound, now weaker than both lanes; its cited private-communication proof has not been recovered.

Open. The best known packing gives s(28)≤5.82444462; the verified lower bound is 1147/200=5.735, from wand125’s check2 certificate on a declared net (T-107, 2026-10-06, V3/C3), which superseded its rectangle-density certificate of 1 October at 2289/400=5.7225 (T-074), leaving a gap of about 0.0894 against that reported upper construction.

The exact certificate

Evan Daniel’s square-packing published on 5 October 2026 exact rational certificates of the packings this register lists as best known, solved from its own witnesses, and offered those that do not lower a printed side as a replay of the existing bounds, asking for nothing to be registered from them. The certificate for this count holds the same 28 squares, each a rational centre and a rational t=tan(θ/2), in a square of side 5.8244446166740592971…, 9.3×10−15 above the side the Kingbird catalogue prints, 5.82444461667405. Rounded to binary64, square for square, its pose is the one the atlas pictures for this count. Evan Daniel’s solver moves the binary64 pose to a nearby exact KKT point of the problem of minimizing the side under non-overlap, computed at 80 digits, and rounds it outward to rationals.

This repository decides the certificate exactly. Converted without rounding, every pair and every wall is decided over ℚ twice, by sqpack’s exact separating-axis test and by an independent checker that shares no code with it, and the source’s own two checkers, run here as retained, accept it as well (receipts). That proves s(28)≤5.82444461667406, the verified upper bound: the certificate’s side rounded up at the fourteen decimals the catalogue prints, as the record writes any certificate of a printed side. It says nothing about optimality. On jlevy/squares#375 its author wrote that the solver, its checkers and the batch “were written with Claude (Anthropic) as a coding and research agent, directed and reviewed by me.”

The verified upper bound and the printed side now agree to one unit of the printed side’s last place, the precision at which the record compares them. The printed side itself is not certified here: the certificate’s side lies above it.

The packing

Found by David Ellsworth in 2025, via simulated annealing. The catalogue flags it rigid: no continuous deformation is possible, so the contact conditions pin the side length exactly as an algebraic number. Its side length is algebraic of degree 6 over ℚ. Its Galois group over ℚ is S6, computed here from the recorded minimal polynomial with sympy.galois_group, and S6 is not solvable. The side length is therefore not expressible in radicals, so the empty exact_form is a permanent property of this case rather than a transcription gap.

The lower bound

The earlier external report, [Friedman DS7], gives the lower-bound expression 65/5+22 for s(28) (approximately 5.511708697746). Friedman’s DS7 survey, Theorem 10, k=5, reports this bound at n=28; reference [8] is Green’s private communication (2000). The source proof has not been recovered. The source audit compares the exact theorem expressions separately from opaque table decimals.

The verified lower bound is 1147/200=5.735, from wand125’s check2 certificate of 6 October on a declared net (T-107), decided here by sqverify-fast at every direction of its net; its rectangle-density certificate of 1 October, 2289/400=5.7225 (T-074), held the field from 2026-10-02 until then. Before that the verified lower bound was wand125’s 28/5, inherited from the fully replayed n27 rectangle-density certificate, whose mass 26999/1000 is below 28, by monotonicity, about 0.0883 above Green’s literal report, while its direct n28 certificate at 143/25, which replaced the 1139/200 certificate on 2026-09-28, was the reported lower bound. A method-distinct rectangle coverage implementation would add confidence and improve generalization, but it is not a missing premise of the verified fixed bound.

Corrected 2 October 2026: Nagamochi’s Lemma 1 is false (Karakuş 2026), so his closed form below is now a reported bound whose published proof is incomplete (review). This register had recorded that proof as verified, its own error, logged as defect D-516. Nagamochi’s earlier general closed form remains part of the evidence history and applies to every N≥4:

s(N)≥min{⌈N⌉,N−2⌊N⌋+1+1}

Verification Code

The programs behind this case’s verified bounds, by their evidence. The code column says how the code that ran stands to the code its producer used. VERIFIERS.md says what each program is and whose it is.

bound evidence run code programs
verified lower E-n028-wand125-mixed-5735-sqverify-fast-replay replayed here shared components V-sqverify-fast (first-party)
verified upper E-evand-exact-ceilings-2026-10-05-exact-replay replayed here independent V-sqpack-verify, V-check-rational-witness-independent (first-party); V-evand-exact-certificates (first-party, premises)
verified upper E-evand-exact-ceilings-2026-10-05-source-replay replayed here producer’s code V-evand-verify-cert-py, V-evand-verify-cert2-py (external); V-evand-exact-certificates (first-party, premises)