Skip to content

Experiment · Number theory

IBM Ponder This, September 2026: certified progressions of Loesch numbers

This experiment addresses a number-theory puzzle set by IBM Research: find an arithmetic progression whose terms are all of the form x² + xy + y², the “Loesch numbers”. Outcome: a 35-term progression whose last term, 311,958,331, is as small as possible, and a 45-term progression that extends neither to the left nor to the right. Each term comes with an integer witness (x, y) that anyone rechecks in one line, and the entry appears in IBM’s list of solvers with the “*” bonus.

35terms, minimal last term: 311,958,331exhaustive computation over 4,906 values of the step, recomputed on 11 Oct 2026
45terms, progression that cannot be extended80 integer witnesses and 4 obstructions, recomputed on 11 Oct 2026
91names in IBM’s list, 34 of them with at least one starpage read on 11 Oct 2026
58terms: the longest progression mentioned in IBM’s listIBM’s table, page read on 11 Oct 2026

1. The question

A Loesch number is an integer of the form x² + xy + y², with x and y integers: 0, 1, 3, 4, 7, 9, 12, 13, 16, 19, 21, … They are the squared distances from the origin of the points of the hexagonal lattice (the Eisenstein integers): the point x + yω, with ω = eiπ/3, lies at distance √(x² + xy + y²) from the origin.

An arithmetic progression of L terms is given by its first term a and its step d > 0: a, a + d, …, a + (L − 1)d. IBM’s statement asks for: (1) for L = 35, a progression of Loesch numbers whose last term is as small as possible; (2) a “*” bonus for a progression of at least 42 terms; (3) a “**” bonus for the progression with the most terms. The statement recalls the Green–Tao theorem (arbitrarily long progressions exist among the primes) and notes that the same holds analogously for other sufficiently dense sets, the Loesch numbers among them.

2. Protocol and referee

Solutions are sent to IBM by e-mail; IBM publishes on the page of the month the names of the participants who supplied a correct, original solution, with one star per bonus. Each result on this page is also checked by an exact integer verification that takes a few lines (section 5).

Problem35-term progression of Loesch numbers with minimal last term; “*” bonus from 42 terms; “**” bonus for the longest
OrganiserIBM Research, Ponder This (Gadi Aleksandrowicz); puzzle suggested by Hugo Pfoertner
Resultin the list of solvers, with the “*” bonus: 45-term progression, sent on 24 September 2026
Sourceresearch.ibm.com/blog/ponder-this-september-2026, page read on 11 October 2026 (entry dated 24 September 2026, 10:57 PM, Israel time)
A list of solvers is not a ranking: the longest progression it mentions has 58 terms.

3. Results

The two progressions sent on 24 September 2026, with the last term of each:

Terms First term a Step d Last term
35 219,830,911 2,709,630 311,958,331
45 43,799,686,129 8,236,888,110 406,222,762,969

4. Statements and certificate

Two elementary statements are enough. The first certifies that a term is a Loesch number: it suffices to exhibit a witness. The second certifies that an integer is not one.

Proposition 1 (obstruction). Let q be a prime congruent to 2 modulo 3 and n ≥ 1 an integer. If the exponent of q in n is odd, then n is not of the form x² + xy + y².

Proof

First: if q divides x² + xy + y², then q divides x and y. For q = 2 this is a parity check: x² + xy + y² is odd as soon as x or y is. For odd q, 4(x² + xy + y²) = (2x + y)² + 3y². If q did not divide y, we would have (2x/y + 1)² ≡ −3 modulo q (division is taken modulo q), so −3 would be a square modulo q; but for q ≡ 2 modulo 3, quadratic reciprocity gives (−3/q) = (q/3) = −1. So q | y, then q | (2x + y)², so q | 2x, so q | x.

Suppose n = x² + xy + y² with q of odd exponent e in n. If q | n then q | x and q | y, so q² | n and n/q² = (x/q)² + (x/q)(y/q) + (y/q)² has the same form, with exponent e − 2. Repeating, one reaches an integer of the same form in which q has exponent 1: it is divisible by q, hence by q², a contradiction. ∎

The converse is classical (every integer whose prime factors congruent to 2 modulo 3 have even exponent is a Loesch number), but it is not used here: membership of a term is certified by its witness, non-membership by a prime q from Proposition 1.

What the certificate guarantees

  • that each of the 35 (respectively 45) terms is written x² + xy + y², with the witness (x, y) given;
  • that the 45-term progression is maximal: the previous term a − d and the next term a + 45d are not Loesch numbers, each with a prime q proving it (q = 47 for a − d, q = 641 for a + 45d); the 35-term progression is too (q = 41 for a − d, q = 47 for a + 35d);

The terms are integers of 9 to 12 digits: every check is done in exact integer arithmetic.

The last term of the 35-term progression is minimal

Lemma. If 35 consecutive terms of an arithmetic progression of step d > 0 are all Loesch numbers, then d is a multiple of q for q = 2, 5, 11 and 17, hence of 1,870 = 2 · 5 · 11 · 17.

Proof. Let q ∈ {2, 5, 11, 17} (primes congruent to 2 modulo 3) and suppose q does not divide d. Among the first q terms exactly one, a + kd, is divisible by q, with 0 ≤ k ≤ q − 1; the term a + (k + q)d is too, and k + q ≤ 2q − 1 ≤ 33: both are in the progression. If q² divided both, it would divide their difference qd, so q | d, which is excluded. One of the two is therefore divisible by q but not by q², hence has exponent exactly 1 for q (it is not zero, since 0 is divisible by q²). Proposition 1 says it is not a Loesch number: a contradiction. ∎

The last term is a + 34d. With d = 1,870 m it is at least 34 · 1,870 · m. For it to be at most 311,958,331, m cannot exceed 4,906. The exhaustive computation over the 4,906 values of m, run on 11 Oct 2026 (a table of the 46,598,855 Loesch numbers up to 311,958,331; for each m, every first term a ≥ 0 is tested), finds exactly one 35-term progression whose last term is at most 311,958,331: the one on this page, with m = 1,449. The last term on the page is therefore as small as possible: this is the result of an exhaustive computation.

5. Recheck it yourself

Download the JSON file of the two progressions, then run this short Python program (standard library only). It checks the witnesses of every term and prints, for the terms a − d and a + L·d, the prime q ≡ 2 (mod 3) and the parity of its exponent.

import json

d = json.load(open("ibm_ponder_this_progressions.json"))
for p in d["progressions"]:
    a, pas, L = p["a"], p["d"], p["length"]
    ok = all(x*x + x*y + y*y == a + k*pas for k, (x, y) in enumerate(p["witnesses"]))
    print(L, len(p["witnesses"]) == L and ok, a + (L-1)*pas)
    for k, q in p["obstructions"].items():          # termes a - d et a + L*d
        n = a + int(k)*pas
        v = 0
        while n % q**(v+1) == 0:
            v += 1
        print("  terme", k, "q =", q, q % 3 == 2, "exposant impair :", v % 2 == 1)

Expected output: 35 True 311958331 followed by the two obstructions of that progression (q = 41 for term −1, q = 47 for term 35), then 45 True 406222762969 followed by its own (q = 47 and q = 641); each obstruction line ends with True True. The JSON file also holds the sha256 fingerprint of the certificate file filed on 24 September 2026.

6. The map of the challenge: a rosette of norms

Each Loesch number n is the squared distance from the origin of one or more points of the hexagonal lattice; their number, always a multiple of 6, is the number of ways n is written x² + xy + y² (a point and its 11 images under the lattice symmetries count as 12). The rosette lays out the 45-term progression on rings: one ring per term, from term 0 (inner ring) to term 44 (outer ring), and on each ring the angle of each lattice point whose squared distance equals that term. The radius in the drawing is the index of the term, not its value. The two dotted gold rings are the terms a − d and a + 45d: they carry no point, and that is what makes the progression maximal. The 1,560 points are computed in exact integer arithmetic.

45-term progression · 1,560 lattice points on 45 rings · dotted: terms −1 and 45, with no point · JSON
35-term progression · 780 lattice points on 35 rings · the last term, 311,958,331, is as small as possible.

The number of points per term, for the 45-term progression (logarithmic scale from 12 to 384): term 27 carries 384, and 35 of the 45 terms carry 12 or 24.

12244896192384051015202530354045term index klattice points
Number of lattice points (hence of representations x² + xy + y²) for each term of the 45-term progression, from term −1 to term 45. The hollow circles at the bottom mark the two terms with no point.

7. What this question models

This type of question models the search for additive structure in a set defined by a multiplicative property: here, the integers represented by a quadratic form, a set in which IBM’s statement recalls that arbitrarily long progressions exist. It belongs to computational number theory: divisibility constraints, enumeration under congruences, integer certificates that anyone can verify.

My AI project in the service of my research

This challenge is not an end in itself: it is a test bench for my research on a certifiable embedded AI. My AI project, whose inner workings remain confidential, lets me reach a 35-term progression with a minimal last term and a 45-term progression that cannot be extended, both checked in exact integers. The certificate and the referee vouch for it: it is not my explanation you need to believe, it is the result, which can be checked again. This is the best known result at the date given, not a proven optimum.

All the results, with their sources and dates

→ See IBM’s page