bug#16999: calc crashes when computation limit is increased

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view

bug#16999: calc crashes when computation limit is increased

Mattias Engdegård-2
10 sep. 2020 kl. 18.02 skrev Mattias Engdegård <[hidden email]>:

> Let me attempt a patch, and please forgive my reopening the bug.

Here is that patch. Sadly mail to Florian Beck's address bounced but perhaps someone else will see the proposal and subject it to scrutiny. In short:

1. A sign mistake in the original code caused the infinite recursion. Fixed.
2. Some parts of the computation used tail recursion, which limited their applicability in elisp. Changed to use an imperative loop (alas).
3. The binomial coefficients have now been extended for all integral arguments, using definitions from [1]; see also [2] and [3].

[1] M. J. Kronenburg; The Binomial Coefficient for Negative Arguments; https://arxiv.org/abs/1105.3689
[2] D. Loeb, E. Damiani and O. D’Antona; Getting Results with Negative Thinking; https://arxiv.org/abs/math/9502214
[3] David Fowler; The Binomial Coefficient Function; The American Mathematical Monthly, Vol. 103, No. 1 (Jan., 1996), pp. 1-17

0001-Calc-fix-binomial-coefficients-for-negative-argument.patch (9K) Download Attachment