Re: Table 4 proposal version 0.2...
On 2012-03-23 10:57:20 -0700, Dan Zuras Intervals wrote:
> The pow(x,y) = x^y (with the second parameter a floating-
> point number) was defined as if it were the analytic
> continuation of the x^n function into the Reals.
No, it cannont be an analytic continuation, because the standard
says:
pow (x, ±0) is 1 for any x (even a zero, quiet NaN, or infinity)
making pow not continuous at (0,0).
I would have thought powr to be an analytic continuation, based
on the fact that the sums, products, and compositions of analytic
functions are analytic, and the exp(y * log(x)) formula on the
real numbers. That's why pow(0,0) is not defined. In this case,
it would have made sense to get +1 on (+1,+inf) if +1 is regarded
as exact.
> Only in the powr(x,y) = exp(y*ln(x)) case do we have a
> problem. In this case:
>
> powr(+1,+/-inf) signals the invalid exception
>
> because y*ln(x) = inf*0 which is itself invalid.
>
> Not because there is any inexactitude in the value of 1.
Your reasoning is flawed because exp(y * log(x)) is considered at
*Level 1* (indeed, there must be a single rounding). At Level 1,
the concept of NaN and NaN propagation is not defined. In math
(Level 1), this notion of invalidity propagation does not apply:
functions not defined at some point by a formula are generally
extended by continuity (if the limit exists).
--
Vincent Lefèvre <vincent@xxxxxxxxxx> - Web: <http://www.vinc17.net/>
100% accessible validated (X)HTML - Blog: <http://www.vinc17.net/blog/>
Work: CR INRIA - computer arithmetic / AriC project (LIP, ENS-Lyon)