[Python-modules-team] Bug#530381: Bug#530381: python-mpmath: strangely high accuracy in computing pi

Sandro Tosi morph at debian.org
Mon May 25 10:02:43 UTC 2009


forwarded 530381 http://code.google.com/p/mpmath/issues/detail?id=148
thanks

Hi Sanjoy,
Thanks for the report; I've forwarded it upstream so they can have a look at it.

On Sun, May 24, 2009 at 16:23, Sanjoy Mahajan <sanjoy at mit.edu> wrote:
> Package: python-mpmath
> Version: 0.11-2
> Severity: normal
>
> The following Python code uses mpmath to implement Salamin's algorithm
> for computing pi (using arithmetic and geometric means).  The number
> of digits of accuracy should roughly double with each iteration, and
> it does so if mp.dps=1000 (the number of digits is printed at the end
> of each swing through the loop).
>
> However, if mp.dps=4000, then the number of digits doubles for a few
> iterations, then goes to infinity:
>
>    3.0
>    8.1
>   18.7
>   40.3
>   83.6
>    inf
>    inf
>    inf
>
> Somehow the estimate became exactly equal to pi.  It seems strange to
> me and I wonder if it's a bug in one of the math functions like sqrt
> or whether it's a feature.  Or perhaps mpmath computes pi using the
> same algorithm?
>
>
> from mpmath import *
>
> mp.dps = 4000
>
> # a sequence is successive arithmetic means;
> # g sequence is successive geometric means
> a, b = 1, sqrt(0.5)
> n = 1
> sum = 0
> factor = 2
> while n < mp.dps-10:
>    n = -log(a*a-b*b)/log(10)
>    a,b = (a+b)/2, sqrt(a*b)
>    factor *= 2
>    sum += factor * (a*a-b*b)
>    M = (a+b)/2
>    estimate = 4*M*M/(1-sum)
>    digits = -log(abs(estimate-pi))/log(10)
>    print "%7.1f" % digits
>
>
> -- System Information:
> Debian Release: squeeze/sid
>  APT prefers unstable
>  APT policy: (500, 'unstable'), (1, 'experimental')
> Architecture: i386 (i686)
>
> Kernel: Linux 2.6.29-2-686 (SMP w/2 CPU cores)
> Locale: LANG=en_US.utf8, LC_CTYPE=en_US.utf8 (charmap=UTF-8)
> Shell: /bin/sh linked to /bin/bash
>
> Versions of packages python-mpmath depends on:
> ii  python-support                1.0.3      automated rebuilding support for P
>
> python-mpmath recommends no packages.
>
> Versions of packages python-mpmath suggests:
> ii  python-gmpy                   1.03.ds-1  Interfaces GMP to Python for fast,
> ii  python-matplotlib             0.98.3-5   Python based plotting system in a
> ii  python-mpmath-doc             0.11-2     library for arbitrary-precision fl
>
> -- no debconf information
>
>
>
> _______________________________________________
> Python-modules-team mailing list
> Python-modules-team at lists.alioth.debian.org
> http://lists.alioth.debian.org/mailman/listinfo/python-modules-team
>



-- 
Sandro Tosi (aka morph, morpheus, matrixhasu)
My website: http://matrixhasu.altervista.org/
Me at Debian: http://wiki.debian.org/SandroTosi





More information about the Python-modules-team mailing list