How to "embed" ${2^{\bf N}}$ into ${{\bf R}}$?

152 Views Asked by At

Here, Terence Tao writes:

… by using the decimal representation to embed ${2^{\bf N}}$ into ${{\bf R}}$.

What does he mean by "embed"? Is he speaking about constructing an injection ${2^{\bf N}}$ into ${{\bf R}}$? Is says using the "decimal representation"? Shouldn't it be binary representation?

How to "embed" ${2^{\bf N}}$ into ${{\bf R}}$?

2

There are 2 best solutions below

2
On BEST ANSWER

An element of $\{0,1\}^{\mathbb N}$ is a sequence $(a_0, a_1, a_2, \ldots)$ where each $a_i$ is either $0$ or $1$. Just build a real number out of them.

For instance, the sequence $(1, 0, 0, 1, 1, 1,\ldots)$ is mapped to the real number $0.100111\ldots$. This mapping is injective, i.e., an embedding.

2
On

He is indeed talking about constructing an injection. However, it's even better than that: $2^\mathbb{N}$ carries a natural topology - even a metric! - and according to that, the injection Tao mentions is continuous.

You ask about using binary vs. decimal - there is a slight issue in using binary: reals with multiple binary expansions. E.g. in binary $0.0111111...=0.100000...$, so the "obvious" map is not injective. Things are easiest in base $>2$ - decimal, or ternary, or whatever you want.

One way to do things via decimal notation would be as follows:

  • Take your binary sequence,

  • change each $1$ to a $5$,

  • and put a decimal point at the end.

E.g. "$0, 1, 1, 0, 1, 0, 0, . . .$" becomes "$0.0550500...$". This is indeed injective, as is easily checked. And there are lots of other ways to do this, too. Tao says to use decimal notation just for simplicity - if you prefer to work in a different base you can, but if you work in binary you need to be careful to ensure injectivity.


One way to do this in binary is to use a different replacement scheme - e.g. replace each "$0$" with "$01$", and each "$1$" with "$10$", so you're using more than one digit. Then e.g. the sequence "$01001101...$" turns into the number $0.0110010110100110...$. This is less elegant, though, than just using a different base.