In 1909, Émile Borel proved an intriguing theorem: that "almost all" real numbers are normal in all integer bases. A number is called normal if, in its infinite digit expansion, every possible finite sequence of digits appears with equal limiting frequency. For instance, in base 10, each digit from 0 to 9 appears exactly 10% of the time, and each pair of digits (00 through 99) exactly 1% of the time, continuing for all finite combinations.
Despite the theoretical prevalence of normal numbers, concrete examples from familiar constants—such as π, e, or √2—have not yet been proven to be normal in any base.
Known Examples and Their Limits
Due to this scarcity of natural examples, mathematicians often resort to explicitly constructed normal numbers. Champernowne's constant (0.123456789101112...) is a well-known example in base 10, constructed by explicitly concatenating integers. Another is the Copeland–Erdős constant, which concatenates prime numbers to ensure certain digit distribution properties.
These examples are illuminating but intentionally artificial, serving primarily as mathematical illustrations rather than natural occurrences.
Introducing the Vulcan Number
In 2019, I contributed a new construction—sequence A308705—to the Online Encyclopedia of Integer Sequences (OEIS). I invented this number to straightforwardly and obviously include every possible finite bit string pattern, ensuring clarity and simplicity in its structure. My goal was simple: concatenate every finite binary string in shortlex (shortest-first, lexicographic) order:
0, 1, 00, 01, 10, 11, 000, 001, 010, 011, 100, 101, 110, 111, 0000, ...
This generates an infinite binary constant:
0.0100011011000001...
The idea was simple—include every finite binary pattern exactly once. By construction, this should ensure uniform distribution of binary digits, strongly suggesting normality in base 2.
Computational Simplicity
Unlike some well-known constructions involving incomputable numbers, this Vulcan Number is:
Explicit and computable.
Deterministically constructed.
Simple enough for an introductory computer science course.
Designed explicitly to exhibit uniform digit distribution.
Here's a straightforward Python implementation illustrating the idea:
from bigfloat import *
import string
def GenerateBitstring(bitstring, suffix, recurse):
if recurse == 0:
bitstring = bitstring + suffix
else:
bitstring = GenerateBitstring(bitstring, suffix + "0", recurse-1)
bitstring = GenerateBitstring(bitstring, suffix + "1", recurse-1)
return bitstring
VulcanBinary = ""
MaxRecursion = 8
for i in range(1, MaxRecursion+1):
VulcanBinary = GenerateBitstring(VulcanBinary, "", i)
print('.' + VulcanBinary)
with precision(2000):
VulcanDecimal = BigFloat(0)
b = BigFloat(1)
for c in VulcanBinary:
b = b/2.
if c == '1':
VulcanDecimal = VulcanDecimal+b
print(VulcanDecimal)
print(string.join(x + ', ' for x in str(VulcanDecimal)[2:]))
Numerically evaluating this binary construction yields a decimal approximation:
0.276387117279486523734198676211901230555089988160685506143676819115...
A Modest Reflection
The Vulcan Number, while modestly intended, does illustrate a fascinating aspect of normality without relying on empirical or naturally occurring examples. It gently challenges the notion that deep mathematical explanations must always be grounded in concrete empirical examples.
Instead, it demonstrates how abstract theoretical concepts can be given explicit form through deliberate human creativity, even if such examples do not naturally arise. My contribution was simply an attempt to provide a clear, computable example illustrating a beautiful mathematical idea.
Concluding Thoughts
While the Vulcan Number's full normality in bases beyond binary remains unproven, its simple and explicit construction may help enrich discussions around digit distribution and computational mathematics. Ultimately, I hope this construction offers an approachable demonstration of a subtle mathematical truth, highlighting how sometimes the clarity we seek in mathematics emerges not from empirical discovery, but from intentional and creative exploration.