Henry Baker <hbaker1@pipeline.com> wrote:
What I was really trying to get at was irrational/transcendental bases r, |r| close to 1, and what "numerals" to use.
Radix r numbers and radix 1/r numbers are identical, except written in reverse order. For instance in radix 1/10, this is the year .8102 and one third is ...33333.0 Of course real numbers (unlike p-adics) that go on forever to the *left* look a little weird. You can't use fewer than two numerals. You might as well call them 0 and 1. There will in general be many ways to represent the same number. Of special interest are those radices (1<r<2) in which all positive integers have terminating representations. These include radix sqrt(2) and radix phi, but do not include any rational radices such as 1.1. I'm pretty sure they don't include any transcendental radices either. In radix phi, if you have the constraint that no two "1" digits can be adjacent, there's a unique representation for every number. That could be useful for encoding data on long-chain hydrocarbon "tapes," using single bonds for 0s and double bonds for 1s, given that it's unstable to have two adjacent double bonds. Another application is where the cost of 0 bits and 1 bits is unequal. For instance the SF author Charles Stross has proposed using C12 and C13 atoms for 0s and 1s to store data in diamond form. (Both isotopes are stable.) It would be extremely compact and extremely durable. Since there are 90 C12 atoms for every C13 atom, if the goal isn't to store data as compactly as possible, but to store as much data as possible in the total available carbon, it would make sense to use a radix in which 0 bits were 90 times more common than 1 bits. The old five-bit ITA2 teletype code, often wrongly called Baudot, treated 1-bits as more expensive than 0-bits (since the former cause more wear on mechanical teletypes), hence gave the most common letters the codes with the fewest 1-bits. This had the interesting side effect of making ITA2 a rich source of bitwise palindromes, like Morse code but unlike ASCII.