How to avoid rounding off in binary representation

julypraise
Messages
104
Reaction score
0

Homework Statement


Is the fundtion defined f:P(\mathbb{N}) \to [0,1] by

f(X) = 0.a_{1} a_{2} \dots in binary representation where a_{k}=1 if k\in X and otherwise 0 one-to-one?

(*note: N does not have 0)

If not, can you change bit so that the changed funtion becomes one-to-one?



Homework Equations





The Attempt at a Solution


I know this function is surjective if I interpret the decimal expression in binary representation. But then in this case f({1}) = f(Z\{1}) as 0.100000.. = 0.011111111..., therefore not one-to-one. (Am I right?)

So can I in some way make a function that is one-to-one and similar to this one by somehow avoiding the rounding off problem? Could you give me just a hint? Thanks.
 
Physics news on Phys.org
julypraise said:
So can I in some way make a function that is one-to-one and similar to this one by somehow avoiding the rounding off problem? Could you give me just a hint? Thanks.

I have a way of doing this, but it is pretty inelegant. Are you alright with expanding the codomain of the function?
 
jgens said:
I have a way of doing this, but it is pretty inelegant. Are you alright with expanding the codomain of the function?

Well, yes. Just give me a brief idea of it, please. And also.. as an extra question, well... do you have another idea of making bijection between two sets? This binary representation thing is not the best idea on making bijection between P(N) and [0,1].. right?
 
I haven't completely figured it out, but you can make a distinction between 3 types of sets:
1. Sets X with a finite number of elements. Let's call them "0-tail".
2. Sets X that contain all elements of ##\mathbb{N}_{>n}## for some number n. Let's call them "1-tail".
3. Sets X that belong neither to sets of type 1 nor to sets of type 2. Let's call them "no-tail".

Now we can for instance take your binary representation, but divide all 0-tailers by 2.
And divide all 1-tailers by 2 and subtract from 1.
That way, you'd have a bijection of ##\mathcal{P}(\mathbb{N})## to ##[0,1)##.

EDIT: edited the 1-tail operation.
 
Last edited:
I have not checked if I Like Serena's solution works, but another (similar) way of doing this is to expand the codomain to be [0,1] and all real numbers in [1,2] with which have tails consisting completely of 1s. Then you just map the problematic elements into your expanded codomain.
 
jgens said:
I have not checked if I Like Serena's solution works, but another (similar) way of doing this is to expand the codomain to be [0,1] and all real numbers in [1,2] with which have tails consisting completely of 1s. Then you just map the problematic elements into your expanded codomain.

I'm not quite sure what you meant. The image of the mapping is still [0,1]. Isn't it?
 
julypraise said:
I'm not quite sure what you meant. The image of the mapping is still [0,1]. Isn't it?

No. The point is that you can easily define a new mapping which is one-to-one and maps onto the expanded codomain I mentioned. Notice that for each x \in [0,1] there are at most two sets in \mathscr{P}(\mathbb{N}) which will map to x with your original mapping. Now define a new mapping which takes these problematic sets into the added part of your codomain. Do you want more of a hint?

Edit: It is also worthwhile to check if you can use I Like Serena's solution. His/her posts are very good.
 
I think it's quite enough. Thanks guys.
 
Back
Top