n = 87 open ★=

47950≤s(87)≤983881526994827100000000000000

The best packing known for 87 squares, side 9.83881526…, David Ellsworth 2024
9.5809.839
91011
9.32710.327
nn+1

Proven

9.580000≤s(87)≤9.838816

  • new result
  • exact

Citation record n-087

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

upperEllsworth et al., Squares in Squares (confirmed T-101)

Open

  • optimality

Bounds

Best known packing

9.83881526…

9.83881526994826
Found by
David Ellsworth 2024
Improved by
David W. Cantrell, David Ellsworth, Allen Chang
Construction
annealing
Source
[Kingbird]
Evidence
E-kingbird-upper-register
Minimal polynomial, degree 41

2229025112064s41−807732655423488s40+143485478259130368s39−16651943649315127296s38+1419678736423203438592s37−94800850229256853389312s36+5162415165495309756628992s35−235679978290994076214263808s34+9202924880800443179863388160s33−312043320073195198376736546816s32+9295045312996485053157554915328s31−245477764824240454187103594450944s30+5789615258919641550986089322782464s29−122650753043892752991823722606592000s28+2344536513361885703387448672473538944s27−40584536283281213359626117013929897088s26+637919759433576077791960763102863780704s25−9123142651123815912924967464745910766112s24+118875608243304759698567892229598143622096s23−1412422433204366537751908713688696962361368s22+15307137247658900045468881290413317552796953s21−151290636916775476415335869190639328205348698s20+1362881877915611850892299499081591847601465974s19−11178540405656965169266972892454725769640656752s18+83359977144350715989613270579963432566238081343s17−564086063872321283227377898505524964337647972874s16+3455479274253097667022850781839771753624423234904s15−19106150905180433836841370840720520730254423881608s14+95016805440277798948791961880071724979254840468929s13−423191412819701606939170449776991221026762564762134s12+1679388253814034927573955963119705211986770685692096s11−5901246920996930027398353258672134375430501093674292s10+18223056032757299723677197115436840451867570016972507s9−48990779766174603280048359215946380995121710109494534s8+113321069106447712596580868743552493265952488234823718s7−222147244707603864456988847170719586930861075287740628s6+361750364280689018403811976024779603977698517101723145s5−476023020468375739639805546881775966503839963726895558s4+486189941772275013925272339904814305044565423103995032s3−361526879215743172054055979436537894486717614578636048s2+174058431885383017168301054798869519419156663420841104s−40713255613779415843542530464505405012243371476335712=0

Verified upper bound

983881526994827100000000000000

9.83881526994827

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

47950

Proved by
wand125 2026
Kind
counting
Scope
Unrestricted unit-square packing with independent rotations and disjoint interiors.
Note
wand125's square-packing-bounds (4 October 2026) reports s(87)≥479/50 from a density of 594 uniform rectangles of total mass 8699999/100000, at core side 9977/10000 on 201 net half-angles, accepted there at every angle by its research copy of Tokoharu's verify.cpp at threshold one. It is above the 191/20 this case reported, from the source's mixed_n87_L955 (T-082). sqverify-fast decided it here on 5 October 2026 at all 201 net directions.
Source
[wand125 mixed bounds evening 2026-10-04]
Evidence
E-n087-wand125-mixed-958-report
Verified lower bound

47950

The reported value, verified here.

Evidence
E-n087-wand125-mixed-958-sqverify-fast-replay
Gap

0.25881526…

Verified upper minus verified lower.

Results in the register

Verification

upper: replayed here; lower: replayed here

—

Rigidity

not rigid, numerically checked, numerical multiprecision

Evidence: E-translation-escape-not-rigid

Scope

Square 12 of the retained witness (witness id 13) translates 0.087183 along (0.707107, -0.707107) with the packing still valid, so the configuration admits a non-trivial feasible motion; 17 of its 87 squares do. Every constraint is exactly affine in the slide parameter, so the arithmetic carries no linearization error, but the coordinates are the witness's own finite-precision transcription: this settles the retained configuration, not the true optimum. Rigidity and optimality are independent, and this bears only on the former.

s(87) — 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(87)≤9.83881526994827, the verified upper bound (T-101). Until then the verified upper bound was 9.83881526994915, the rounded-up side of an exact certificate of a binary64 parse of the catalogue’s picture (T-089).

Exact certificate, 2026-10-05. Allen Chang’s packing was certified here the same day, from a third party’s binary64 parse of the catalogue’s picture: an exact rational packing decided over ℚ by two checkers that share no geometry or verification code proves s(87)≤9.83881526994915, the verified upper bound until 6 October 2026, 8.9×10−13 above the printed side (T-089). Until then the verified upper bound was the 10×10 grid.

Catalogue intake, 2026-10-05. The Kingbird catalogue’s capture of 30 September 2026 prints the side 9.83881526994826 at n=87 for Allen Chang’s improvement and optimization of Ellsworth’s packing of February 2026, below the side this case reported by about 2.2×10−6 (T-089). It is the reported upper bound here from this date.

External intake, 2026-10-05. wand125’s mixed-certificate source reports s(87)≥479/50=9.58 (T-091), from a density of 594 rectangles of total mass 8699999/100000<87, accepted there at every net angle by its research copy of Tokoharu’s checker at threshold one. It is above the 191/20 this case reported, by 0.03. It supersedes the source’s mixed_n87_L955. sqverify-fast, this repository’s clean-room verifier, decided it here on 5 October 2026 at all 201 net directions, so it is also the verified lower bound: confirmed, independently re-implemented. wand125’s README says parts of the work were produced with AI assistance under human direction.

External intake, 2026-10-03. wand125’s mixed-certificate source reports the mixed certificate mixed_n87_L955 at side 191/20=9.55 (T-082), since superseded (T-091), from a density of 509 rectangles of total mass 8699999/100000<87, accepted there at every net angle by its research copy of Tokoharu’s checker at threshold one. It is above the 237/25 this case reported, by 0.07, and supersedes the source’s mixed_n87_L948. sqverify-fast, this repository’s clean-room verifier, decided it here on 6 October 2026 at all 201 net directions: confirmed, independently re-implemented. The verified lower bound is unchanged, the certificate above being higher. wand125’s README says parts of the work were produced with AI assistance under human direction.

External intake, 2026-10-02 (afternoon). wand125’s mixed-certificate source reports s(87)≥237/25=9.48 (T-075), since superseded (T-091), from a density of 299 rectangles of total mass 8699999/100000<87, accepted there at every net angle by its research copy of Tokoharu’s checker at threshold one. It is above this count’s own rectangle certificate of the 2026-10-01 intake below and above the 471/50 carried from n=85, and its mass, below 88, carries it to n=88 as well. Its complete replay here on 3 October 2026 returned the certificate’s own record at all 201 directions, so it was also the verified lower bound until 5 October. wand125’s README says parts of the work were produced with AI assistance under human direction.

Verified from n=85, 2026-10-02. wand125’s s(85)≥471/50=9.42 (T-071) is above this count’s own certificate, and a packing of 87 squares contains one of 85, so it bounds this case as well. Its complete replay passed here on 2 October, so it carried 471/50=9.42 here as the verified lower bound until the afternoon intake above. Until the afternoon intake above, the reported field kept this count’s own certificate, which is lower.

External intake, 2026-10-01. wand125’s rectangle-density source reports a direct 941/100=9.41 certificate for this case, whose reported bound the 2026-10-02 afternoon intake above raises, with total mass 8699/100=86.99<87, accepted by Tokoharu’s unchanged interval checker. This repository’s exact audit checks that the regenerated checker input is the published one, and checks the mass and net premises; the complete coverage replay has not yet run here, so the verified lower bound is unchanged. wand125’s README says parts of the work were produced with AI assistance under human direction.

Open. The best known packing gives s(87)≤9.83881527, and the verified lower bound is s(87)≥479/50=9.58, from wand125’s mixed rectangle-density certificate of 4 October, leaving a gap of 0.2588.

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 87 squares, each a rational centre and a rational t=tan(θ/2), in a square of side 9.8388152699482622604…, 2.3×10−15 above the side the Kingbird catalogue prints, 9.83881526994826. Square for square, its pose lies within 3.6×10−4 of the binary64 pose the atlas pictures for this count. 15 squares move by more than 1×10−8, all of them squares the source lists as carrying no force; every other square moves by at most 4.5×10−16. 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(87)≤9.83881526994827, 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

Allen Chang’s packing, as the Kingbird catalogue’s capture of 30 September 2026 prints it (T-089). In the catalogue’s words: “Improved and optimized by Allen Chang in September 2026, working with GPT-6 Astra, with help from “TheMagicAnimals”.” It names no method for that step. Its side is the root near 9.83881526994826 of the degree-41 polynomial the catalogue prints, 9.8388152699482622602…, which the catalogue prints cut short.

The catalogue names no checker, and its SVG, which holds the pose, could not be fetched when this was recorded. The retained witness is therefore Evan Daniel’s binary64 parse of that SVG, whose side is the polynomial’s root to 30 digits. The SVG was fetched later on 5 October and read again by this repository’s own adapter: every coordinate of the parse is the picture’s rounded to binary64, so the certificate below is of the pictured packing.

This repository certifies it exactly from that parse. The retained pose rounds to an exact rational packing of side 9.8388152699491448…, 8.85×10−13 above the printed side, once dilated about its centre by 1+10−13 (the promotion’s step before it, 1+10−15, left thirteen pairs overlapping), and every pair and every wall is decided over ℚ twice, by the promotion’s exact separating-axis test and by an independent checker that shares no geometry or verification code with it (receipt). That proves s(87)≤9.83881526994915, which was the verified upper bound until Evan Daniel’s exact certificate replaced it; it says nothing about optimality. The printed side is not certified: Evan Daniel’s exact certificate of the same packing (T-101) lies above it as well.

Found by David Ellsworth in 2024. Improved by David W. Cantrell in January 2025. Improved by David Ellsworth in February 2026, via simulated annealing, and optimized by him the same month. Its side length is algebraic of degree 41 over ℚ.

The previous best known packing

Before this intake the best known packing was Ellsworth’s of February 2026, of side 9.83881743996618, algebraic of degree 44, as the catalogue’s capture of 22 August 2026 printed it.

The lower bound

The verified field rests on a complete decision here (E-n087-wand125-mixed-958-sqverify-fast-replay, V3/C3) of wand125’s mixed certificate of 4 October by sqverify-fast, this repository’s clean-room measure verifier: all 201 net directions of the retained candidate on 5 October 2026, with two mutants scaled below coverage one refused. It shares no code with the source’s checker, so it decides coverage a second way with the same method; the source’s own checker was not run here.

Until 5 October 2026 the verified field rested on a complete replay here (E-n087-wand125-mixed-948-source-replay, V3/C3) of wand125’s mixed certificate: the source’s unchanged checker and per-angle functions on the pinned bundle, all 201 directions on 3 October 2026, each returning the certificate’s own record. It runs the source’s own algorithm, so it confirms the source’s run rather than deciding coverage a second way.

From the morning of 2 October 2026 until this replay the verified lower bound was 471/50, carried from the replayed n=85 certificate (E-n085-wand125-mixed-942-source-replay).

Until 2 October 2026 the verified lower bound was Nagamochi’s general closed form, now a reported bound (see the correction below). Karakuş’s general bound, independently verified here and below this certificate at this n, applies to every nonsquare N≥8:

s(N)≥12+N−⌊N⌋+14

Correction, 2 October 2026. Until that date the verified lower bound here was Nagamochi’s general closed form, s(N)≥min(⌈N⌉,N−2⌊N⌋+1+1), which is stronger at this n and is now recorded as a reported bound. Its published proof rests on Nagamochi’s Lemma 1, which Karakuş showed false; nothing is disproved, and no packing beating it is known (review of 2 October 2026). This register had recorded that proof as verified, its own error, logged as defect D-516.

See the Frontier corpus summary for the current aggregate count; source-reported bounds are recorded separately.

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-n087-wand125-mixed-958-sqverify-fast-replay replayed here independent 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)