On 07/27/2012 09:26 AM, Bruce Evans wrote:
On Wed, 25 Jul 2012, Stephen Montgomery-Smith wrote:
This function seems to be able to compute clog with a worst case
relative error of 4 or 5 ULP.
...
I lost your previous reply about this after reading just the first part.
Please resend if interested.
First part recovered by vidcontrol:
VC> > I'm still working on testing and fixing clog. Haven't got near
the more
VC> > complex functions.
VC> >
VC> > For clog, the worst case that I've found so far has x^2+y^2-1 ~=
1e-47:
VC> >
VC> > x =
0.999999999999999555910790149937383830547332763671875000000000
VC> > y =
VC> > 0.0000000298023223876953091912775497878893005143652317201485857367516
VC> > (need high precision decimal or these rounded to 53 bits
binary)
VC> > x^2+y^2-1 = 1.0947644252537633366591637369e-47
VC> VC> That is exactly 2^(-156). So maybe triple quad precision really
is enough.
Hmm. But you need 53 more value bits after the 156. Quadruple precision
gives 3 to spare. I didn't notice that this number was exactly a power
of 2, but just added 15-17 for the value bits in decimal to 47 to get over
60.
I think one should be able to prove mathematically that if the number is
as small as 1e-47, only the first one or two bits of the mantissa will
be non-zero. I think that if more than triple double precision is
needed, it is only one or two more bits more than triple double precision.
_______________________________________________
freebsd-bugs@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-bugs
To unsubscribe, send any mail to "freebsd-bugs-unsubscr...@freebsd.org"