Integer Division in Residue Number Systems

This contribution to the ongoing discussion of division algorithm for residue number systems (RNS) is based on Newton iteration for computing the reciprocal. An extended RNS with twice the number of moduli provides the range required for multiplication and scaling. Separation of the algorithm description from its RNS implementation achieves a high level of modularity, and makes the complexity analysis more transparent. The number of iterations needed is logarithmic in the size of the quotient for a fixed start value. With preconditioning it becomes the logarithm of the input bit size. An implementation of the conversion to mixed radix representation is outlined in the appendix. >