http://www.perlmonks.org?node_id=1084609


in reply to In base 1, the number after 0 is:

Trick question! There's no number 0 in the usual sense in base 1, since you're just counting sticks, as it were. The role of 0 (the number, not the digit) is taken over by the empty string, and after that you get "|", "||" and so on (modulo your choice of symbol for counting).

Replies are listed 'Best First'.
Re^2: In base 1, the number after 0 is:
by LanX (Saint) on May 01, 2014 at 14:17 UTC
    I agree, but what is then consequently the meaning of the empty string in base n with n > 0 ?

    :)

    If one thinks it through its obvious that emptiness is a notation for skipped zeros ...

    ...i.e 42 is in reality 0...042 with an infinite number of leading zeros. With the exception of the number 0 itself which isn't reduced to an empty string.

    ... well o_O ...

    Lets talk about base 0 now ;)

    Cheers Rolf

    ( addicted to the Perl Programming Language)

      0 is both a digit and a number (which I will call "zero" for the rest of this post to make this clearer), and I think it's important to keep that distinction in mind.

      Zero can be represented in a variety of ways, including as "0". It could equally well be represented as "2-2", or "e+1", and so on; the number's the same, it's just written a different way. (Compare how "0.999..." denotes the same number as "1"; it's merely two different ways of writing down the same thing.)

      "42" vs. "042" vs "0...042" with any arbitrary number of leading 0s is an example of the same. That's the digit 0 there, not the number zero; the number is the same (and canonically written as just "42", although that's just convention).

      Indeed, for another example, compare different bases. 0x2A (hexadecimal) is the same as 42 (decimal) as 052 (octal) as 101010 (binary). Different representations again, but they are all names for the same number.

      So that said:

      I agree, but what is then consequently the meaning of the empty string in base n with n > 0 ?

      The meaning of the empty string in base 1 is the number zero -- but not the digit 0, though that digit, on its own and interpreted in bases n≥2, represents the number zero. The meaning of the empty string in such higher bases isn't generally agreed on, I think (by which I mean that nobody asked me for my opinion on the matter ;)). Consider this: you can tell me what "2+3*4" is, but if I asked you about "2+*4", you'd say that that's not a valid calculation, rather than giving the answer as "2" after having interpreted the empty string between the "+" and "*" as the number zero.

      Lets talk about base 0 now ;)

      Hmm, base 0? Talk about weird! Since 00=1 by usual convention, but 0n=0 for any other n, you couldn't represent any number larger than one. But that'd be the least of your problems, since your set of symbols (read: digits) would be empty anyway, and you could not actually represent anything other than the number zero, which would be represented by the empty string.

Re^2: In base 1, the number after 0 is: 1
by tye (Sage) on May 02, 2014 at 04:01 UTC

    Exactly.

    As to what was revealed to be the real question:

    Hence, the poll question is really, what is the first representational digit in base 1

    I think "1" is quite intuitive. prime factorization using base 1 reveals some of the benefits to working in base 1:

    They don't have the arbitrary range limitations of Perl's regular number representations while converting between the two is nearly trivial. Plus finding prime base-1 numbers is particularly compact code in Perl. And when the primality test fails you are also handed some factors! So base-1 numbers are perfect for finding prime factorizations! They aren't very space efficient, unfortunately (hey, no one's perfect).

    As well as providing handy Perl code for working with them.

    - tye        

Re^2: In base 1, the number after 0 is:
by chacham (Prior) on May 01, 2014 at 11:55 UTC

    Ooh, good point! In my mind, 0 is not a number, as, a number is a representation of a quantity and "nothing" is not a quantity. Zero is a placeholder though, useful in numeric representation systems that use columns.

    In that case, 0 also represents the "first" value, even though it doesn't amount too much. (Ever hear the trick statement, i know the score before a baseball game starts? It is 0 to 0.) Hence, the poll question is really, what is the first representational digit in base 1, colloquially asked as "what is the first number after 0".

      In my mind, 0 is not a number, as, a number is a representation of a quantity and "nothing" is not a quantity.

      I'm intrigued. Can you elaborate on that? In what sense is zero not a quantity?

      Related question: would you consider the empty set a set? And if so: would you say that it makes sense to talk about the cardinality of a set, i.e. the number of its elements? And what would the cardinality of the empty set be?

      Ever hear the trick statement, i know the score before a baseball game starts? It is 0 to 0.

      I think it'd be more accurate to say that it's NULL to NULL, to borrow a term from databases -- though NULL is itself a rather overloaded concept that represents (and, arguably, conflates) many distinct concepts at once.

      Hence, the poll question is really, what is the first representational digit in base 1, colloquially asked as "what is the first number after 0".

      In that case, I'm tempted to answer "an ε that's smaller than any real number>0", but I'll leave that to people who actually know a bit about non-standard analysis (I don't!). ;)

        In what sense is zero not a quantity?

        A quantity is an amount. Nothing is the absence of amount. While we use 0 as if it were an amount, and sentences that use it are understood quite well, it changes not that nothing is not the something required to have an amount.

        would you consider the empty set a set

        I do not know set theory.

        I think it'd be more accurate to say that it's NULL to NULL

        I guess that humor doesn't work on you. Congratulations, you broke the joke.