radford@calgary.UUCP (06/02/87)
I've thought of a nifty algorithm for calculating logarithms and exponentials, and would like to find out if it's new. If anyone would like to enlighten me as to the current state of the art in this area I would appreciate it. References would be nice too. I already know about polynomials in (1+x)/(1-x). My algorithm just does two adds and a shift for every bit of precision. This makes it most appropriate for hardware implementation, or software on a machine without floating-point hardware. It's probably best to mail rather than post. Thanks, Radford Neal
radford@calgary.UUCP (06/05/87)
It turns out that my algorithm for computing logs and exponentials is a special case of the CORDIC algorithm, for which see, e.g.: Walther, J. (1971) A Unified Algorithm for Elementary Functions, Joint Computer Conference Proceedings, vol. 38 (Spring 1971), pp. 379-385. CORDIC also calculates sin, cos, and lots more, all in about the time required for a multiply, assuming it is implemented in the same technology as the multiply. Thanks to all who responded. My next question is: Why is CORDIC not used more? Radford Neal