# Moser–de Bruijn sequence The addition table for $x+2y$ where $x$ and $y$ both belong to the Moser–de Bruijn sequence, and the Z-order curve that connects the sums in numerical order

In number theory, the Moser–de Bruijn sequence is an integer sequence named after Leo Moser and Nicolaas Govert de Bruijn, consisting of the sums of distinct powers of 4, or equivalently the numbers whose binary representations are nonzero only in even positions.

These numbers grow in proportion to the square numbers, and are the squares for a modified form of arithmetic without carrying. When the values in the sequence are doubled, their differences are all non-square. Every non-negative integer has a unique representation as the sum of a sequence member and a doubled sequence member. This decomposition into sums can be used to define a bijection between the integers and pairs of integers, to define coordinates for the Z-order curve, and to construct inverse pairs of transcendental numbers with simple decimal representations.

A simple recurrence relation allows values of the Moser–de Bruijn sequence to be calculated from earlier values, and can be used to prove that the Moser–de Bruijn sequence is a 2-regular sequence.

## Definition and examples

The numbers in the Moser–de Bruijn sequence are formed by adding distinct powers of four. The sequence lists these numbers in sorted order; it begins

0, 1, 4, 5, 16, 17, 20, 21, 64, 65, 68, 69, 80, 81, 84, 85, 256, ...

For instance, 69 belongs to this sequence because it equals 64 + 4 + 1, a sum of three distinct powers of 4.

## Binary and related representations

Another definition of the Moser–de Bruijn sequence is that it is the ordered sequence of numbers whose binary representation has nonzero digits only in the even positions. For instance, 69 belongs to the sequence, because its binary representation 10001012 has nonzero digits in the positions for 26, 22, and 20, all of which have even exponents. The numbers in the sequence can also be described as the numbers whose base-4 representation uses only the digits 0 or 1. For a number in this sequence, the base-4 representation can be found from the binary representation by skipping the binary digits in odd positions, which should all be zero. The hexadecimal representation of these numbers contains only the digits 0, 1, 4, 5. For instance, 69 = 10114 = 4516. Equivalently, they are the numbers whose binary and negabinary representations are equal. Because there are no two consecutive nonzeros in their binary representations, the Moser–de Bruijn sequence forms a subsequence of the fibbinary numbers. Plot of the number of sequence elements up to $n$ divided by ${\sqrt {n}}$ , on a logarithmic horizontal scale

It follows from either the binary or base-4 definitions of these numbers that they grow roughly in proportion to the square numbers. The number of elements in the Moser–de Bruijn sequence that are below any given threshold $n$ is proportional to ${\sqrt {n}}$ , a fact which is also true of the square numbers. In fact the numbers in the Moser–de Bruijn sequence are the squares for a version of arithmetic without carrying on binary numbers, in which the addition and multiplication of single bits are respectively the exclusive or and logical conjunction operations.

In connection with the Furstenberg–Sárközy theorem on sequences of numbers with no square difference, Imre Z. Ruzsa found a construction for large square-difference-free sets that, like the binary definition of the Moser–de Bruijn sequence, restricts the digits in alternating positions in the base-$b$ numbers. When applied to the base $b=2$ , Ruzsa's construction generates the Moser–de Bruijn sequence multiplied by two, a set that is again square-difference-free. However, this set is too sparse to provide nontrivial lower bounds for the Furstenberg–Sárközy theorem.

## Unique representation as sums

The Moser–de Bruijn sequence obeys a property similar to that of a Sidon sequence: the sums $x+2y$ , where $x$ and $y$ both belong to the Moser–de Bruijn sequence, are all unique. No two of these sums have the same value. Moreover, every integer $n$ can be represented as a sum $x+2y$ , where $x$ and $y$ both belong to the Moser–de Bruijn sequence. To find the sum that represents $n$ , compute $x=n\ \&\ \mathrm {0x55555555}$ , the bitwise Boolean and of $n$ with a binary value (expressed here in hexadecimal) that has ones in all of its even positions, and set $y=(n-x)/2$ .

The Moser–de Bruijn sequence is the only sequence with this property, that all integers have a unique expression as $x+2y$ . It is for this reason that the sequence was originally studied by Moser (1962). Extending the property, De Bruijn (1964) found infinitely many other linear expressions like $x+2y$ that, when $x$ and $y$ both belong to the Moser–de Bruijn sequence, uniquely represent all integers.

## Z-order curve and successor formula

Decomposing a number $n$ into $n=x+2y$ , and then applying to $x$ and $y$ an order-preserving map from the Moser–de Bruijn sequence to the integers (by replacing the powers of four in each number by the corresponding powers of two) gives a bijection from non-negative integers to ordered pairs of non-negative integers. The inverse of this bijection gives a linear ordering on the points in the plane with non-negative integer coordinates, which may be used to define the Z-order curve.

In connection with this application, it is convenient to have a formula to generate each successive element of the Moser–de Bruijn sequence from its predecessor. This can be done as follows. If $x$ is an element of the sequence, then the next member after $x$ can be obtained by filling in the bits in odd positions of the binary representation of $x$ by ones, adding one to the result, and then masking off the filled-in bits. Filling the bits and adding one can be combined into a single addition operation. That is, the next member is the number given by the formula

$\displaystyle (x+{\textrm {0xaaaaaaab}})\ \&\ {\textrm {0x55555555}}.$ The two hexadecimal constants appearing in this formula can be interpreted as the 2-adic numbers $1/3$ and $-1/3$ , respectively.

## Subtraction game

Golomb (1966) investigated a subtraction game, analogous to subtract a square, based on this sequence. In Golomb's game, two players take turns removing coins from a pile of $n$ coins. In each move, a player may remove any number of coins that belongs to the Moser–de Bruijn sequence. Removing any other number of coins is not allowed. The winner is the player who removes the last coin. As Golomb observes, the "cold" positions of this game (the ones in which the player who is about to move is losing) are exactly the positions of the form $2y$ where $y$ belongs to the Moser–de Bruijn sequence. A winning strategy for playing this game is to decompose the current number of coins, $n$ , into $x+2y$ where $x$ and $y$ both belong to the Moser–de Bruijn sequence, and then (if $x$ is nonzero) to remove $x$ coins, leaving a cold position to the other player. If $x$ is zero, this strategy is not possible, and there is no winning move.

## Decimal reciprocals

The Moser–de Bruijn sequence forms the basis of an example of an irrational number $x$ with the unusual property that the decimal representations of $x$ and $1/x$ can both be written simply and explicitly. Let $E$ denote the Moser–de Bruijn sequence itself. Then for

$x=3\sum _{n\in E}10^{-n}=3.300330000000000330033\dots ,$ a decimal number whose nonzero digits are in the positions given by the Moser–de Bruijn sequence, it follows that the nonzero digits of its reciprocal are located in positions 1, 3, 9, 11, ..., given by doubling the numbers in $E$ and adding one to all of them:
${\frac {1}{x}}=3\sum _{n\in E}10^{-2n-1}=0.30300000303\dots \ .$ Alternatively, one can write:

$\displaystyle \left(\sum _{n\in E}10^{-n}\right)\left(\sum _{n\in E}10^{-2n}\right)={\frac {10}{9}}.$ Similar examples also work in other bases. For instance, the two binary numbers whose nonzero bits are in the same positions as the nonzero digits of the two decimal numbers above are also irrational reciprocals. These binary and decimal numbers, and the numbers defined in the same way for any other base by repeating a single nonzero digit in the positions given by the Moser–de Bruijn sequence, are transcendental numbers. Their transcendence can be proven from the fact that the long strings of zeros in their digits allow them to be approximated more accurately by rational numbers than would be allowed by Roth's theorem if they were algebraic numbers, having irrationality measure no less than 3.

## Generating function

$F(x)=\prod _{i=0}^{\infty }(1+x^{4^{i}})=1+x+x^{4}+x^{5}+x^{16}+x^{17}+\cdots ,$ whose exponents in the expanded form are given by the Moser–de Bruijn sequence, obeys the functional equations
$F(x)F(x^{2})={\frac {1}{1-x}}$ and
$F(x)=(1+x)F(x^{4}).$ For example, this function can be used to describe the two decimal reciprocals given above: one is $3F(1/10)$ and the other is ${\tfrac {3}{10}}F(1/100)$ . The fact that they are reciprocals is an instance of the first of the two functional equations. The partial products of the product form of the generating function can be used to generate the convergents of the continued fraction expansion of these numbers themselves, as well as multiples of them.

## Recurrence and regularity

The Moser–de Bruijn sequence obeys a recurrence relation that allows the nth value of the sequence, $S(n)$ (starting at $S(0)=0$ ) to be determined from the value at position $\lfloor n/2\rfloor$ :

{\begin{aligned}S(2n)&=4S(n)\\S(2n+1)&=4S(n)+1\end{aligned}} Iterating this recurrence allows any subsequence of the form $S(2^{i}n+j)$ to be expressed as a linear function of the original sequence, meaning that the Moser–de Bruijn sequence is a 2-regular sequence.