A while ago, I was reflecting on the practical usefulness of bijections from $\mathbb N$ to $\mathbb N\times\mathbb N$, or $\mathbb R$ to$\mathbb R\times\mathbb R$. (We all know they exist.) Wouldn't they enable us to turn two (or any number of) data sets into one, and so massively reduce the space we need to store data? Is this related to the way videos are compressed?
Perhaps it might not work for all of $\mathbb N$ but if the amount of space is related to the numbers of $0s$ and $1s$, surely it might work for numbers within a finite set? After all, if each datum is represented by a string of, say, a hundred $0$-or-$1$ lights, regardless of the size of the datum-number, then bijections from $\{N<2^{100}\}$ to its Cartesian square might help?
Sorry if I sound amateurish, but I really know nothing about computer science.
You are mistaken in your understanding of this fact (bijection between $S$ and $S\times S$ for $\def\N{\Bbb N}S=\N$ and for $S=\Bbb R$), namely you overlook that this fact is fundamentally linked to the fact that these sets are infinite. For no finite $N>1$ does there exist a bijection between $\N_{<N}=\{\,n\in\N\mid n<N\,\}$ and $\N_{<N}\times\N_{<N}$. And in some bijection from $\N\to\N\times\N$, if you look at the inverse image of $\N_{<N}\times\N_{<N}$, it contains $N^2$ distinct natural numbers, so its largest element will necessarily be at least $N^2-1$ (the exact value depends on the bijection used). In terms of digits (or bits) in the representations of the numbers, to encode any two $d~$digit numbers by a single number, you need numbers of at least $2d$ digits, which removes the "magic" from this encoding.