document the fact that "Known Maximum Errors" might not be maximal

Vincent Lefevre vincent@vinc17.net
Fri Feb 16 12:39:50 GMT 2024


On 2024-02-16 11:54:03 +0100, Paul Zimmermann wrote:
>        Vincent,
> 
> > If I understand correctly, Carlos means (unintended) bugs, in which
> > case, values may even be completely wrong (as already seen). I think
> > that saying "documented elsewhere" is misleading. And note that bugs
> > are not specific to the math functions. Any buggy library function
> > will not behave as described in the manual. You should rather say
> > that the given bounds obviously do not take bugs into account, if
> > you think that this is worth recalling.
> 
> of course *unknown* bugs might exist, but we are speaking of *known*
> defects here.

Well, known bugs in non-math functions are never documented either.
For instance, concerning regexps, there is bug 10844[*], which has
been known since 2009 (more than 14 years ago) and is not documented.

[*] https://sourceware.org/bugzilla/show_bug.cgi?id=10844

> The issue is that the manual says "*Known* Maximum Errors in Math Functions".
> 
> What do you suggest to avoid users deducing from the manual that the ulp error on say y0
> is bounded by 3 ulps on x86_64, whereas it can be as large as 5.93e15 ulps?
> 
> Checking y0 with glibc-2.39/build and rndn
> GNU libc version: 2.39
> GNU libc release: stable
> y0 0 -1 0x1.c982eb8d417eap-1 [5920543797734652] [5.93e+15] 5.92055e+15 5920543797734652
> libm gives -0x1.8p-55
> mpfr gives -0x1.af74bfa0f1304p-56

If I understand correctly, the *intent* is to give an error bounded
by 3 ulp, i.e. an error up to 3 ulp is not something that the user
should expect to be "fixed".

Perhaps the glibc manual should provide a way to find known bugs
more easily. That said, typing "y0" in bugzilla immediately gives

  https://sourceware.org/bugzilla/show_bug.cgi?id=16492

(for some other functions, which are also common words, this is not
that obvious).

-- 
Vincent Lefèvre <vincent@vinc17.net> - Web: <https://www.vinc17.net/>
100% accessible validated (X)HTML - Blog: <https://www.vinc17.net/blog/>
Work: CR INRIA - computer arithmetic / AriC project (LIP, ENS-Lyon)


More information about the Libc-alpha mailing list