|
|
|
|
|
by xyzzyz
1365 days ago
|
|
I did some testing, and you are correct that they are slightly different: >>> print("{:.30f}".format(sin(pi/4, 0, 0, *standard_coeff)))
0.707106781186567889818661569734
>>> print("{:.30f}".format(sin(pi/4, 0, 0, *musl_coeff)))
0.707106781186547461715008466854
The difference at the very edge of the interval occurs at the 14th digit of decimal expansion, and it's at the edge of accuracy of double, at 16th digit: after ...6547, the exact value starts with ...6547_5244, instead of 4617. I wouldn't exactly call it a big mistake, as the difference would not be relevant in almost all practical uses, but that would be a mistake nevertheless, and I'm sure someone would be bitten by this. Thanks, I learned something new today! |
|