Thread overview | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
|
September 14, 2017 Unum rebuttal | ||||
---|---|---|---|---|
| ||||
https://people.eecs.berkeley.edu/~wkahan/UnumSORN.pdf Prof Kahan, who pretty much invented IEEE 754 floating point arithmetic, debunks unums. Unums pop up now and then with "why don't we support them?" The bottom line is there is no magic solution to floating point problems. Unums just trade one set of problems for another. |
September 15, 2017 Re: Unum rebuttal | ||||
---|---|---|---|---|
| ||||
Posted in reply to Walter Bright | On Friday, 15 September 2017 at 03:49:02 UTC, Walter Bright wrote: > https://people.eecs.berkeley.edu/~wkahan/UnumSORN.pdf > > Prof Kahan, who pretty much invented IEEE 754 floating point arithmetic, debunks unums. Unums pop up now and then with "why don't we support them?" > > The bottom line is there is no magic solution to floating point problems. Unums just trade one set of problems for another. It's hard to know what's going on when there are mistakes in his examples that lead to wrong behavior. How can be be taken seriously if his rebuttle has basic mistakes and typos? https://people.eecs.berkeley.edu/~wkahan/EndErErs.pdf page 5: (y - sqrt(y^2 + 1)) - 1/(y + sqrt(y^2 + 1)) is not zero for all y. I assume he means (y - sqrt(y^2 + 1)) + 1/(y + sqrt(y^2 + 1)) |
September 15, 2017 Re: Unum rebuttal | ||||
---|---|---|---|---|
| ||||
Posted in reply to Walter Bright | On Friday, 15 September 2017 at 03:49:02 UTC, Walter Bright wrote: > https://people.eecs.berkeley.edu/~wkahan/UnumSORN.pdf > > Prof Kahan, who pretty much invented IEEE 754 floating point arithmetic, debunks unums. Unums pop up now and then with "why don't we support them?" > > The bottom line is there is no magic solution to floating point problems. Unums just trade one set of problems for another. Prof. Gustafson refutes the critique on this one paper during a debate with Prof. Kahan: https://www.youtube.com/watch?v=LZAeZBVAzVw It seems to me unums are a nice design to make floating point computation accessible to more. It does not solve all problems, but it does not need to to improve the situation. |
September 16, 2017 Re: Unum rebuttal | ||||
---|---|---|---|---|
| ||||
Posted in reply to Joseph | On 15.09.2017 06:14, Joseph wrote: > ... How can be be taken seriously if > his rebuttle has basic mistakes and typos? > :-) > https://people.eecs.berkeley.edu/~wkahan/EndErErs.pdf > page 5: > > (y - sqrt(y^2 + 1)) - 1/(y + sqrt(y^2 + 1)) > > is not zero for all y. > > I assume he means > at > (y - sqrt(y^2 + 1)) + 1/(y + sqrt(y^2 + 1)) > > No, he means what he wrote, which is |y-√(y²+1)| - 1/(y+√(y²+1)). In D notation: abs(y-sqrt(y^^2+1)) - 1/(y+sqrt(y^^2+1)). |
September 16, 2017 Re: Unum rebuttal | ||||
---|---|---|---|---|
| ||||
Posted in reply to Walter Bright | On 15.09.2017 05:49, Walter Bright wrote:
>
> The bottom line is there is no magic solution to floating point problems.
What about implicit precision-tampering? ;)
|
September 16, 2017 Re: Unum rebuttal | ||||
---|---|---|---|---|
| ||||
Posted in reply to Timon Gehr | On Saturday, 16 September 2017 at 02:27:23 UTC, Timon Gehr wrote:
> On 15.09.2017 06:14, Joseph wrote:
>> ... How can be be taken seriously if
>> his rebuttle has basic mistakes and typos?
>>
>
> :-)
>
>> https://people.eecs.berkeley.edu/~wkahan/EndErErs.pdf
>> page 5:
>>
>> (y - sqrt(y^2 + 1)) - 1/(y + sqrt(y^2 + 1))
>>
>> is not zero for all y.
>>
>> I assume he means
>> at
>> (y - sqrt(y^2 + 1)) + 1/(y + sqrt(y^2 + 1))
>>
>>
>
> No, he means what he wrote, which is
> |y-√(y²+1)| - 1/(y+√(y²+1)).
>
> In D notation:
> abs(y-sqrt(y^^2+1)) - 1/(y+sqrt(y^^2+1)).
What are you saying? You haven't changed anything but slight notational differences. It's still wrong, so if he really means that then he is wrong, else it's just you.
|
September 15, 2017 Re: Unum rebuttal | ||||
---|---|---|---|---|
| ||||
Posted in reply to Timon Gehr | On 9/15/2017 7:53 PM, Timon Gehr wrote: > What about implicit precision-tampering? ;) User error, do not pass Go, do not collect $200. --- That reminds me, we do have a solution for the rounding issue: https://github.com/dlang/druntime/pull/1621 It's been drifting there for over a year. |
September 16, 2017 Re: Unum rebuttal | ||||
---|---|---|---|---|
| ||||
Posted in reply to Walter Bright | On Friday, 15 September 2017 at 03:49:02 UTC, Walter Bright wrote:
>
> The bottom line is there is no magic solution to floating point problems. Unums just trade one set of problems for another.
Walter
so what do you see as the trade-offs as being ?
Nick
|
September 16, 2017 Re: Unum rebuttal | ||||
---|---|---|---|---|
| ||||
Posted in reply to Joseph | On 16.09.2017 05:32, Joseph wrote: > On Saturday, 16 September 2017 at 02:27:23 UTC, Timon Gehr wrote: >> On 15.09.2017 06:14, Joseph wrote: >>> ... How can be be taken seriously if >>> his rebuttle has basic mistakes and typos? >>> >> >> :-) >> >>> https://people.eecs.berkeley.edu/~wkahan/EndErErs.pdf >>> page 5: >>> >>> (y - sqrt(y^2 + 1)) - 1/(y + sqrt(y^2 + 1)) >>> >>> is not zero for all y. >>> >>> I assume he means >>> at >>> (y - sqrt(y^2 + 1)) + 1/(y + sqrt(y^2 + 1)) >>> >>> >> >> No, he means what he wrote, which is >> |y-√(y²+1)| - 1/(y+√(y²+1)). >> >> In D notation: >> abs(y-sqrt(y^^2+1)) - 1/(y+sqrt(y^^2+1)). > > What are you saying? I'm saying that there is no mistake in the expression you indicate nor in the claims made about it. > You haven't changed anything but slight notational differences. The first expression you showed did not take the absolute value of the minuend. The second expression you showed also demonstrates rounding error, but it is not what he meant to write. > It's still wrong, He says the function Q is zero for all positive arguments, which it is. > so if he really means that then he is wrong, else it's just you. > I'll go as far as to agree that one of the three of us is wrong. (Or let's make it four; the expression and a slightly weaker version of the claim also occur in Gustafson's book.) |
Copyright © 1999-2021 by the D Language Foundation