Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

When digit 1 in binary has no information content: How to distinguish number "0" and number "1"? #1

Open
dreirund opened this issue Jan 23, 2024 · 6 comments

Comments

@dreirund
Copy link

Ahoj,

in your video around minute:second 16:02 you argue that the first digit in binary has no information content at all.

(You argue:

  1. we can remove all leading 0s,
  2. then the first leftover digit is always a 1, so counting information content it can be omitted.)

But if doing so: How do you then distinguish the number "0" from the number "1"?

Number "0" would be represented by the empty list already (deletion of leading zeros), so we need the digit 1 when representing the number 1 in order to distinguish it from the number "0".

I see your argument flawed in this point -- where am I wrong?

Regards!

@zephiii
Copy link

zephiii commented May 10, 2024

The section of the video about multiplication tables (and how the one used in binary is just a glorified AND gate) uses the 0 digit on its own to represent 0.
image

I'm not sure if I misinterpreted your post or not, feel free to critique this response.

@LincolnatorTheGreat
Copy link

LincolnatorTheGreat commented May 25, 2024

What that is suposed to mean is that for any number written,
l..ll
l.llll
lll.l
or what have you, every single one starts with a 1, for it to be a number. So, the proposal is to always drop that first 1 when writing and just assume its existence. These are the same numbers as above.
..ll
.llll
ll.l
So in all cases, including those where the number starts with 0, we know there is an assumed 1 at the start that is not written. In binary this contains the same information either way, but in any other base that first digit still contains some information, albeit less than the other digits, and needs to be written.

@dreirund
Copy link
Author

dreirund commented May 26, 2024

Ahoj @LincolnatorTheGreat, whom do you reply to?

In case you reply to my initial post:

What that is suposed to mean is that for any number written, […] every single one starts with a 1, for it to be a number.

No. That assumption is false in its absolute generality:

ZERO does not start with a 1.

So, if we have e.g.

.
l
l.
ll

and we apply

the proposal is to always drop that first 1 when writing and just assume its existence.

we get

.

.
l
  • How we distinguish here the one in the 1st line and the one in the 3rd line?
  • Regarding the one in the 2nd line, how do we know that there is a number at all?

Regards!

@TheGnuGod
Copy link

Though I am long late to this thread, I still think I have something to say, even if dreirund doesn't see.

I think the implication of the fact that "every non-zero binary number starts with a ", is not that everyone should start writing numbers with one less digit, but instead that it makes binary defeat every number larger than it when fighting the Information Content per Digit vs. More Digits battle.

That battle isn't really real, it's just one way of comparing bases which is often done wrong and which favors binary, not e or three.

It is in fact, impossible, without some kind of metadata (which would take exactly one bit of information), to write numbers with no leading 1, because numbers like 10 (Two, with its leading one to distinguish from zero) and 10 (Five, with its leading one removed) are identical, even as you go beyond the zero vs. one problem.

You could, in theory, dedicate an additional bit at the start of the number to telling the viewer if they need to add a leading one in their head, but then what's even the point because you're adding an extra bit either way.

Nobody is writing numbers with less digits, sadly, but some are getting radix economy wrong.

@dreirund
Copy link
Author

dreirund commented Nov 3, 2024 via email

@TheGnuGod
Copy link

Your presumption that the intent is to write numbers with less digits is flawed, upon closer inspection of the video, which I had not done, seemingly nor the video's author, though they scripted the whole thing🤔.

They say in the video:

[On radix economy]
The key is that leading digit, carrying slightly less information than the rest.
In most bases, this slight decrease in information makes hardly any difference. But in binary, where the only two options for a digit are zero or one, excluding zero means it can only be one.
Since it can only be one value, it contributes no information whatsoever.

At this point you could reasonably say that there is a flaw, in that you must in fact include the leading 1 (or, when writing 0% of numbers, 0) when writing numbers down. However, the next part challenges that.

It still matters, of course - it contributes to arithmetic after all - but in terms of actually determining the number's value, it might as well not be there.

I think the implication of this sentence is that you do still have to write it (it contributes to arithmetic, after all), but when playing the mostly imaginary game of "Which input gets the lowest output when plugged into the radix economy formula!" (kind of like a certain game show) then binary wins.

I hope this helps, in rescrepanising* this discrepancy.
Good luck in your travels through the forest of all knowledge.

*That's a pretty fun word I just made up, isn't it?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants