Home About
Complex Discrete Logs Compressed Histogram Hash
DIY crypto Fusion
Heterodyne Physics McCoskey Count Sort
Oil Spill Fix Personal Rail
Rational Residue Residue Arithmetic
Reverse Translation Analysis Rotary Engine
Subatomic Energy
Rational Home Floating Point Rational
Polynomial Limitations Residue Arithmetic?
Why Residue Arithmetic? New Solutions
Overflow & Compare Translating
Division Numerator/Denominator
Memory Bandwidth Wider Data Bus

Why Residue Arithmetic?

Residue number systems require no carry for the operations of add, subtract, and multiply. This is in contrast to all polynomial number systems that require a carry for all arithmetic operations. For example, to add two binary numbers with a simple circuit it is necessary to wait until the first digit is done before adding the second. It is also possible to use other schemes such as a "look‑ahead" circuit that will predict what the carry will be, but such circuits become prohibitively complex for large numbers. Modern computers solve this problem by pipelining. One adder circuit is adding the first few bits of one set of operands while a second adder circuit is adding the second few bits of a second set of operands etc. Thus, as long as the pipeline is full, such a system can produce a completed operation in the time it takes to add just a few bits. Pipelining is just the most commercially successful form of parallelism. Much research effort is being expended on other forms. This is fine for some problems, but it is estimated that the average supercomputer spends 30% to 50% of its time on problems in which no form of parallel computation can be used. A residue computer can add, subtract, or multiply a complete large number in about the same time it takes ordinary computers to add the first few bits.

In polynomial arithmetic, multiplication is treated as a series of additions. If two 56 bit numbers are to be added, one of them must be shifted (multiplied by two) 56 times and also added whenever there is a one in the other operand. Supercomputers also pipeline this process and can do it in the same amount of time it takes them to add, but they use a lot more semiconductor than for addition. Residue multiplication can take place in the same time as residue add and takes about the same amount of semiconductor.