# s(11) ≥ 381/100

A New Lower Bound on the Square Packing Problem

- Human oversight: [**Joshua Levy**](https://x.com/ojoshe)
- Agents: **Opus 5**, **Fable 5.1**, and **Codex 5.6**
- [**github.com/jlevy/squares**](https://github.com/jlevy/squares)
- September 8, 2026 (DRAFT v0.3.0-38ca2892)

> This is the Markdown edition, written by the same render that writes the page.
> The argument is complete here, and every figure's caption states what its figure
> shows. Only Figure 2 carries its image; the rest are drawn by
> [the page itself](https://jlevy.github.io/squares/).

## A New Bound for Packing 11 Squares

This work presents a new lower bound on a long-standing open geometry problem: eleven
unit squares with disjoint interiors, free to rotate, cannot fit in a square of size
$3.81 \times 3.81$.

This appears to be the first improvement in 23 years on the smallest open case of the
square packing problem.[^novelty] Stromquist published the previous bound of 3.7888543…
in 2003.[^stromquist-history][^repair] The tightest known packing, due to Trump in 1979
(Figure 1), shows $s(11) \le 3.8770835\ldots$.[^trump]

*Figure 1 is drawn by [the page](https://jlevy.github.io/squares/); its caption
follows.*

**Figure 1.** Eleven unit squares inside a square of side $3.8770835\ldots$, a root of
an eighth-degree polynomial.

The computer-assisted proof of the new lower bound was found via an automated research
framework. The certificate used in the proof places 1,121 rationally weighted points in
the container and selects a net of 181 rationally parameterized directions.
Five exact conditions and a pigeonhole-style argument then imply the claim.
[Verification](#verifiable-claim) is exact rational arithmetic: the one-file checker,
about 330 lines of standard-library Python and short enough to read in one sitting,
decides the certificate file of 1,121 weighted points in about a minute.

## The Agentic Research Framework

*All of this project’s documents and code, including this paper, are written by agents.
The repository uses a flexible but defined **agentic research framework**, which is
fully documented in [the repository](https://github.com/jlevy/squares).*

This lower bound is one of 22 results the framework has registered so far, 15 of them
apparently new. These include improved lower bounds for $n = 12$, $17$, and
$19$.[^other-results] The atlas of best known packings for every $n$ from 1 to 100 in
Figure 2 comes from the same research agenda and currently includes 7 new lower bounds.

The repository includes:

- A comprehensive survey of previous research
- The atlas of packings
- A hypothesis registry
- An experiment ledger
- Exact verifiers and other tools
- A retention gate that labels results according to epistemic status (levels of
  verification, confirmation, significance, and novelty)

Work is planned on a regular cadence, typically in blocks of 8 to 12 hours, with
strategic human input on priorities and insights.
Agents then break the work into defined workflows, including research survey,
correctness verification, research loop, and optimization loop.

The framework relies on several agent tools for better engineering and workflows,
notably **[tbd](https://github.com/jlevy/tbd)** for task tracking,
**[Softschema](https://github.com/jlevy/softschema)** for structuring results, and
**[Practical Prose](https://github.com/jlevy/practical-prose)** to improve writing
quality.

Even with the best agents, research requires strategic human input.
The framework lets that input focus on strategy, while agents build on accumulated
results and tools in a research flywheel.
This approach is likely to be useful for other creative mathematical or technical
problems.

## The Square Packing Problem

The **square packing problem** asks, for each $n$, for the side $s(n)$ of the smallest
square that holds $n$ unit squares, which are free to rotate and must have disjoint
interiors.[^survey] The value of $s(n)$ is known for $n \le 10$. Stromquist proved
$s(10) = 3 + 1/\sqrt{2}$.[^stromquist-memos] The case $n = 11$ is the smallest still
open.

For values of $n$ where $s(n)$ is still unknown, results generally take the form of
upper or lower bounds.
An **upper bound** is constructive: an arrangement of $n$ unit squares in a square of
side $L$ shows that $s(n) \le L$. Trump’s packing for $n = 11$ in Figure 1 is one
example. Such constructions may be specified with approximate numerical coordinates or
derived exactly by solving the geometric relationships between touching squares.
Approximate coordinates alone do not constitute a formal proof of the upper bound.

A **lower bound** proves that $s(n) \ge L$ by ruling out every arrangement in a
container of side less than $L$. This requires an argument covering all possible
placements and rotations of the squares.
Such arguments range from simple area comparisons to detailed geometric proofs and
computer-assisted certificates.
The proof presented here is of this kind.

![The best known packings of one through one hundred unit squares, in a ten-by-ten grid, each labelled with its best known upper bound and, where the value is still open, the strongest lower bound independently verified here](known-best-1-100.svg)

**Figure 2.** The best known packings of 1 through 100 unit squares, with upper bounds
and, for unsettled cases, lower bounds verified here.
A crimson star marks a lower bound this project proved: 7 of the hundred.
The
[repository](https://github.com/jlevy/squares/tree/38ca28922ad91fe98554db4a8b3865bfe22ff741/packing/atlas/known-best)
records every witness and its provenance.
PDFs are available for [this figure](known-best-1-100.pdf) and the
[full 324-case poster](known-best-1-324.pdf).

For eleven squares, we prove $s(11) \ge 381/100 = 3.81$.

(Some figures also show the simpler certificate for the weaker bound $s(11) \ge 19/5$,
whose smaller numbers make the argument easier to illustrate.
There is a small exact refinement in
[T-022](https://github.com/jlevy/squares/blob/38ca28922ad91fe98554db4a8b3865bfe22ff741/packing/cases/n11_fractional_certificate/t-022-dilation-limit-proof.md).)

*Figure 3 is drawn by [the page](https://jlevy.github.io/squares/); its caption
follows.*

**Figure 3.** Bounds on $s(11)$. The shaded band is the gap left by the certificates
explained here. With their lower bound at $381/100$ the gap is $0.0670835\ldots$ wide,
down from $0.0882292\ldots$ at Stromquist’s bound.

## The Five Conditions

We prove $s(11) \ge 381/100 = 3.81$ with a new weighted-point certificate found by our
automated search. The five conditions below follow the finite certificate method used by
Burns and Massaccesi.[^burns][^massaccesi][^lineage]

The proof uses a finite **certificate**: for $n$ unit squares in a container of side
$L$, a finite set of points in the container, each with a nonnegative rational weight
(the atoms; every weight in this certificate is positive), a net of directions
$\theta_k = 2\arctan t_k$ with rational half-tangents
$0 = t_0 \lt t_1 \lt \cdots \lt t_K$, and a shrink $B$, such that:

**Condition 1.** The atom positions and weights are invariant under the container’s
symmetry group $\mathbf{D}_4$, its four rotations and four reflections.

**Condition 2.** The total mass of the atoms, the sum of all their weights, is strictly
below $n$.

**Condition 3.** The net reaches $\pi/4$: its last half-tangent is at least
$\tan(\pi/8)$.

**Condition 4.** $B(1 + D) \lt 1$, where $D$ is the largest of the net’s half-gap
tangents, each the tangent of half the angle between two consecutive net directions.

**Condition 5.** At every net direction, every placement of a closed square of side $B$
inside the container covers mass at least $1$.

Conditions 1 to 4 are exact rational comparisons.
Condition 5 is one exact sweep per direction.
Together the five prove $s(n) \ge L$. The certificate is
[`C-n011-fractional-381-100`](https://github.com/jlevy/squares/blob/38ca28922ad91fe98554db4a8b3865bfe22ff741/packing/cases/n11_fractional_certificate/certificate.json)
(a weaker but simpler one is at
[`C-n011-fractional-19-5`](https://github.com/jlevy/squares/blob/38ca28922ad91fe98554db4a8b3865bfe22ff741/packing/cases/n11_fractional_certificate/certificate-19-5.json)).
Every figure below is
[computed](https://github.com/jlevy/squares/blob/38ca28922ad91fe98554db4a8b3865bfe22ff741/packing/devtools/render_explainer.py)
from the certificate it shows.

## Atoms, Mass, and the Budget

An **atom** is a point in the container with a nonnegative rational weight, and here
every weight is positive.
The **mass** $\mu(R)$ of a region is the sum of the weights of the atoms in it, a finite
exact sum.

Suppose eleven unit squares fit in the side-3.81 container, and suppose the atoms have
been chosen so that both of these hold:

- Every unit square that can be placed in the container holds mass at least $1$ in its
  interior.
- The total mass of all 1,121 atoms is below $11$.

The second is a single sum:

$$
\sum_a w_a \;=\; \frac{434547}{40000} \;=\; 10.863675 \;\lt\; 11
$$

Two packed squares may share an edge, and an atom on it lies in both.
Their interiors are disjoint, so no atom lies in two of them, and together the eleven
interiors hold mass at least $11$. The container holds only $10.863675$. So eleven unit
squares do not fit.

Both conditions are properties of the atoms, not of any packing.
The rest of the proof makes the first one finite to check.

## The Atom Set

There are 1,121 atoms in 149 orbits of $\mathbf{D}_4$, the eight rotations and
reflections of the container, with 100 distinct weights between $0.000075$ and
$0.14672$. An orbit is an atom with its images under all eight, so the set is invariant
under the group: Condition 1. That invariance is what lets the proof check angles only
up to $\pi/4$, since a square at any other angle reflects onto that arc and covers the
same mass.

*Figure 4 is drawn by [the page](https://jlevy.github.io/squares/); its caption
follows.*

**Figure 4. Conditions 1 and 2.** The atoms.
Disc area is proportional to weight.
Mass gathers along the edges and in a ring inside the corners, where a square has least
room to move, and thins in the middle.
The weights are a rationalized solution, on these sites, of the linear program described
under Generator and Verifier.
The container holds less mass than eleven unit squares with disjoint interiors would
need. Condition 2 is that comparison.

## Every Placement Covers Mass at Least One

The covering requirement on the atoms, that every placement of a unit square holds mass
at least $1$ in its interior, has three continuous parameters, two of position and one
of angle.

The proof makes it finite twice over.
The angle is snapped to a net of 181 rational directions, and the square checked at each
is a slightly smaller one, of side $B$. The next section shows why it stands in for a
unit square at any angle.
Within a direction, the set of atoms under the square changes only when an atom crosses
an edge, so the positions collapse to finitely many **event cells**, on each of which
the covered mass is constant.
Condition 5 says every event cell the square’s center can reach without leaving the
container, at every net direction, carries mass at least $1$.

Figure 5 evaluates it.
Every weight is a whole multiple of $1/200000$, so the readout counts units and rounds
nothing. The least covered mass over every placement and all 181 directions is attained
at direction $0$, by the square $Q$ centered at $(27/50, 27/50)$:

$$
\mu(Q) \;=\; \frac{4001}{4000} \;=\; 1.00025,
$$

a margin of 50 of those units above the threshold.

*Figure 5 is drawn by [the page](https://jlevy.github.io/squares/); its caption
follows.*

**Figure 5. Condition 5.** The prover.
The exact certificate guarantees covered mass at least 1 throughout the dashed domain at
every net direction.
The shading previews this mass.
Outside the domain, the square extends beyond the container.

## From a Continuum of Angles to 181

Take a unit square at any angle.
A quarter turn leaves a square unchanged, so its angle may be taken below $\pi/2$, and
the net covers only the arc $[0, \pi/4]$. A square whose angle lies past $\pi/4$ is
therefore first reflected across the container’s diagonal: the image is a unit square in
the container whose angle $\varphi$ is on the arc, and by Condition 1 it covers the same
mass. Let $\theta$ be the net angle nearest $\varphi$. A smaller square of side $B$ at
angle $\theta$, with the same center, covers no more mass than the unit square if it
fits inside it, because the weights are nonnegative.
So if every placement of the smaller square at a net angle covers mass at least 1, every
unit square at any angle does too.

It fits exactly when

$$
B\,(\cos d + \sin d) \;\le\; 1,
$$

where $d$ is the angle between the two, at most half the gap between two consecutive net
angles. Since $\cos d + \sin d \le 1 + \tan d$ on $[0,\pi/4)$, it is enough that

$$
B\,(1 + D) \;\lt\; 1, \qquad D \;=\; \max_k \frac{t_{k+1}-t_k}{1+t_k t_{k+1}} \;=\; \max_k \tan\frac{\theta_{k+1}-\theta_k}{2}.
$$

That is Condition 4, and it couples the two parameters: a coarser net widens the gaps,
forces $B$ smaller, and makes Condition 5 harder to meet.

The contradiction needs a little more than a fit.
Two packed squares may share an edge, so the smaller square has to lie in its unit
square’s *interior*, where no other square reaches.
It does: its width across the unit square, $B(\cos d + \sin d)$, is $B$ when $d = 0$,
and $B \lt 1$ because $B(1 + D) \le 1$ with $D \gt 0$; when $d \gt 0$ it is
$B\cos d\,(1 + \tan d) \lt B(1 + D) \le 1$, since then $\cos d \lt 1$. So the interior
of every unit square at any angle holds mass at least $1$, as the budget assumed.
Nothing there needed the inequality in Condition 4 to be strict, so the strict form the
verifier tests is a sufficient condition rather than a necessary one, and both
certificates meet it.

Each angle is carried as a rational half-tangent, $\theta_k = 2\arctan t_k$, so that

$$
\cos\theta = \frac{1-t^2}{1+t^2}, \qquad \sin\theta = \frac{2t}{1+t^2}
$$

are exact rationals and no angle is a floating-point number.
The net must reach $\pi/4$, the end of the arc that Condition 1 reflects every angle
onto. That is Condition 3, and since $\tan(\pi/8) = \sqrt{2}-1$ is irrational it too is
tested in rational form:

$$
t_K^{\,2} + 2t_K - 1 \;\ge\; 0 \quad\Longleftrightarrow\quad t_K \;\ge\; \tan\frac{\pi}{8}.
$$

*Figure 6 is drawn by [the page](https://jlevy.github.io/squares/); its caption
follows.*

**Figure 6. Condition 4.** The shrink that buys the finite net.
The dark outline is the unit square at angle $\varphi$. Orange is the side-$B$ square at
the nearest net angle.
The proof only ever asks about the orange one.
The product $B(\cos d + \sin d)$ must stay below 1. At $K = 180$, the net the proof
uses, that product’s largest value, at the widest half-gap, is $0.9999971\ldots$ at
$B = 9977039/10000000$, the side the figure uses: one seven-decimal step below the
largest side Condition 4 admits, a step taken so that the strict inequality holds
however the division falls, so the shrink shown is, to within that step, the least the
net allows. At the certificate’s own side the product reaches $0.9999932\ldots$.

## What a Coarser Net Costs

We use the net from Massaccesi’s certificate: 181 equally spaced half-tangents, from $0$
to $207107/500000$.[^massaccesi] To price a coarser net, hold a certificate’s atoms
fixed, coarsen the net, set $B$ to a seven-place value one step below the largest
Condition 4 admits, and decide Condition 5 again.
Figure 7 does this for each certificate, and its caption says what halving the net
costs.

*Figure 7 is drawn by [the page](https://jlevy.github.io/squares/); its caption
follows.*

**Figure 7. Condition 4 → Condition 5.** Least covered mass as the net of the 19/5
certificate is coarsened.
Halving the net shrinks $B$ by ≈0.23% and costs ≈9% of the least covered mass.
This shows these atoms are tight against their own net, not that no coarser net could be
made to work. It measures the slope of the trade.

## The Contradiction Argument

Take any packing of eleven unit squares in the side-3.81 container.
Reflect across the container’s diagonal each square whose angle lies past $\pi/4$, so
that every angle is on the arc from $0$ to $\pi/4$ the net covers (Condition 3).

Each square then contains a side-$B$ square $Q_i$, centered at the same point and
oriented at the nearest net angle, inside the unit square’s interior: the mismatch $d$
of the two angles has $\tan d \le D$, and Condition 4 makes $B(\cos d + \sin d) \lt 1$
for every such $d$. Each $Q_i$ covers mass at least $1$, which is Condition 5.

Now reflect back each square that was reflected, and $Q_i$ with it.
$Q_i$ still lies in its own unit square’s interior, and by Condition 1 it still covers
mass at least $1$.

The unit squares have disjoint interiors, so the eleven $Q_i$ are disjoint.
Because the weights are nonnegative and no atom is counted twice, the eleven together
cover at most the container’s total mass.
Then

$$
11 \;\le\; \sum_{i=1}^{11} \mu(Q_i) \;\le\; \mu\!\left([0,L]^2\right) \;=\; \frac{434547}{40000} \;=\; 10.863675 \;\lt\; 11,
$$

where the last step is Condition 2. The two ends contradict each other, so no such
packing exists, and $s(11) \ge 381/100$.

The argument shows that a container of side exactly 381/100 is too small.
By compactness a packing exists at the infimum, so in fact $s(11) \gt 381/100$; the
claim is stated as $\ge$ because that is what the theorem behind the verifier proves,
with no appeal to compactness.

## Generator and Verifier

The generator solves for the weights on a chosen set of sites $A$, arranged in orbits of
$\mathbf{D}_4$. The weights, one per orbit, come from the covering linear program

$$
\tau^*(A, \Theta; L, B) \;=\; \min_{w \,\ge\, 0}\; \sum_{a \in A} w_a \quad\text{subject to}\quad \sum_{a \in Q} w_a \;\ge\; 1 \;\;\text{ for every placement } Q,
$$

with one constraint per placement of a side-$B$ square at a direction of the net
$\Theta$. Placements form a continuum, so constraints are generated as needed: the
event-cell sweep that decides Condition 5 finds a placement whose mass falls short, and
it becomes a new constraint.
The sweep is the separation oracle.

Condition 1 holds by construction, Condition 5 is feasibility in this program, and
Condition 2 is a bound on its objective, so on a net and shrink that satisfy Conditions
3 and 4, a certificate on these sites exists when $\tau^* \lt n$. The target $n$ never
enters the program; it is compared with the optimum afterwards.
What the certificate carries is not that optimum but a rational point beside it: the
solver’s weights, inflated slightly and rounded up to multiples of $1/200000$ so that
every constraint holds in exact arithmetic.
The verifier proves that point feasible, not minimal.

The search runs in floating point.
None of it is part of the proof: the
[generator](https://github.com/jlevy/squares/blob/38ca28922ad91fe98554db4a8b3865bfe22ff741/packing/src/sqpack/fractional/generate.py)
writes the certificate to a file, and the
[verifier](https://github.com/jlevy/squares/blob/38ca28922ad91fe98554db4a8b3865bfe22ff741/packing/src/sqpack/fractional/certificate.py)
decides Conditions 1 through 5 on it in exact rational arithmetic.
The verifier rejects a certificate that fails the conditions, regardless of how it was
generated. The gate that admits a certificate to the record asks for two verdicts: it
accepts one only when the exact event-cell sweep and an interval branch-and-bound, which
decide Condition 5 by distinct methods, both accept it and report the same least covered
mass.

Geometric constraints can strengthen the final count.
Stromquist’s six-square proof rules out a container of side less than 3 by forcing four
of eight marked points into one square; each other square must contain at least one, so
at most five fit. The repaired eleven-square argument similarly forces three of twelve
points into one square.[^stromquist-memos][^repair] These examples suggest extending the
weighted method by using constraints between squares to force additional mass
consumption.

A
[first-party package for third-party checking](https://github.com/jlevy/squares/blob/38ca28922ad91fe98554db4a8b3865bfe22ff741/packing/cases/n11_fractional_certificate/thirdparty/README.md)
gathers what an outside check needs: the theorem written out, the 19/5 certificate as
plain data, and a one-file verifier on Python’s standard library that decides it without
importing anything else from the repository.

(It decides the looser of the two bounds, not the headline one.)

This project wrote every file in the package, so it is not itself a third-party check.

## Verifiable Claim

Each bound has one self-contained file: the claim, the theorem with its proof, a
verifier in Python’s standard library, and the certificate it decides, to paste into any
coding agent or check by hand.

For $s(11) \ge 381/100$:
[`t-018-verifiable-claim-381-100.md`](https://github.com/jlevy/squares/blob/38ca28922ad91fe98554db4a8b3865bfe22ff741/packing/cases/n11_fractional_certificate/t-018-verifiable-claim-381-100.md),
1,121 atoms. (For the weaker bound $s(11) \ge 19/5$:
[`t-018-verifiable-claim-19-5.md`](https://github.com/jlevy/squares/blob/38ca28922ad91fe98554db4a8b3865bfe22ff741/packing/cases/n11_fractional_certificate/t-018-verifiable-claim-19-5.md),
425 atoms.)

The one-file checker
[`minimal_verify.py`](https://github.com/jlevy/squares/blob/38ca28922ad91fe98554db4a8b3865bfe22ff741/packing/cases/n11_fractional_certificate/minimal_verify.py)
verifies the 381/100 certificate in about a minute.[^verifier-timing]

## Acknowledgments

We thank Walter Stromquist for drawing attention to his twenty-six-square construction
in Memo III (private communication, September 2026). His suggestion prompted a
[source review and independent exact verification](https://github.com/jlevy/squares/blob/38ca28922ad91fe98554db4a8b3865bfe22ff741/docs/project/research/research-2026-09-07-stromquist-n26-verification.md).

## Further Reading

- **Papers and sources**
- Friedman’s survey: an introduction to the problem and its literature.[^survey]
- Stromquist’s geometric proofs for ten and eleven
  squares.[^stromquist-history][^stromquist-memos]
- Nagamochi’s lower bounds for square packings in rectangles.[^lineage]
- Burns’s weighted certificates and Massaccesi’s linear program for finding their
  weights.[^burns][^massaccesi]
- [Full paper and source archive](https://github.com/jlevy/squares/tree/38ca28922ad91fe98554db4a8b3865bfe22ff741/packing/resources):
  original papers, searchable transcriptions, and captured web sources
- **Elements of the project**
- **[Project overview](https://github.com/jlevy/squares):** results, repository
  structure, and the research process
- **[Problem tutorial](https://github.com/jlevy/squares/blob/38ca28922ad91fe98554db4a8b3865bfe22ff741/TUTORIAL.md):**
  written as part of this project, a first-principles introduction to square packing,
  bounds, search, and proof obligations
- **[Atlas of packings](https://github.com/jlevy/squares/tree/38ca28922ad91fe98554db4a8b3865bfe22ff741/packing/atlas/known-best):**
  created as part of this project, a collection of the best known packings for $n=1$
  through $324$, with figures, geometry records, and provenance
- **Agentic research framework**
- **[Workflows](https://github.com/jlevy/squares/blob/38ca28922ad91fe98554db4a8b3865bfe22ff741/SYNOPSIS.md#workflow-entry-contracts)**
  define entry conditions and expected outputs for each kind of research work.
- **[Operating principles](https://github.com/jlevy/squares/blob/38ca28922ad91fe98554db4a8b3865bfe22ff741/README.md#operating-principles)**
  cover correctness, process, insight, and efficiency.
- **[Epistemics](https://github.com/jlevy/squares/blob/38ca28922ad91fe98554db4a8b3865bfe22ff741/epistemics.md)**
  classifies results by verification, confirmation, significance, and novelty.
- **Agentic tooling**
- **[tbd](https://github.com/jlevy/tbd):** tasks, dependencies, and handoffs tracked in
  Git, plus engineering best practices and guidelines for agents
- **[Softschema](https://github.com/jlevy/softschema):** research records in YAML and
  Markdown, with validation rules that can become stricter as the work matures
- **Document tooling**
- **[Practical Prose](https://github.com/jlevy/practical-prose):** writing guidelines,
  editing workflows, and document evaluation
- **[Flowmark](https://github.com/jlevy/flowmark):** automated Markdown management and
  consistent formatting
- **[KPress](https://github.com/jlevy/kpress):** web and print formatting from Markdown

[^stromquist-history]: Walter Stromquist states this bound in
    [Memo III (1984), p. 10](https://walterstromquist.com/papers/squares3.pdf#page=10),
    as an adaptation of his preceding proof for $0^\circ$ and $45^\circ$ orientations.
    This suggests he already had the general argument, whose details he omits.
    The journal proof appeared in
    [Packing 10 or 11 unit squares in a square](https://www.combinatorics.org/ojs/index.php/eljc/article/view/v10i1r8),
    Electronic Journal of Combinatorics 10 (2003), R8.

[^stromquist-memos]: Walter Stromquist, *Packing Unit Squares Inside Squares*,
    [Memo I](https://walterstromquist.com/papers/squares1.pdf), September 11, 1984, pp.
    13–19, gives the six-square helper argument.
    [Memo II](https://walterstromquist.com/papers/squares2.pdf), October 15, 1984,
    proves the ten-square result, later published in his
    [2003 paper](https://www.combinatorics.org/ojs/index.php/eljc/article/view/v10i1r8).

[^novelty]: Our
    [search through September 4, 2026](https://github.com/jlevy/squares/tree/38ca28922ad91fe98554db4a8b3865bfe22ff741/packing/resources/web/s11-lower-bound-literature-audit-2026)
    found no earlier improvement on Stromquist’s bound, stated in 1984 and published in
    2003\. We checked the project’s sources, scholarly indexes, author pages, and public
    packing catalogues, but may have missed work in subscription-only indexes, theses,
    proceedings, or unindexed sources.

[^repair]: The bound is correct, but the project found that Stromquist’s printed
    argument does not close at his Figure 14 and repaired it with a source-distinct
    point set, certified exactly (`T-010` in the project’s result register).
    The proof here does not depend on it.

[^survey]: Erich Friedman,
    [Packing unit squares in squares: a survey and new results](https://erich-friedman.github.io/papers/squares/squares.html),
    Electronic Journal of Combinatorics, Dynamic Survey DS7.

[^trump]: Walter Trump’s packing of 1979, as recorded in
    [Kingbird’s register of squares in squares](https://kingbird.myphotos.cc/packing/squares_in_squares.html),
    which also lists the degree-eight polynomial defining its side length.
    The
    [rendering](https://github.com/jlevy/squares/blob/38ca28922ad91fe98554db4a8b3865bfe22ff741/packing/atlas/known-best/rendering/n-011.svg)
    is the project’s own.
    Stromquist’s [Memo III](https://walterstromquist.com/papers/squares3.pdf), pp.
    2–4, credits Mats Gustafsson and Magnus Thulin with the same construction, reported
    by Gardner in November 1980; the research archive records their independent
    rediscovery.

[^other-results]: The
    [result register](https://github.com/jlevy/squares/blob/38ca28922ad91fe98554db4a8b3865bfe22ff741/packing/frontier/RESULTS.md)
    records $s(12) \ge 3.96$ (`T-017`), $s(17) \ge 4.59$ (`T-019`), and $s(19) \ge 4.80$
    (`T-020`), each supported by a retained weighted-point certificate and classified as
    apparently novel.

[^burns]: Sam Burns,
    [Proposing a Better Lower Bound for n=17 Square Packing](https://sam-burns.com/posts/proposing-better-lower-bound-for-n17-square-packing/),
    August 2026, presents a weighted-point certificate for seventeen squares with a
    rational direction net and exact coverage checks.
    Burns credits ChatGPT with developing the certificate.

[^massaccesi]: Gustavo Massaccesi,
    [Another Better Lower Bound for n=17 Square Packing](https://gus-massa.blogspot.com/2026/08/another-better-lower-bound-for-n17.html),
    August 2026, improves Burns’s certificate.
    His
    [Linear Programing for Square Packing](https://gus-massa.blogspot.com/2026/08/linear-programing-for-square-packing.html)
    describes the linear program and search used to find its weights.

[^lineage]: Earlier counting methods include Göbel’s unavoidable points and Nagamochi’s
    weighted resources: F. Göbel, Geometrical packing and covering problems, in *Packing
    and Covering in Combinatorics*, Mathematical Centre Tracts 106 (1979), 179–199;
    Hiroshi Nagamochi,
    [Packing unit squares in a rectangle](https://github.com/jlevy/squares/blob/38ca28922ad91fe98554db4a8b3865bfe22ff741/packing/resources/papers/nagamochi-2005-packing-unit-squares-in-a-rectangle.pdf),
    Electronic Journal of Combinatorics 12 (2005), R37.

[^verifier-timing]: The one-minute timing is for `minimal_verify.py`;
    [recorded runs](https://github.com/jlevy/squares/blob/38ca28922ad91fe98554db4a8b3865bfe22ff741/packing/cases/n11_fractional_certificate/t-018-proof-card.md#verify-it-in-one-command)
    took 47.5–67.0 seconds under CPython 3.14 on September 5, 2026. The claim document
    embeds a separate verifier, `verify_claim.py`, which checks the same certificate in
    about 3 minutes on an Apple Silicon laptop.
