2
$\begingroup$

I am considering here the pre-decimal notations such as Roman numerals, Egyptian numerals etc. It seems reasonable that these must all be equivalent. And it seems that decimal notation (i.e. place-value notation) replaces all these earlier notation. So without getting into Peano's notations, if we were looking for a notation for arithmetic, could the decimal notation be considered the "right" solution? Thanks!

$\endgroup$
  • 2
    $\begingroup$ Well, certainly, the base of 10 is arbitrary. (Decimal implies base 10 - dec- being the prefix meaning 10.) $\endgroup$ – Thomas Andrews Jun 23 '14 at 17:42
  • 1
    $\begingroup$ Of course, the base (2, 10, 16,...) is arbitrary, but try to make computatuins with Roman numerals... and you will appreciate how "right" is hindo-arabic notation (positional + $0$). $\endgroup$ – Mauro ALLEGRANZA Jun 23 '14 at 17:45
  • 2
    $\begingroup$ What do you think of bijective hexavigesimal (base 26 without a zero) as used for spreadsheet column labels using letters? Addition and multiplication on positive integers are not particularly difficult. $\endgroup$ – Henry Jun 23 '14 at 17:52
  • $\begingroup$ Have you ever tried calculating with Roman numerals? It's a mess. Try multiplying XLIX by XXXVIII and see how far you get. $\endgroup$ – MJD Jun 17 '15 at 3:02
4
$\begingroup$

Positional notation is an optimally efficient encoding of numbers into strings of characters drawn from a fixed set. Any other identification of numbers with strings will require strings at least as long as those in positional notation.

In this sense, positional encoding is

  1. fundamentally superior to all the historical encodings that came before it (Roman numerals, Egyptian numerals, etc), and
  2. better or equally as good (in terms of string length needed) as any possible notation people can ever think of.

The reason is that a notation system is an association (bijection) of numbers with strings, and positional encoding systematically enumerates all possible strings of digits of length $k$, leaving none out, before moving on to strings of length $k+1$.

For example, suppose our character set consists of the symbols "0" and "1" (Ie., we are working in binary), and we wish to represent all numbers from 0 to 7, represented by circles. We have the positional encoding, \begin{align} \text{none} & \longleftrightarrow 0 \\ \circ & \longleftrightarrow 1 \\ \circ \circ & \longleftrightarrow 10 \\ \circ \circ \circ & \longleftrightarrow 11 \\ \circ \circ \circ \circ & \longleftrightarrow 100 \\ \circ \circ \circ \circ \circ & \longleftrightarrow 101 \\ \circ \circ \circ \circ \circ \circ & \longleftrightarrow 110 \\ \circ \circ \circ \circ \circ \circ \circ & \longleftrightarrow 111 \end{align}

On the right are all possible strings of length 3 (when prepended by an appropriate amount of zeros). It would be impossible to create an encoding scheme for this using only strings of length 2, because there are only 4 strings of length 2, whereas we need to represent 8 numbers. One could create other optimal encodings by permuting the order of the strings, but that's it.

$\endgroup$
  • $\begingroup$ Now you have me wondering about arithmetic with gray-coded numbers. $\endgroup$ – MJD Jun 17 '15 at 3:03
  • 1
    $\begingroup$ It's not clear, though, that string length is the only important factor when it comes to "best" encoding. For instance if you only need to multiply and divide rational numbers, an encoding based on prime powers in the factorization will be far superior to positional encoding. $\endgroup$ – user7530 Jun 17 '15 at 3:04
  • $\begingroup$ @user7530 I've been wondering about encodings based on prime factorizations as well. The main issue (as far as I can tell) is, supposing we have a prime factorization $x=p_1^{k_1}\dots p_n^{k_n}$, how to denote the prime numbers $p_i$ and their powers $k_i$ without resorting back to standard positional notation. Maybe there is some recursive way to do this? $\endgroup$ – Nick Alger Jun 17 '15 at 3:13
  • $\begingroup$ You can always use $\bullet\bullet$ to mean 2, $\bullet\bullet\bullet$ to mean 3, $\bullet\bullet\bullet\bullet\bullet$, and so on. The problem with that representation is that it's hard to do addition. $\endgroup$ – MJD Jun 17 '15 at 10:16
3
$\begingroup$

If we were looking for a notation for arithmetic, could the decimal notation be considered the “right” solution?

Given the context, I will assume that by “decimal notation” you actually mean positional notation, since the other numeral systems that you've mentioned are also decimal or base $10$, since they consist of symbols representing various powers and multiples of $10$. In which case, my answer would be: Even if not “the right solution”, it's definitely the best one we've got so far, at least when compared to the others you've mentioned $\big($i.e., think about doing division and multiplication using Roman numerals, for instance$\big)$.

$\endgroup$
  • $\begingroup$ Or try to represent a googol using Roman numerals. $\endgroup$ – Joel Reyes Noche Jun 24 '14 at 0:18
  • 1
    $\begingroup$ Actually, I think it would be $X^C$ $\endgroup$ – Lucian Jun 24 '14 at 0:20
  • $\begingroup$ How about a negative googol, then. :) $\endgroup$ – Joel Reyes Noche Jun 24 '14 at 0:20

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.