Nitpicking
Originally posted by Hurkyl
Here's a bijection between 2^{\mathbb{Z}^+} and \mathbb{N}^{\mathbb{Z}^+}:
Let a be a one-based infinite sequence of 0's and 1's (i.e. an element of 2^{\mathbb{Z}^+}. We can construct a unique one-based infinite sequence of natural numbers b (an element of (\mathbb{N})^{\mathbb{Z}^+} as follows:
Let b_n be the location of the n-th one in a. If a does not have n ones, then b_n is zero.
This operation is clearly invertible, thus it is a bijection between the two sets.
Thus, 2^{\aleph_0} = {\aleph_0}^{\aleph_0}.
Acutally, that isn't quite correct. For example, the sequence "1,1,1,1,1,..." in (\mathbb{N})^{\mathbb{Z}^+} does not have an inverse in your function. (In general, there is a problem if the n-th number in the sequence of integers is less than n, or if there are any non-zero digits following a zero.)
I think this approach works.
First I want to eliminate all of the [tex]a[/tex] that have finitely many zeros:
Let [tex]f:A->A'[/tex] be defined as follows:
If a sequence [tex]a[/tex] has a non-zero repeating tail, then [tex]f(a)[/tex] is the same squence with the next non-one repeating tail.
For example, ...100100100... is changed to ...101101101... , ...110110110... is changed to ...000100010001..., and ...010010010... is changed to ...011011011...
This is a bit ugly, but bijective.
I can now operate on [tex]f(a)=a'[/tex] so I can assume thatthere are infinitely many 0's in the sequence. Consider the squence as a stream of natural numbers encoded as follows:
0 -> 0
100 -> 1
101 -> 2
11000 -> 3
11001 -> 4
.
.
The general form is that d consecitive ones followed by a zero, and then d binary digits is converted to the number expressed in the binary digits + 2
d-1.
Clearly this is well-defined (since there are infinitely many 0's) , surjective and injective.
Composing the two gives a bijectiont that proves the equality.