The Hofstadter consecutive-sum sequence omits infinitely many positive integers

This paper resolves a conjecture from OEIS entry A005243 by proving that the greedy self-generating sequence defined by Hofstadter, where each term is the smallest integer greater than the previous one representable as a sum of at least two consecutive earlier terms, omits infinitely many positive integers.

Quanyu Tang

Published Wed, 11 Ma
📖 5 min read🧠 Deep dive

Imagine you are building a tower of blocks, but with a very specific, greedy rule: You can only add a new block if its height is the sum of two or more blocks that are already sitting right next to each other in your tower.

You start with two blocks: one of height 1 and one of height 2.

  • Can you make 3? Yes, $1+2=3$. So you add a block of height 3.
  • Can you make 4? You look at your tower (1, 2, 3). The sums of neighbors are $1+2=3and and 2+3=5$. You can't make 4. So, 4 is skipped.
  • Can you make 5? Yes, $2+3=5$. Add it.
  • Can you make 6? Yes, $1+2+3(wait,therulesays"consecutive,"so (wait, the rule says "consecutive," so 1+2=3and and 2+3=5and and 3+5=8...actually,lookingatthesequenceinthepaper:1,2,3,5,6...Ah,... actually, looking at the sequence in the paper: 1, 2, 3, 5, 6... Ah, 3+5$ is not consecutive in the list yet? No, the rule is: take the current list, find the smallest number larger than the last one that can be formed by adding a chunk of neighbors.
    • Current list: 1, 2, 3, 5.
    • Last number: 5.
    • Next candidate: 6. Can we make 6 from neighbors? $1+2+3=6$. Yes! Add 6.
    • Next candidate: 7. Neighbors sums: $2+3=5,, 3+5=8,, 5+6=11$... No 7. 7 is skipped.

This is the Hofstadter Consecutive-Sum Sequence. It's a game of "fill in the gaps" where you are forced to skip numbers if they can't be built from your current neighbors.

The Big Question

For decades, mathematicians (including the famous Douglas Hofstadter) wondered: Does this sequence eventually fill in every single missing number? Or, does it keep skipping numbers forever?

It looked like it was filling in most numbers. The list starts:
1, 2, 3, 5, 6, 8, 10, 11, 14...
It skips 4, 7, 9, 12, 13...
But maybe it just takes a long time to catch up? Maybe by the time you reach a billion, there are no more skips?

The Discovery: The "Infinite Gap"

In this paper, the author, Quanyu Tang, proves that no, the sequence never catches up.

He shows that the sequence omits infinitely many positive integers. No matter how far you go, there will always be new numbers that the sequence simply cannot build.

The Analogy of the "Excess":
Imagine the sequence is a runner trying to keep pace with a finish line that moves forward by 1 unit every second.

  • If the runner is perfect, they are at position nn at time nn.
  • Tang proves that this runner is actually getting faster than the finish line.
  • The gap between where the runner is (ana_n) and where they "should" be if they filled every number (nn) keeps growing forever.
  • Because the runner is sprinting ahead, they are leaving a trail of empty spots (the skipped numbers) behind them that never gets filled.

How Did He Prove It? (The Detective Work)

Tang used a clever two-step logic puzzle:

  1. The "Linear Tail" Trap: He assumed the opposite: that the sequence does eventually fill all gaps. If that were true, the sequence would eventually settle into a boring, predictable pattern (like $100, 101, 102, 103...$).
  2. The "Power of Two" Bomb: He then looked at the special numbers that are powers of 2 (like 2, 4, 8, 16, 32...). There is a mathematical rule that says powers of 2 cannot be made by adding consecutive numbers.
  3. The Contradiction: If the sequence were boring and predictable (linear), it would eventually have to try to "build" a power of 2 using its neighbors. But because of the rules of math, it's impossible to build a power of 2 that way. This creates a logical explosion. The assumption that the sequence fills all gaps must be false.

Therefore, the sequence must keep skipping numbers forever.

The Speed Limit (The Upper Bound)

The paper doesn't just say "it skips numbers"; it also puts a speed limit on how fast the sequence grows.

Think of the sequence as a car.

  • We know it's not driving at a constant speed (linear). It's accelerating.
  • Tang proved that while it accelerates, it doesn't go too crazy. It won't reach "super-exponential" speeds (like $2^n$).
  • He calculated a specific "speed limit" formula: The nn-th number in the sequence is roughly less than n1.66...n^{1.66...}.
  • This is a huge step forward. Before this, we didn't even know if the sequence grew like a polynomial (a manageable curve) or something wilder. Now we know it's a "polynomial" growth, just a steep one.

Why Does This Matter?

This solves a 40-year-old mystery (Problem #423 on the Erdős Problems website). It tells us that even in simple, greedy games where you try to be as efficient as possible, chaos and gaps are inevitable. You can't force a perfect, gapless sequence just by adding neighbors together.

In a nutshell:
The Hofstadter sequence is like a greedy builder who tries to fill a wall with bricks. The builder is so eager to add the next brick that they skip over holes they can't fill. Tang proved that no matter how long the builder works, the wall will always have holes in it, and the builder will eventually be running so far ahead of the wall that the holes become a permanent feature of the landscape.