← Exceptional Atlas

Sphere Packing & the Leech Lattice

Part 9 of 9. The 240 roots generate the E₈ lattice, which gives both the largest kissing number and the densest sphere packing in 8 dimensions. A binary code builds it, and the same ideas lead to the Leech lattice in 24.

The E₈ lattice

Part 8 treated the 240 roots as a finite set. They are also the shortest nonzero vectors of the E₈ lattice, a discrete subgroup of ℝ8 that extends outward in shells. This part asks how well it packs spheres, builds it from an error-correcting code, and follows the same route to the Leech lattice in 24 dimensions.

The shortest integer vectors are the 112 roots (±1, ±1, 0, …, 0) of D8; the shortest half-integer vectors are the 128 vectors (±½, …, ±½) with an even number of minus signs.

Shells and the theta series

Figure 1. The first 24 shells of E₈, counted coordinate by coordinate from the definition. Each stem shows the share of a shell that is half-integer. Every total equals 240σ3(n), yet the two families split it unevenly: odd shells sit exactly on 8/15, even shells between 7/15 and 1/2.

The theta series of a lattice collects its shell counts into one power series. Writing Q = e2πiτ and counting half the squared length,

the weight-4 Eisenstein series, whose coefficients are 240σ3(n), with σ3(n) the sum of the cubes of the divisors of n. The identity holds because E₈ is even (every squared length is even) and unimodular (it equals its own dual lattice, so a fundamental domain has volume 1), which makes its theta series a modular form of weight 4, and every such form is a multiple of E4. Up to isometry it is the only such lattice in 8 dimensions, and even unimodular lattices exist only in dimensions divisible by 8.

Kissing number 240

Divide the roots by √2 to get unit vectors. Their pairwise inner products are −1, −½, 0 and ½, never more than ½, so 240 unit spheres centred at these points touch a central one without overlapping: the kissing number in 8 dimensions is at least 240.

The harder direction is that 241 will not fit. Delsarte's bound takes a polynomial f(t) that is ≤ 0 on [−1, ½] and expands it in the Gegenbauer polynomials Gk of ℝ8, scaled so Gk(1) = 1. If every coefficient fk is nonnegative, then N unit vectors with pairwise inner products at most ½ satisfy

because the double sum of f(⟨xi, xj⟩) is at most N f(1), its off-diagonal terms being ≤ 0, and at least N2f0, each Gk being positive definite. In 1979 Odlyzko and Sloane, and independently Levenshtein, found the f that gives 240: it vanishes at exactly the inner products the 240 roots take.

Figure 2. Delsarte certificates f(t) = (t+1)(t−a)2(t−b)2(t−½) in dimension 8. The map shades each choice of double zeros by its bound f(1)/f0, most intense where lowest, grey where a coefficient is negative. Drag the point. At the E₈ inner products, a = −½ and b = 0, the bound is exactly 240.

Other dimensions

Figure 3 shows the same linear program solved in every dimension up to 24. It is exact only in 1, 2, 8 and 24. In 3 and 4 the kissing numbers, 12 and 24, needed other proofs: Schütte and van der Waerden in 1953, and Musin in 2003 with a strengthened method. Elsewhere the LP optimum sits above bounds proved since, and the kissing number is unknown.

Dimension: 8

Figure 3. Upper bounds on the kissing number in dimensions 1 to 24, as multiples of the best configuration known (blue, at 1). Red: optimum of Delsarte’s linear program, precomputed by a repository script. Grey: best bound proved by any method. Configurations and bounds are from Cohn’s table (2026).

Packing density

Packing asks how densely equal spheres can fill all of ℝn. For a lattice the density is the volume of one ball divided by the volume of a fundamental domain. E₈'s minimal vectors have length √2, so the balls have radius 1/√2, and the covolume is 1:

Cohn and Elkies (2003) carried the linear-programming idea over to packings. If a rapidly decaying f on ℝn has f(x) ≤ 0 for |x| ≥ r and a nonnegative Fourier transform f̂, then no packing of ℝn by equal balls has density above

With r = √2 the first two factors are E₈'s density, so f(0)/f̂(0) is the bound in units of E₈. Figure 4 tries a small family whose Fourier transform has a closed form, so both conditions are checked exactly.

checking… f(r)   must be ≤ 0 in the shaded region r ≥ √2(a + b r²) e−αr²
checking… f̂(k)   must be ≥ 0 everywhere∝ (a + b(4/α − k²/4α²)) e−k²/4α
a1.000
b0.000
α1.000

Constraints

Bound f(0) / ∫f, in units of E8's density

none

Figure 4. A Cohn–Elkies bound in dimension 8 from f(x) = (a + b|x|2)e−α|x|2, curves scaled to fit. The default, a bare Gaussian, can never pass both tests. Best in family (a = 2, b = −1, α = 2.5) is this family's optimum: no 8-dimensional packing beats about 2.005 times E₈'s density.

This family stops near twice E₈'s density; numerical searches with richer functions came within a hair of 1. In March 2016 Maryna Viazovska found an f that reaches 1 exactly, built from modular forms. Up to constants, each of its two pieces has the form

where φ is a quasimodular form of weight 0 in one piece (built with E2, which is not modular) and a weakly holomorphic modular form of weight −2 for Γ(2), from theta functions, in the other. A week later Cohn, Kumar, Miller, Radchenko and Viazovska did the same for the Leech lattice in 24 dimensions. The densest packing is now known in dimensions 1, 2, 3, 8 and 24 and no others; dimension 3 is Kepler's conjecture, proved by Hales in 1998.

Codes and Construction A

A binary code is a set of codewords in {0, 1}n; a receiver undoes flipped bits by choosing the nearest codeword, so good codes keep codewords far apart, as a packing keeps centres apart in ℝn. Construction A turns a linear code C into a lattice:

The extended Hamming code H8 has length 8, 16 codewords and minimum distance 4: the zero word, the all-ones word and 14 words of weight 4. It is self-dual, equal to its own orthogonal complement in 𝔽28, which makes Λ(H8)/√2 unimodular. Its 240 shortest vectors have squared length 4, and scaling by 1/√2 gives a copy of E₈.

Squared length in Λ(H8):

Figure 5. Construction A on the extended Hamming code. Each card counts the vectors with the chosen squared length that reduce to that codeword mod 2; click one to list them. At squared length 4k the cards add up to the E₈ shell of squared length 2k in Figure 1.

Decoding

A code of minimum distance d corrects ⌊(d−1)/2⌋ errors, since Hamming balls of that radius around codewords do not overlap; for d = 4, one flipped bit. Figure 6 runs every case: two flips always leave the received word equidistant from four codewords, detected but not correctable, and three flips always decode wrong. The lattice behaves the same way: a point of E₈ moved by less than its packing radius 1/√2 still rounds back to where it started.

sent
received
decoded

Figure 6. Nearest-codeword decoding for the extended Hamming code. Click bits in the received row to flip them. The tally runs all 16 codewords against every pattern of one, two and three flipped bits.

The Leech lattice

In 24 dimensions the natural code is the binary Golay code, self-dual with length 24, 4,096 codewords and minimum distance 8. Construction A on it, scaled by 1/√2, is even and unimodular, but its shortest vectors are the 48 vectors ±√2ei from the zero codeword. Construction B removes them: keep the integer vectors that reduce mod 2 to a codeword and have coordinate sum divisible by 4, add the coset of (−3, 1, …, 1), and scale by 1/√8. The result is the Leech lattice Λ24, found by Leech in the mid-1960s.

Its shortest vectors have squared length 4, in three shapes: (±28, 016) on the 759 weight-8 codewords with an even number of minus signs, 97,152; (∓3, ±123), 98,304; and (±42, 022), 1,104. That is 196,560, the coefficient E43 − 720Δ gives for its theta series, and exactly the bound of Figure 2's 24-dimensional certificate.

Of the 24 even unimodular lattices in dimension 24, the Niemeier lattices, 23 have vectors of squared length 2, with root systems from 24A1 (the Golay code's Construction A) to D24 and E83; Modular Forms Part 13 places all 24 by their root counts. Leech alone has none. Yet it contains three mutually orthogonal copies of √2E₈, and Lepowsky and Meurman (1982) built it by gluing three of them, as Turyn (1967) built the Golay code from versions of the Hamming code.

The Conway groups

The automorphism group of the Leech lattice, Co0, has order about 8.3 × 1018. In 1968 John Conway found that its quotient by {±1} is a simple group, Co1, and that Co0 contains two more: Co2 and Co3, the stabilisers of vectors of squared length 4 and 6. All three are among the 26 sporadic simple groups. Co0 also contains the Higman–Sims and McLaughlin groups, and the Mathieu group M24, the Golay code's symmetry group, permuting coordinates. With no roots, none of this comes from a Weyl group. The construction of the Monster starts from the Leech lattice, as the Modular Forms series tells.