3 ms·
[deleted by me, the poster]
by bsedlm 5y ago
[deleted by me, the poster]
- mywittyname 5y agoI read in Hacker's Delight a proof that e is the theoretically optimal base for computation. But since we lack the technology to make a base-e computer system, we have to settle for either binary, or base-3. So you're probably onto something.
- adrian_b 5y agoTo be more clear, e is the optimal base for representing approximate numbers, when it is desired to minimize the relative errors. Old IBM mainframes used base 16 for floating-point numbers, which (like also the base 10) is more distant from e than 2, and that caused larger computation errors than in modern computers with binary floating-point numbers. For exact numbers (e.g. integers), the base does not matter, except on how it influences the cost of the hardware needed to implement the arithmetic operations. Base 2 normally results in minimal cost.
- anamax 5y agoThe argument for base e is based on the physics of sensors and storage; what's the right number of signal levels. The problem with IBM's floating point scheme was that the multi-digit exponent granularity threw away mantissa bits. Reasonable precision with reasonable range is hard in 32 bits and IBM effectively had less. (36 bit FP can be much better.)
- adrian_b 5y agoI do not believe that there is any reason related to the physics of sensors and storage for which e can be an optimal base, unlike the case for minimizing errors in arithmetic operations, where e is optimal. In order to determine an optimal value for anything, you need some quantity that must be minimized or maximized. For storage, I do not see what quantity might have anything to do with the representation base except the probability of errors when retrieving a previously stored digit. However that probability decreases monotonically with the decrease in the number of values per digit, so the error probability is smallest for the smallest base, i.e. for 2, not for e. The same is for a communication channel affected by noise, the optimal base is 2. On the other hand, one may add additional constraints that can define an optimization problem, e.g. for a communication channel, if the bandwidth and the acceptable error probability are given, to maximize the quantity of information transmitted per time, or for a storage device, if the volume used for storage is given and the acceptable error probability is given, to maximize the quantity of information stored in that volume. However, for these 2 problems determined by physics the solutions cannot be achieved by using a certain numeric base. The optimal solutions for both problems is to use an appropriate error-correcting code, the right code depending on the parameters of the problem (but almost equivalent error-correcting codes can be defined for stored or transmitted symbols belonging to different symbol sets, e.g. for digits in numbers represented with different bases).
- anamax 5y agoWhile 2 values per storage element is optimal for the sensor, it is the worst case for "data per storage element". The quantity optimized was "cost to store data". The three parameters are sensor characteristics, storage element characteristics, and the amount of data per storage element. Increasing the last makes the other two worse, but that doesn't tell us that minimizing the last is the optimum solution. Yes, ECC across multiple storage elements changes things.
- deleted 5y ago[deleted]
- deleted 5y ago[deleted]