Subject: How to deal with r^(bfloat(2/3))/r^(2.0/3)
From: Raymond Toy
Date: Wed, 12 Dec 2007 22:15:47 -0500
Robert Dodier wrote:
> On 12/12/07, Stavros Macrakis <macrakis at alum.mit.edu> wrote:
>
>
>>> (%i6) (bfloat(2/3))-(2.0/3);
>>> (%o6) -.19073b-6
>>>
>
>
>> However, with default settings, the error should be < 1.0e-16, and I
>> cannot reproduce your result with any settings. In fact, on my system
>> (Maxima 5.13.0 on GCL 2.6.8), this returns 0.0b0.
>>
>
> I seem to recall that bigfloat conversion was tweaked recently.
> I'd have to look in the cvs log and/or email archive to be sure.
>
>
Yes. I did that after some discussion on this list and with Richard
Fateman. Basically the conversion from a double-float to a bigfloat
went through a rationalization process. That's not really right,
because 1.0/3.0 would be rationalized to produce 1/3, which is converted
to a bfloat with way too many accurate digits. We now directly convert
the double-float to a bigfloat.
Ray