simon-git: spigot (master): Simon Tatham
Commits to Tartarus CVS repository.
tartarus-commits at lists.tartarus.org
Mon Jan 5 20:22:01 GMT 2015
TL;DR:
1f7d01d Improve the arbitrary limits in pow(rational,rational).
Repository: git://git.tartarus.org/simon/spigot.git
On the web: http://tartarus.org/~simon-git/gitweb/?p=spigot.git
Branch updated: master
Committer: Simon Tatham <anakin at pobox.com>
Date: 2015-01-05 20:22:01
commit 1f7d01d0dadc9a8d0ed66c249991c2db81f851c3
web diff http://tartarus.org/~simon-git/gitweb/?p=spigot.git;a=commitdiff;h=1f7d01d0dadc9a8d0ed66c249991c2db81f851c3;hp=a39752f2785b2d846978cc4ed7d451f89605ba68
Author: Simon Tatham <anakin at pobox.com>
Date: Mon Jan 5 20:14:53 2015 +0000
Improve the arbitrary limits in pow(rational,rational).
I set them simultaneously too low for some cases (raising 2 to a big
power like 10000 should not have to go to exp+log, and likewise
squaring or cubing a mere 40-digit number) and too high for others (by
the time you're evaluating 2^(1/1000) you should have gone over to
exp+log long since because Algebraic gets really slow by then).
So now our limit on the numerator of b also takes the sizes of the
numerator/denominator of a into account, and is entirely separate from
the limit on the _denominator_ of b.
bi_gmp.h | 4 +--
bi_internal.h | 4 +--
exp.cpp | 79 +++++++++++++++++++++++++++++++++------------------------
test.sh | 2 ++
4 files changed, 52 insertions(+), 37 deletions(-)
More information about the tartarus-commits
mailing list