Transcendental functions

Except for the special case , is a transcendental number for any finite floating-point value x. This means there could be some floating-point number whose logarithm is , where the braces indicate bits beyond the 53 bits of double precision, and where the sequence of 1-bits in the braces is thousands or millions of bits long. That is, the logarithm of a floating-point value could be arbitrarily close to a half-way case. An algorithm that computed successively more bits, but always with some uncertainty in the last bit computed, would have to compute beyond the last 1-bit in the long sequence in order to ascertain that the result was correctly rounded.

Because it is possible that some value could require computation beyond the time a user is willing to wait or beyond the memory capacity of a particular computer, and because the double numbers are too numerous to check exhaustively, it is impossible to prove beyond mathematical doubt that an implementation of a transcendental function for double or long double arguments is correctly rounded.

The fate of rounded values excruciatingly close to half-way case is left in the balance. The best algorithms are known to be correctly rounded for all but one in a trillion cases; they are not known to fail for the others.


[Contents] [Previous] [Next]
Click the icon to mail questions or corrections about this material to Taligent personnel.
Copyright©1995 Taligent,Inc. All rights reserved.

Generated with WebMaker