# What is the most efficient numerical base system?

I remember reading somewhere that base $e$ is the most "efficient" base system because of its ratio of possible characters to number length. For example, binary is "inefficient" because each represented number is very long when represented with only two digits (0 and 1). Base 10 is also considered "inefficient" because there are so many numbers to remember (0-9) even though each represented number is shorter than binary. Apparently the maximum "efficiency" occurs at base $e$. How is this possible? Can irrational bases exist? How is "efficiency" of a base numerically calculated?

• Jul 18, 2013 at 15:52
• Relevant
– MJD
Jul 18, 2013 at 15:55
• Another source of references: mathworld.wolfram.com/Base.html Jul 18, 2013 at 15:56
• @FooBarrigno: I would say, more this in general, and that for the optimality of $\mathrm e$
– Ilya
Jul 18, 2013 at 15:57
• Does that sense of optimality have any practical value? Jul 18, 2013 at 15:59

First, let's specify the sources. From Wikipedia:

The base $e$ is the most economical choice of radix $\beta > 1$ (Hayes 2001), where the radix economy is measured as the product of the radix and the length of the string of symbols needed to express a given range of values.

Then we have a longish article by Hayes in American Scientist, which I don't feel like reading. The matter boils down to: the representation of number $n$ in base $\beta$ (integer or not) takes $\approx \log n/\log \beta$ digits. If your idea of "economy" is the product of this length with $\beta$ then of course, you are going to minimize $\beta /\log \beta$ and find that the minimum is at $\beta=e$. For example, with Wolfram Alpha, which can plot this function and compute its derivative.

• It seems a bit counter-intuitive that an irrational number is the most "efficient choice", since it is irrational. For instance how does on "economically" represent the number 1. It seems that base three would be a better choice in practice since it is the integer closest to three. Jul 20, 2013 at 17:51
• @BabyDragon: In base $e$, the number "one" is represented as "$1$", and the number "two" as "$2$". The number "three" is represented as $1.0200112\dots$, denoting $e + 0e^{-1} + 2e^{-2} + 0e^{-3} + 0e^{-4} + 1e^{-5} + 1e^{-6} + 2e^{-7} + \dots$. See en.wikipedia.org/wiki/Non-integer_representation Jul 21, 2013 at 6:49
• @ShreevatsaR Wouldn't "three" be $2.21211\ldots=2e^0+2e^{-1}+e^{-2}+2e^{-3}+e^{-4}+e^{-5}+\cdots$? It looks like you skipped over the ones place, and are actually expanding $10.0200112\ldots$, which would be an alternative. Jul 15, 2015 at 18:13
• @alex.jordan: Indeed, looks like I made exactly that mistake, thanks for pointing it out. Jul 15, 2015 at 19:12

Assume there are $$V$$ independent states of information. Then we can represent approximately $$\frac{V}{N}$$ digits in base $$N$$.

The amount of information we can represent is $$I=N^{\frac{V}{N}}$$.

The value of $$N$$ that maximizes $$I$$ (either where the derivative is $$0$$ (if the second derivative is negative) or at infinity (if the second derivative is positive)) is the most "efficient" base.

So we take the natural log: $$\ln(I)=\frac{V}{N}\ln(N)$$

And the derivative: $$(\ln(I))'=V\frac{(1-\ln(N))}{N^2}$$.

We then set $$(\ln(I))'=0$$. Solving, $$N=e$$.

Take the second derivative: $$(\ln(I))''=V\frac{(2\ln(N)-3)}{N^3}$$

When $$N=e$$, $$(\ln(I))''=-\frac{V}{e^3}$$ which is negative (recall that $$V$$ is positive), so $$I$$ reaches its maximum when $$N=e$$.

I understand bases that are whole numbers, but find it hard to see how to implement a system founded on base $$e$$. But, since $$e=2.7182818$$ (approx) then wouldn't base $$3$$ be a more efficient base than base $$2$$, since $$3$$ is closer to e than $$2?$$ Has the digital world handicapped humanity? Shouldn't we be using computers with a base $$3$$ foundation instead of base $$2?$$ How much smaller would our "big data" be, if we could be more efficient in how we store it?

My college professor made this argument back in $$1978$$. He proved that base $$e$$ was, indeed, more efficient. And, if we name digits in base $$2$$ "bits" (binary digits) and group them into "bytes", then we could name digits in base $$3$$ "ternary digits" or "tits" and group them into "tytes". Furthermore, he points out that instead of working with bits and bytes, he's rather be working with tits and tytes. Today, politically incorrect, but his point has stuck with me all these years.

• this issue is irrelevant to computing and assuming your professor wasn't joking, he was wrong and misextrapolating the issue entirely. computers, like humans, are generally concerned with algebraics which are a lebesgue measure 0 subset of the reals. e, as a radix, tops the charts for efficiency in terms of "number of digits to express a real" and reals are a much larger set than anything turing machines would ever be designed to deal with. Dec 30, 2019 at 8:48