# Finding injection from the set of all functions $\omega \to \mathbb{R}$ to $\mathbb{R}$

I want to find some explicit injection from $^{\omega} \mathbb{R}\to \mathbb{R}$ where $^{\omega} \mathbb{R} = \{f:\omega\to \mathbb{R}\}$. An injection to any other set with cardinality $2^\omega$ would be fine but I have a feeling it might be easiest to work with $\mathbb{R}$.

My first though was to associate to each function the diagonal cantor number, say for example that some $f$ is given by

$$f(0) = 0.0000\ldots$$ $$f(1) = 0.1111\ldots$$ $$f(2) = 0.2222 \ldots$$ $$\vdots$$

Then we associate the real number $r_f = 0.12\ldots$ to $f$

We define the function

$$F :^{\omega}\mathbb{R}\to \mathbb{R}$$ $$f\mapsto r_f$$

But I don't think this is injective since if two functions are sent to the same real number and since this number only depends on the diagonal entries of the function as seen above then at least one other entry might not be equal making $f$ and $f$ different functions.

I'm stuck and that was at least a naive attempt.

Any hints or suggestions on how to find such a mapping?

• Hint: it's not easiest to work with $\Bbb R$, because your injection has no hope of being continuous. Better to work with the discrete space $2^{\Bbb N}$. – Mario Carneiro Oct 21 '15 at 17:04

You're right that your proposed function doesn't work. Let me give a hint by answering the related question, "Find an injection from $^{\omega}(2^\omega)$ into $2^\omega$." (Sorry for the horribly mixing notations, I'm trying to combine the notation you've used above with the standard notation for the powerset of $\omega$.)

If you give me a sequence of infinite binary sequences $f$, I can view $f$ as an $\omega$-by-$\omega$ array of 0s and 1s. Then, I can "zig-zag" through this array to convert it into a single sequence $g_f$ of 0s and 1s: basically, fixing a bijection $b: \omega^2\cong\omega$, we let $$g_f(n)=f(b^{-1}(n)).$$ Do you see why the map "$f\mapsto g_f$" described this way is an injection (in fact, bijection)?

$\mathbb{R}$ is a little more complicated, because of the issue with non-unique decimal representations; but this should get you most of the way.

• I wouldn’t call $2^\omega$ the standard notation for the power set of $\omega$: to me it’s the cardinality of that power set. It may well be a standard notation, but $\wp(\omega)$ is, I think, still more common. In any case, what you’re actually working with is is a map of ${^\omega({^\omega 2})}$ into ${^\omega 2}$, basically by way of ${^{\omega\times\omega}2}$. – Brian M. Scott Oct 21 '15 at 17:09
• If you want a notation for the powerset distinct from ${}^AB$, why not use ${\cal P}(A)$? @BrianM.Scott, is that the Weierstrass P? I think that is probably not the right symbol. </nitpick> – Mario Carneiro Oct 21 '15 at 17:13
• @Mario: Yes, it’s the Weierstrass $\wp$. I use that version of $P$ because it’s the one closest to the handwritten script $P$ that I use for power set, which is different from the handwritten script $\mathscr{P}$ that I use in all other mathematical contexts. As far as I’m concerned, it’s as much right as any other script $P$. – Brian M. Scott Oct 21 '15 at 17:18
• @BrianM.Scott Fair, in the logic I read $2^\omega$ is used almost universally for the powerset of $\omega$. – Noah Schweber Oct 21 '15 at 17:28

First note that there is a nice injection $h_0$ from ${^\omega\omega}$ to $\Bbb R$: $h_0$ sends $f\in{^\omega\omega}$ to the continued fraction

$$\cfrac1{1+f(0)+\cfrac1{1+f(1)+\cfrac1{1+f(2)+\cfrac1{1+f(3)+\ddots}}}}\;.$$

(This is actual a bijection to the set of irrationals in $(0,1)$.) There is also a nice explicit pairing function $\pi$ that is a bijection from $\omega\times\omega$ to $\omega$. You can first use $\pi$ to get a bijection $h_1$ from ${^{\omega\times\omega}\omega}$ to ${^\omega\omega}$. There is an obvious bijection $h_2$ between ${^\omega({^\omega\omega})}$ and ${^{\omega\times\omega}\omega}$. The composition $h_2\circ h_1\circ h_0$ is then an explicit injection from ${^\omega({^\omega\omega})}$ to $\Bbb R$. To complete the argument, all that is needed is an explicit injection $g$ from $\Bbb R$ to ${^\omega\omega}$, which will give us an injection from ${^\omega\Bbb R}$ to ${^\omega\omega}$.

Given $x\in\Bbb R$, let $g(x)=\langle g_n(x):n\in\omega\rangle$, where

\begin{align*} g_0(x)&=\begin{cases} 0,&\text{if }x\ge 0\\ 1,&\text{if }x<0\;,\text{ and } \end{cases}\\ g_1(x)&=\lfloor x\rfloor\;. \end{align*}

If $x$ is irrational, $\langle g_n(x):n\ge 2\rangle$ is the sequence of denominators of the unique continued fraction expansion of $x-\lfloor x\rfloor$. If $x\in\Bbb Z$, $g_n(x)=0$ for $n\ge 2$. And if $x\in\Bbb Q\setminus\Bbb Z$, then $x-\lfloor x\rfloor$ has a unique finite continued fraction expansion whose last denominator is $1$; if the sequence of denominators is $\langle d_1,\ldots,d_m\rangle$, where $d_m=1$, set $g_n(x)=d_{n-1}$ for $n=2,\ldots,m+1$, and set $g_n(x)=0$ for $n>m+1$.

You can do something similar to a bijection between $\mathbb{N}$ and $\mathbb{N}^2$. Given $f:\omega\rightarrow\mathbb{R}$ and its values

$$f(0)=0.x_{00}x_{01}x_{02}x_{03}\dots$$ $$f(1)=0.x_{10}x_{11}x_{12}x_{13}\dots$$ $$f(2)=0.x_{20}x_{21}x_{22}x_{23}\dots$$ $$\dots$$

we can construct a number $$y=0.x_{00}x_{01}x_{10}x_{02}x_{11}x_{20}\dots$$

This gives a bijection between real numbers in $[0,1]$ and sequences of reals in $[0,1]$. Extending all this to the whole $\mathbb{R}$ is easy.

• This doesn't quite work, since some reals have non-unique binary representations . . . – Noah Schweber Oct 21 '15 at 17:01
• MJD shows how to do it right in this answer. cc @Noah – Brian M. Scott Oct 21 '15 at 17:05