Dear All,
I'm currently working on accuracy improvements of the incomplete beta
function, based on the NSWC library [1]. It's quite a long work, but it
looks promising, since the implementation of the Gamma function they
propose (I had to work first on Gamma before starting the actual work on
Beta) seems to be much more accurate than the current implementation in CM3
(3-4 ulps, TBC).

When I'm done, I think I will replace the current impl of Gamma with the
NSWC. The problem is that a few months ago, while working on MATH-753, I
exposed a few constants as well as the method lanczos, which will probably
no longer be necessary (NSWC does not use Lanczos, but minimax rational
approximations). My worry is that we are approaching the release of 3.1,
and I think it would be a shame if we froze the exposition of these
constants and methods. The trouble is that my current work on Gamma and
Beta is quite slow, I'm not sure I can finish it before the expected
release.

So, should I revert the changes made for MATH-753, and reopen this issue?
This would allow the removal of method lanczos and constant LANCZOS_G,
which would lay out the path to the new implementation. Alternatively, I
can deprecate these fields.

What do you think?


[1] http://www.ualberta.ca/CNS/RESEARCH/Software/NumericalNSWC/site.html
[2] https://issues.apache.org/jira/browse/MATH-753

Reply via email to