Walkthrough — five-dimensional kissing number
0. What was actually missing
The published range is still . The missing object is not a better floating 3-point SDP — Mittelmann–Vallentin already have , which is how 45 died, and the house rule is that a restricted numerical SDP without an exact positivity certificate is an incomplete search.
What would move the needle is either
- a polynomial (or SOS matrix) whose Gegenbauer / Bachoc–Vallentin data are exactly nonnegative and whose value is strictly less than 44, 43, 42 or 41 on the unrestricted interval , or
- forty-one explicit points on with all inner products .
Neither exists in the 2026 record. The degree of freedom that is available overnight is the inner-product support: if a putative 41–44 point code is forced to live in a finite set , the Delsarte dual only has to be nonpositive on , not on the whole interval, and that LP is small enough to solve over .
1. Named false starts
Add a 41st point to . For unit , the roots demand for every pair. The minimum of the largest pair-sum on is , and . Dead on arrival; this is maximality of , not a new code.
Stack a 24-cell equator under the caps. is along the all-ones axis. Replacing the 20-point equator by a 24-cell would be a 44-point code. is not a 24-cell minus two antipodal pairs (66 histograms, no match), and more simply the equatorial polytope , has . There is no extra equatorial vector at all.
Unrestricted high-degree Delsarte. Levenshtein is exactly 48. Odlyzko–Sloane already took the continuum dual to . Sidelnikov / Boyvalenkov–Danev–Bumova say you cannot beat Levenshtein by a few extra degrees, and the 1979 table is the known continuum optimum in this dimension. We did not rerun that search as a claim.
Enlarging until it looks unrestricted. Adding 's extra angles to the dual lifts the exact bound from to or . The moment contains all four known 40-point angle sets, Delsarte is back above 44.
Numerical 41st point against . Powell on the sphere, 91 starts each, best slack . The optimiser sits on a deep hole (inner product ). Evidence of maximality, not a certificate, and not a construction.
2. The useful failure
The -equator attempt forced a clean description of extra points over a fixed 4-dimensional kissing code. Once the equator is a 24-cell — which and both contain — the same calculation gives a height constraint and then Rankin's in each open hemisphere. That is an exact 40-point cap for every 5-dimensional kissing code that contains a 24-cell.
The other useful failure was the real Delsarte relaxation on : it allows with . Those averages are not integer pair-counts. The integrality slice is empty at 42, 43 and 44, and at 41 it is nonempty only when there are exactly twenty antipodal pairs.
3. The click
Delsarte on a finite is an interpolation problem, not an SDP. The numerical dual used six Gegenbauer coefficients and vanished on five angles. That is a linear system over . Solving it produces
with every and on . The same pattern for gives the integer bound 42.
Together with the 24-cell lemma and the integer slice, every is now excluded in at least one exact restricted class, and 44 is excluded in two of them (, and anything containing a 24-cell).
4. The argument, in the order it was found
4.1. The four 40-point codes are real
is the permutations of . replaces the layer by the odd-sign half-spinor. (resp. ) replaces the coordinate-sum layer of (resp. ) by the reflection of the layer across . All four have squared norm 2 and max inner product 1, and the pair histograms match Cohn–Rajagopal Table 2.1.
4.2. No 24-cell, no 41
Rotate a 24-cell to the hyperplane . An extra unit point at height has direction satisfying . Because , one has (or a pole). In a single open hemisphere the projected 4-vectors have pairwise inner products , so there are at most of them. The bound is the polynomial , whose dimension-4 Gegenbauer expansion is . Poles are incompatible with any other extra point in the same hemisphere. Hence at most points.
4.3. Exact dual for Leech's angles
Let be the dimension-5 Gegenbauer polynomials normalised by , recurrence . The polynomial
has nonnegative coefficients, vanishes at , and takes the value at . Therefore any spherical code in whose distinct inner products lie in that set has size at most .
4.4. The angle set, with integrality
The companion polynomial vanishes on and gives the real bound 42. Enumerating integer pair-counts at Gegenbauer degree 8 shows there is no such distribution of size 42, 43 or 44, and the only size-41 distributions have exactly twenty antipodal pairs. Those twenty pairs are a 40-point -code, hence (scaling by ) forty roots of an even lattice of rank , hence a copy of , which cannot be extended.
5. Computer search
compute/certs/restricted_delsarte.json— the two exact duals.compute/integer_d5.json— the integer slice, including the empty scan at .compute/q5_extend.json— numerical slacks against ; equatorial obstruction .compute/construct_search.json— cube+axes ; plus holes never exceeds 40.figures/restricted_duals.png— the two duals on . They are allowed to be positive between the points of ; that is the whole point of restricting .
Replay: sh compute/run_all.sh, or just
compute/.venv/bin/python compute/verify_certificates.py.
6. What is proved vs still open
Proved here (restricted).
- No 5-dimensional kissing code containing a 24-cell has more than 40 points. In particular is impossible in that class, and and are maximal.
- No spherical code in with inner products in has 44 points.
- No spherical code in with inner products in has 41, 42, 43 or 44 points.
- has no additional equatorial point.
Still open (as of 17 August).
- The unrestricted kissing number: , unchanged.
- Existence of a 41–44 point code whose angle set is not contained in and which does not contain a 24-cell. and already show that such angle sets exist at size 40.
- An exact (SOS) certificate that the Bachoc–Vallentin number is for some . The published is high-accuracy numerical, not a rational Gram matrix.
- Maximality of and as spherical codes (numerical slack is negative, not a proof).
7. 27 August: the polar is the same for every published code
The missing object on 17 August, for and , was a positivity certificate that no 41st equal-norm point exists. Powell on the sphere sat on a hole with slack . That is the same deep-hole inner product that kills , but does not contain enough roots for the pair-sum argument.
The polar is the exact feasible set for a new point of any length. It is a 5-dimensional polytope with rational vertices. is convex, so its maximum is at a vertex. Enumerating the tight 5-planes — once in C, once in Python, same independent-set and vertex counts — gives
for each of . The recorded maximizer of is , which saturates ten reflected-cap inequalities at inner product 1 and has squared norm . So the 17 August numerical hole was the polar vertex, scaled up to the sphere; it never reaches squared norm 2.
That closes maximality of and . It does not close .
The other click the same night was integrality on . The real dual sits at and cannot exclude 44. Clearing denominators in the Gegenbauer rows and scanning the integer box ( billion points, pad 15 around the real AABB, unrestricted) finds no feasible at . The published histogram at passes the same tables. So 44 is impossible among codes whose distinct inner products lie in the angle set. Integer still has hits at 41, 42 and 43.
Proved on 27 August (restricted).
- are all maximal as spherical codes.
- No spherical code in with inner products in has 44 points.
Still open.
- The unrestricted kissing number: , unchanged.
- A 41–43 point code whose angles are not contained in and which is not one of the four published 40-point codes plus a point (those four are now maximal).
- An exact SOS certificate that .
8. 27 August, later: the pool is 360, not 355
q1 left a 355-vertex compatibility graph unsearched. Rebuilding it showed the missing five points were the basis itself: a basis vector fails . After that check is “other points of the basis”, the pool has 360 equal-norm rational vectors and contains all four published 40-point codes as cliques.
Those five basis vectors are adjacent to every other pool point. So
A 41-clique in the pool is exactly a 36-clique in the remainder. The 41-search on the 355-graph finishes (607171 nodes, empty). The 36-search, which is the one that would actually produce a 41-point code, did not finish. That is residue, not a construction and not an exclusion.
The same night, the half-integer sphere is a 200-point graph containing and , and it has no 41-clique. Layer-swaps of and across every short integer normal recover size 40 (including / ) and nothing larger. The -cap orbit of 320 signed permutations has no 41-clique.
On the dual side the continuum Delsarte number is still . Exact polynomials of the form with nonnegative Gegenbauer coefficients exist — the best in a small search is — but nothing goes below 44 on the whole interval . Odlyzko–Sloane already said that LP cannot.
Proved on 27 August, later (restricted / finite graphs).
- No 41-point code in the 355-point remainder, in the 200-point half-integer sphere, or in the 320-point -cap orbit.
- No certified unrestricted Delsarte dual below 44 at the degrees searched.
Still open.
- The unrestricted kissing number: , unchanged.
- A 36-clique in the 355-point remainder (that plus the five basis vectors would be a 41-point code).
- An exact SOS certificate that .
9. 27 August, later: extras miss at least four roots
The 1480-point leftover is not an unstructured 41-clique. In the integer model , , the 40 vectors with two entries are . Every one of the 1440 extras kisses at most 36 of those 40. Polar maximality already forbids , so a 41-set in this graph is -type points plus at least five extras.
Two extras with missed-root sets have common neighbourhood . An extras-clique therefore contributes
and that total is at least 41 if and only if with every missed set contained in . The that can arise all contain at least one actual missed set, so enumerating -supersets of those seeds is a complete generation for each .
That scan finishes for . No extras-clique of size . So there is no 41-point code in that uses 33 or more roots. The same night the 36-clique in the remainder was repaired out to edit distance 2 around each published 35-clique and searched to 40 million B&B nodes; neither produced a hit, and neither is an emptiness proof.
Unrestricted Delsarte is still . Opening a gap at drops the numerical value to , which would exclude 41–44 if the gap were a theorem. It is not: all have an angle in . The rationalized polynomials fail Sturm besides.
Proved on 27 August, later (restricted).
- No 41-point code in uses 33 or more -type points.
- No certified unrestricted Delsarte dual below 44.
Still open.
- The unrestricted kissing number: , unchanged.
- The slice of the 1480-point graph, and a 36-clique in the 355-point remainder.
- An exact SOS certificate that .
10. 27 August, later: exact over , no dual below 44
The missing object is still an exact 3-point certificate with value strictly less than 44. Mittelmann–Vallentin already have a high-accuracy number ; that is how 45 died, and it is not a rational Gram matrix.
compute/q4/bv.py builds the matrices. is the polynomial
identity that clears the square roots in
. is the average of
over the six permutations of (Bachoc–Vallentin
Remark 3.4). The self-tests check , ,
, , and for
.
1-point Delsarte on the whole interval is still . A polynomial with nonnegative Gegenbauer coefficients cannot go below that, so the rest of the night was 3-point. Constant-multiplier Putinar, the exact -span of , a dictionary of squares, and a floating Putinar SDP at all failed to produce a rational identity with value . The dictionary number did not snap; the SDP values near 40 failed a grid sign check. Residue.
The hierarchy itself explains the miss. Bachoc–Vallentin needed to reach 45. Mittelmann–Vallentin needed to reach . Any feasible dual at has value at least that optimum, so it cannot exclude 44. A dent would need or a different hierarchy, and then an exact SOS certificate of a number strictly less than 44.
11. 27 August, later: the octads are the coordinate-stars
The leftover is not an unstructured -superset scan. The 40 roots are the signed pairs . For each axis and sign the eight roots with form a star. There are ten of them. The 160 four-seeds partition among those stars: inside a star the four other axes each contribute a sign pair, and the 16 four-seeds are the ways to pick one sign on each.
A 7- or 8-subset of a star is exactly the promising at . The extras pool of a star has 80 vertices and clique number 8, so the best 41-candidate on that is . C and Python empty every 8-superset of an actual seed ( of them; only the ten stars are promising). Seed-union BFS then empties by part-count and by a coloured search: 960 and 4640 promising unions, again, total 40.
That is the half of the leftover graph, on top of q3's . The remaining 41-candidates use at least 13 extras. A hash-free walk of the same seed-unions — each has a unique parent, the union of all but its last irredundant seed — finishes through without a table. Promising pools grow into the tens of millions by , but every extras-clique is size , total 40. So there is no 41-set with . The slice is unfinished. Residue, not a 41-code.
The remainder still has and . Two SAT solvers return no 36-clique; without a DRAT that is not a certificate. Share 30 through 24 with each published 35 are empty in C, so a 36-clique, if one exists, shares at most 23 with and .
Proved on 27 August, later (restricted).
- No 41-point code in uses 22 or more -type points.
- Each coordinate-star has extras-clique number 8.
- No 36-clique in the remainder shares 24 or more vertices with a published 35-clique.
- No certified unrestricted Delsarte dual below 44.
Still open.
- The unrestricted kissing number: , unchanged.
- A 41-set in the 1480-graph with , and a 36-clique in the remainder that shares at most 23 with every published 35.
- An exact SOS certificate that .
12. 27 August, later: the remainder has no 36-clique
The leftover that actually had a handle was the 355-graph, not the continuum dual. q4 already knew and , and two SAT solvers returned no 36-clique. That is not a certificate. Share 24 through 30 being empty only says that a 36-clique, if one exists, is far from every published 35.
PySAT Cadical195 produced a 16.5-million-line ASCII DRAT. Heule
drat-trim read it and died with s NOT VERIFIED / no conflict.
The solver said unsat; the proof object was junk. Residue.
The useful failure on the other leftover was the seed graph. Two seeds are compatible if some extras kiss. The 80 six-seeds form an 80-clique of union 40. Every three coordinate-stars give a leftover-tight seed pool — or . Those pools are not 41-codes. Extras B&B on all 120 of them is complete: extras clique number at most 19 on the size-22 unions and at most 18 on the size-21 unions. With q4's empty, no 41-set has its missed-root union inside three stars. The leftover, if it is nonempty, has star-cover at least 4.
The click on was to stop asking PySAT for a proof and run
native CaDiCaL 3.0.1 on the same DIMACS. It writes a binary DRAT.
drat-trim then says s VERIFIED: 671{,}198{,}215 bytes, 4.79
million of 10.8 million lemmas in the core, 303 million resolution
steps, no RAT. So there is no 36-clique in the 355-graph. The five
universal basis vectors of the Szöllősi pool do not extend to 41.
Share 23 finished the same afternoon, independently: each published remainder 35 has candidate 23-cores, and every common neighbourhood has extras clique number at most 12 (need 13). That is now redundant for emptiness of 36, but it is the reason we believed the SAT.
The SAT on the 1480-graph is still running. Part-count does not empty those slices. No 41-code and no unrestricted dual below 44. The published interval did not move.
Proved on 27 August, later still (restricted).
- No 36-clique in the 355-point remainder (native CaDiCaL
DRAT,
drat-trimverified). - No 41-point kissing code in the Szöllősi pool.
- No leftover 41-set in the 1480-graph whose missed-root union sits in three coordinate-stars.
- No leftover-tight type-A extras clique ( and ).
- Share 23 with each published 35 is empty.
Still open.
- The unrestricted kissing number: , unchanged.
- A 41-set in the 1480-graph with and star-cover at least 4.
- An exact SOS certificate that .
13. 27 August, later: four stars are not enough
The leftover after three stars was a union that needs at least four coordinate-stars. Colouring does not kill it. Every 4-star extras graph uses 20 to 32 colours, so the 3-star bound does not lift.
The useful failure was the colouring, and also the part-count: all 210 four-star unions are leftover-tight by seed count (64, 72, or 79 seeds). A seed pool is not a 41-code.
The click was to stop asking for extras and run the leftover-tight cut. A 20-clique of extras with large missed-union is not a 41-set. C branch-and-bound on each of the 210 pools, with that cut, finishes: 26.8 million nodes, no leftover 41-set. Python leftover-tight search on a covering sample of 38 pools (every two-axis pool and a stride of the rest) matches, 38 of 38. Two algorithms, same emptiness. Restricted to the 1480-graph.
So a remaining 41-set in that graph has star-cover at least 5. That is not empty by combinatorics: the smallest -root set that hits every 4-star complement has size 5. Five-star extras graphs are larger (528 to 625 vertices, 28 to 39 colours). Four of them ate 20 million nodes and did not finish. Leftover-tight SAT on those four pools came back unsat, without a stored DRAT. Global leftover SAT on with the 4-star forbid, and a 200-million-node extras B&B with that prune, did not finish.
No unrestricted dual below 44. 1-point Delsarte is still the Odlyzko–Sloane number. The grid that certified sat near 59, worse than the previous ansatz 52. Did not claim .
Proved on 27 August, later still (restricted).
- No leftover 41-set in the 1480-graph whose missed-root union sits in four coordinate-stars.
Still open.
- The unrestricted kissing number: , unchanged.
- A 41-set in the 1480-graph with and star-cover at least 5.
- An exact SOS certificate that .
14. 27 August, later: five stars and the SAT
The leftover after four stars was a union that needs at least five coordinate-stars. Colouring does not kill it: every 5-star extras graph uses 28 to 39 colours.
The useful failure was the 20-million-node C cutoff on four
pools, and leftover-tight SAT on those four coming back unsat
without a stored DRAT. Same lesson as the 36-clique: PySAT
unsat is a lead; native CaDiCaL plus drat-trim is the
certificate.
The click on the 252 five-star hosts is the signed-permutation group of the coordinates. It has order and acts transitively on each axis type: 60 pools of type (), 160 of type (), 32 of type (). One leftover-tight CNF per type, if unsat with a stored DRAT, empties the orbit.
The other leftover is the global SAT with the 4-star forbid. Minimum with star-cover at least 5 is still 5, so combinatorics does not empty that slice. The q6 grow prune that only fired at is the B&B hole: the remaining missed-union is cheap to compute at every node.
The dual line is the same 1-point Delsarte floor. Another grid certified at best . Drop it.
The leftover-tight CNF (528 extras) is the cheap one:
native CaDiCaL is unsat in three minutes, and drat-trim verifies
the 212 MB binary DRAT. Combined with the signed-permutation
orbit that empties all 60 type- hosts. The four q6 cutoff
pools in that type each get their own verified DRAT. The
representative is the same encoding on 596 extras: forty million
conflicts, a 3.9 GB proof, seventy-five minutes of drat-trim,
then s VERIFIED. That empties the 160 type- hosts.
The representative (625 extras) and the global CNF were still writing proofs when this note was wrapped. The always-on grow prune in leftover extras B&B is cheap — four hundred million nodes in a minute and a half, twenty billion in an hour — and still incomplete. A 20-clique of extras with a large missed-union is not a leftover 41-set; the search did not finish.
Proved on 27 August, later still (restricted).
- No leftover 41-set in the 1480-graph whose missed-root union sits in a type- or type- five-star of coordinate-stars.
Still open.
- The unrestricted kissing number: , unchanged.
- A leftover 41-set hosted by a type- five-star, or with star-cover at least 6.
- The global leftover SAT.
- An exact SOS certificate that .
15. 27 August, later: the last five-star type
The leftover after types and is one axis type:
five half-stars, , 625 extras, 32 hosts in one Aut orbit.
The same leftover-tight CNF, on a larger extras graph. Kissat
without a proof is the probe; native CaDiCaL plus drat-trim is
the certificate.
The global SAT can now forbid those two empty five-star types as well as every 4-star. A model is a leftover hosted by a type- five-star, or one with star-cover at least 6.
The leftover-tight DIMACS matches the unfinished q7
instance (sha256 cdec5e76…). Native CaDiCaL wrote past GB
of binary DRAT and did not finish. The weaker global leftover
proof passed GB. Kissat on both q8 CNFs was still running
when the machine stopped. There is no stored s VERIFIED and no
41-set. Splitting the host by writes twelve cubes; none
of them has a stored proof either. leftover_k30 smoke at 2000
nodes is the replay check, not emptiness.
Proved on 29 August (restricted).
- Nothing new on the 1480-graph beyond q7. Types and stay empty by the stored q7 DRATs.
Still open.
- The unrestricted kissing number: , unchanged.
- A leftover 41-set hosted by a type- five-star, or with star-cover at least 6.
- The global leftover SAT, with or without the extra five-star forbids.
- An exact SOS certificate that .