Does the string of prime numbers contain all natural numbers?

It follows from Dirichlet's Theorem.

If $d$ is the number we want to find, define $s=10d+1$. By definition, $\gcd(s,10)=1$ and $s$ contains the digits of $d$.

Dirichlet's Theorem's implies there's a prime of the form $p:=s+k \times 10^n$ where $10^n$ is chosen so that it has as many zeroes as digits of $s$. The digits of $d$ appear in the digits of $p$, and thus in the given string of primes.


If you mean "every non-negative integer", then the answer is yes.

First, it contains the integer 0 as a substring because 101 is a prime.

Next, for every integer i > 0, there is a prime that starts with the integer i: Take the known results about gaps between prime numbers, for example that there is always a prime between $n^3$ and$(n+1)^3$ for large n. There is always a large n such that both $n^3$ and$(n+1)^3$ start with the digits of i, therefore the prime between $n^3$ and$(n+1)^3$ also starts with the digits of i.

(This is true because one of i, 10i and 100i is not the cube of an integer).


Let $n$ be a natural number, and let $\mathcal N(n)$ be the set of natural numbers not containing $n$ as a substring when written in base 10. It is well-known that $\sum_{k\in \mathcal N(n)}\frac{1}{k}$ converges.

Let $\mathcal P$ be the set of prime numbers. It is also well-known that $\sum_{p \in\mathcal P}\frac{1}{p}$ diverges.

Therefore it cannot be the case that $ \mathcal P\subseteq\mathcal N(n)$, and $n$ is therefore a substring of some prime (of infinitely many primes, in fact).