summaryrefslogtreecommitdiff
path: root/TODO
diff options
context:
space:
mode:
authorzimmerma <zimmerma@280ebfd0-de03-0410-8827-d642c229c3f4>2014-03-14 17:21:33 +0000
committerzimmerma <zimmerma@280ebfd0-de03-0410-8827-d642c229c3f4>2014-03-14 17:21:33 +0000
commitf40c04d34e2ceb41946c423e0053ca685ae3c6b8 (patch)
treee89f01f04560ea462a37caced59e10d24a4aa1bd /TODO
parentbcad5da03b6592c64451b7c3f45df06e89246b21 (diff)
downloadmpfr-f40c04d34e2ceb41946c423e0053ca685ae3c6b8.tar.gz
added item (mpfr_log_ui)
git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@9008 280ebfd0-de03-0410-8827-d642c229c3f4
Diffstat (limited to 'TODO')
-rw-r--r--TODO6
1 files changed, 6 insertions, 0 deletions
diff --git a/TODO b/TODO
index 970d8c648..3dc5f90a2 100644
--- a/TODO
+++ b/TODO
@@ -101,6 +101,12 @@ Table of contents:
4. New functions to implement
##############################################################################
+- implement mpfr_log_ui to compute log(n) for an unsigned long n.
+ We can write for argument reduction n = 2^k * n/2^k, where
+ 2/3 <= n/2^k < 4/3, i.e., k = floor(log2(3n))-1, thus
+ log(n) = k*log(2) + log(n/2^k), and we can use binary splitting on the
+ Taylor expansion of log(1+x) to compute log(n/2^k), where at most
+ p*log(2)/log(3) terms are needed for precision p.
- implement mpfr_q_sub, mpfr_z_div, mpfr_q_div?
- implement mpfr_pow_q and variants with two integers (native or mpz)
instead of a rational? See IEEE P1788.