Ehrenfeucht–Mycielski sequence


The Ehrenfeucht–Mycielski sequence is a recursively defined sequence of binary digits with pseudorandom properties, defined by.

Definition

The sequence starts with the single bit 0; each successive digit is formed by finding the longest suffix of the sequence that also occurs earlier within the sequence, and complementing the bit following the most recent earlier occurrence of that suffix.
For example, the first few steps of this construction process are:
  1. 0: initial bit
  2. 01: the suffix "" of "0" occurs earlier, most-recently followed by a 0, so add 1
  3. 010: the suffix "" of "01" occurs earlier, most-recently followed by a 1, so add 0
  4. 0100: the suffix "0" of "010" occurs earlier, most-recently followed by a 1, so add 0
  5. 01001: the suffix "0" of "0100" occurs earlier, most-recently followed by a 0, so add 1
  6. 010011: the suffix "01" of "01001" occurs earlier, most-recently followed by a 0, so add 1
  7. 0100110: the suffix "1" of "010011" occurs earlier, most-recently followed by a 1, so add 0
The first few digits of the sequence are:

Algorithms

A naive algorithm that generates each bit in the sequence by comparing each suffix with the entire previous sequence could take as much as time to generate the first bits of the sequence. However, as show using a data structure related to a suffix tree, the sequence can be generated much more efficiently, in constant time per generated digit.

Universality

The sequence is disjunctive, meaning that every finite subsequence of bits occurs contiguously, infinitely often within the sequence. More explicitly, the position by which every subsequence of length can be guaranteed to have occurred at least times is at most where is the Ackermann function. Experimentally, however, each subsequence appears much earlier in this sequence than this upper bound would suggest: the position by which all length- sequences occur, up to the limit of experimental testing, is close to the minimum possible value it could be,, the position by which a de Bruijn sequence contains all length- substrings.

Normality

conjecture that the numbers of 0 and 1 bits each converge to a limiting density of 1/2. That is, if denotes the number of 0 bits in the first positions of the Ehrenfeucht–Mycielski sequence, then it should be the case that
More strongly, I. J. Good suggests that the convergence rate of this limit should be significantly faster than that of a random binary sequence, for which
. The Ehrenfeucht–Mycielski balance conjecture suggests that the binary number 0.01001101... may be a normal number in base 2.
As of 2009 this conjecture remains unproven ; however, it is known that every limit point of the sequence of values lies between 1/4 and 3/4 inclusive.