Geometry
The Apollonian Gasket: Circles Packed to Infinity
The Apollonian gasket is a fractal you build by starting with three circles that touch, dropping a fourth circle into the space they trap, and then repeating that move forever in every new curved gap that opens up. What makes it remarkable is that a single quadratic identity — Descartes' Circle Theorem — controls the whole infinite cascade, and when the first four circles have whole-number curvatures, every one of the infinitely many circles that follow does too.- Hausdorff dimension≈ 1.30569 (McMullen, 1998)
- Descartes' theorem(k₁+k₂+k₃+k₄)² = 2(k₁²+k₂²+k₃²+k₄²)
- Circles tangent to 3 givenexactly 2 (inner & outer)
- Area of the gasketLebesgue measure 0
- First recordedDescartes, 1643; Soddy's poem, 1936
- Smallest bounded integer packing(−1, 2, 2, 3)
Interactive visualization
Press play, or step through manually. The visualization is yours to drive — try it before reading on.
Watch the 60-second explainer
A condensed visual walkthrough — narrated, captioned, under a minute.
The construction: circles all the way down
Start with three circles arranged so that each one touches the other two — three mutually tangent circles, like coins pushed together on a table. The ancient question, Apollonius' problem (after Apollonius of Perga, c. 200 BC), asks which circles are tangent to three given ones. For three circles that already kiss each other pairwise, the answer is clean: there are exactly two circles tangent to all three at once — a small one nestled in the central gap, and a large one wrapping around the outside. These are the two Soddy circles.
Choose the outer one as a boundary. Inside it you now have four mutually tangent circles, and between them sit curved triangular gaps — regions bounded by three circular arcs, called interstices or curvilinear triangles. Each such gap is itself bounded by three mutually tangent arcs, so Apollonius' problem applies again: there is a unique new circle tangent to all three. Drop it in. That single circle splits one gap into three smaller gaps. Repeat in every gap, forever.
The number of gaps triples at each stage, so the count of circles grows geometrically — roughly like 3ⁿ new circles at stage n — while their radii shrink fast enough that the total area they cover converges to the area of the bounding disk. What is left uncovered, the dust of tangency points and limiting arcs, is the Apollonian gasket itself.
Descartes' Circle Theorem: the engine of the cascade
The whole construction is powered by one identity relating the sizes of four mutually tangent circles. Measure size by curvature k = 1/r, the reciprocal of the radius, with a sign convention: a circle is given positive curvature when the others touch it from outside, and negative curvature when it encloses the others (so the outer bounding circle of radius R has curvature −1/R). With that bookkeeping, the four curvatures obey Descartes' Circle Theorem:
(k₁ + k₂ + k₃ + k₄)² = 2(k₁² + k₂² + k₃² + k₄²).
René Descartes stated it in a 1643 letter to Princess Elisabeth of Bohemia; the chemist Frederick Soddy rediscovered it in 1936 and published it as verse ("The Kiss Precise") in Nature. Treat the equation as a quadratic in the unknown fourth curvature k₄. Writing s = k₁ + k₂ + k₃, it becomes k₄² − 2s·k₄ + (s² − 4(k₁k₂ + k₂k₃ + k₃k₁)) = 0, whose two roots are
k₄ = k₁ + k₂ + k₃ ± 2√(k₁k₂ + k₂k₃ + k₃k₁).
The two roots are precisely the curvatures of the two Soddy circles — the plus sign gives the tight inner circle (large curvature), the minus sign the enclosing or outer circle. Because they are the two roots of the same quadratic, Vieta's formula gives their sum, and this relation is the secret of everything that follows.
Locating the circles: the complex Descartes theorem
Descartes' theorem fixes the sizes of the new circles but not where they sit. In 2002, Lagarias, Mallows, and Wilker sharpened it into a version that also pins down the centers. Encode each center as a complex number z in the plane and track the products k·z. Then the same algebraic shape holds:
(k₁z₁ + k₂z₂ + k₃z₃ + k₄z₄)² = 2(k₁²z₁² + k₂²z₂² + k₃²z₃² + k₄²z₄²).
This complex Descartes theorem is a genuine equation about the centered, curvature-weighted positions, and solving its quadratic for k₄z₄ returns the exact center of the newly inscribed circle. In practice this pair of identities is all a program needs: given any three mutually tangent circles it computes both the radius and the position of the fourth, so the entire gasket can be generated by pure arithmetic, never by trial-and-error geometry.
A fractal of dimension 1.3057
The gasket is the residual set: the closed disk minus the interiors of all the circles you ever draw. Two facts pull in opposite directions. First, the circles fill the disk perfectly in the sense of area — the residual set has Lebesgue measure zero (proved by Boyd), so if you threw a dart it would land inside some circle with probability one. Second, the residual set is uncountable and connected, far too intricate to be a mere curve. It threads between dimension 1 and dimension 2.
Its Hausdorff dimension is approximately 1.305686729…. Crucially, this number is not the tidy log-ratio you get for the Cantor set or Koch curve, because the gasket is not built from finitely many scaled copies of itself. It is self-similar only under Möbius transformations (circle inversions), a conformal iterated function system whose pieces are distorted by varying amounts. The dimension is therefore the solution of Bowen's equation — the value δ at which a pressure (thermodynamic) function vanishes — rather than a simple fraction. David Boyd (1973) bounded it between about 1.300 and 1.315; Curtis McMullen (1998) computed δ ≈ 1.30569 with a transfer-operator eigenvalue method. It is the same exponent that governs growth: the number of circles with curvature below T is asymptotic to c·Tδ (Kontorovich–Oh).
The integer miracle: whole-number curvatures forever
Here is the gem that draws in number theorists. Return to the quadratic k₄² − 2s·k₄ + (…) = 0 from Descartes' theorem. Its two roots k₄ and k₄′ satisfy Vieta's sum relation:
k₄ + k₄′ = 2(k₁ + k₂ + k₃).
So if you already know one tangent circle's curvature k₄ and the three it rests on, the other Soddy circle simply has curvature k₄′ = 2(k₁ + k₂ + k₃) − k₄ — no square roots, just addition, subtraction, and doubling. This is a Vieta jump. The consequence is startling: if the first four curvatures are integers, every curvature in the entire infinite gasket is an integer. Each new circle is spawned from three integers by that linear formula, so integrality propagates without end. These are the integral Apollonian packings.
The smallest bounded example starts from curvatures (−1, 2, 2, 3) — a unit bounding circle, two half-radius circles, and a radius-⅓ circle — and you can check (−1+2+2+3)² = 36 = 2(1+4+4+9). Iterating produces curvatures 6, 11, 14, 15, 18, 23, and on forever. Allowing curvature 0 (a straight line, a circle of infinite radius) gives the packing (0, 0, 1, 1): two parallel lines with unit circles between them, whose descendants are the classical Ford circles, one tangent to the number line above each fraction p/q with curvature 2q². The four Vieta swaps that replace one circle by its Soddy partner generate the Apollonian group, a group of integer matrices preserving the Descartes quadratic form.
Which integers appear? Number theory and open frontiers
Given an integral packing, a natural question is: which whole numbers show up as curvatures? Every packing has a unique smallest "root quadruple" that generates it, and it is called primitive when the four seed curvatures share no common factor. Elena Fuchs proved that the only congruence obstruction lives modulo 24: within a fixed primitive packing, every curvature is congruent to one of a fixed handful of residues mod 24, and no others can occur.
The famous local–global conjecture proposed that this congruence condition is essentially the whole story: every sufficiently large integer in the allowed residue classes should actually appear. Jean Bourgain and Alex Kontorovich (2014) proved a powerful version — a density-one result: almost all admissible integers up to N really do occur, the exceptions being vanishingly rare. For years this looked like strong evidence for the full conjecture.
Then in 2023, Summer Haag, Clyde Kertzer, James Rickards, and Katherine Stange disproved the local–global conjecture. They found reciprocity obstructions — subtler constraints coming from quadratic and quartic reciprocity — that permanently exclude an infinite family of integers which nonetheless pass every congruence test mod 24. So the true set of curvatures is thinner than the mod-24 prediction, even though (by Bourgain–Kontorovich) it still contains almost all admissible numbers. The gasket thus remains a live research object: a fractal built by grade-school arithmetic whose integer content encodes deep and still-unfolding number theory.
| Fractal | Hausdorff dimension | Type of self-similarity | Rule that builds it |
|---|---|---|---|
| Cantor set | ≈ 0.6309 (ln 2 / ln 3) | exact — 2 maps × 1/3 | delete the middle third |
| Koch snowflake | ≈ 1.2619 (ln 4 / ln 3) | exact — 4 maps × 1/3 | replace each edge with a bump |
| Apollonian gasket | ≈ 1.3057 | conformal — Möbius maps, not similarities | inscribe the tangent circle in each gap |
| Sierpiński triangle | ≈ 1.5850 (ln 3 / ln 2) | exact — 3 maps × 1/2 | remove the central sub-triangle |
| Mandelbrot boundary | = 2 (Shishikura) | quasi-self-similar | iterate z ↦ z² + c |
Frequently asked questions
What exactly is a curvature, and why can it be negative?
Curvature is the reciprocal of the radius, k = 1/r, so small tight circles have large curvature. Descartes' theorem needs a sign convention: a circle is counted with positive curvature when the other circles touch it from the outside, and with negative curvature when it encloses them. That is why the outer bounding circle of a bounded gasket carries a negative curvature, such as the −1 in the (−1, 2, 2, 3) packing.
Why are there exactly two circles tangent to three touching circles?
Descartes' Circle Theorem, read as a quadratic equation in the unknown fourth curvature, has exactly two solutions: k = k₁+k₂+k₃ ± 2√(k₁k₂+k₂k₃+k₃k₁). The plus sign gives the small circle wedged in the gap and the minus sign gives the large circle wrapping around the outside. These are the two Soddy circles, and picking the inner one at each step is what generates the gasket.
How can the gasket have zero area but be a complicated fractal?
The circles you inscribe cover the bounding disk so efficiently that the leftover residual set has Lebesgue measure zero — area zero. But zero area does not mean simple: the set is uncountable, connected, and infinitely detailed, so it has Hausdorff dimension about 1.3057, strictly between a curve (dimension 1) and a filled region (dimension 2).
Why isn't the dimension a clean number like log 3 / log 2?
Clean log-ratios come from fractals made of finitely many exact scaled copies of themselves, like the Koch curve. The Apollonian gasket is self-similar only under Möbius transformations (circle inversions), which distort different pieces by different amounts. Its dimension is the root of a pressure equation from conformal dynamics, computed numerically by McMullen as roughly 1.305686729, not a simple fraction of logarithms.
Why do all the curvatures stay whole numbers?
The two Soddy circles resting on the same three circles have curvatures k and k′ with k + k′ = 2(k₁+k₂+k₃), a relation with no square roots in it. So once four seed curvatures are integers, every later circle is 2(sum of three integers) minus an integer, which is again an integer. This linear 'Vieta jump' propagates integrality through the entire infinite packing.
Is it now understood which integers appear as curvatures?
Partly. Every curvature in a primitive packing lies in a fixed set of residue classes modulo 24 (Fuchs), and Bourgain–Kontorovich showed almost all such admissible integers really do appear. But the full local–global conjecture is false: in 2023 Haag, Kertzer, Rickards, and Stange found reciprocity obstructions that exclude infinitely many otherwise-admissible integers, so the exact set of curvatures is still being mapped out.