#11666: Upgrade MPFR to 3.1.0
--------------------------------+-------------------------------------------
   Reporter:  leif              |          Owner:  leif                         
      
       Type:  enhancement       |         Status:  needs_info                   
      
   Priority:  major             |      Milestone:  sage-5.0                     
      
  Component:  packages          |       Keywords:  sd36 sd32 MPFR spkg wishlist 
sd35.5
Work_issues:  correct doctests  |       Upstream:  N/A                          
      
   Reviewer:  Paul Zimmermann   |         Author:  Mike Hansen, Jean-Pierre 
Flori     
     Merged:                    |   Dependencies:  #12171                       
      
--------------------------------+-------------------------------------------

Old description:

> Our current MPFR spkg is fairly old (based on '''MPFR 2.4.2'''), and
> upgrading it to the latest [stable] upstream release is now on the
> [http://wiki.sagemath.org/days32/wishlist high-priority wishlist].
>
> Use http://perso.telecom-paristech.fr/~flori/sage/mpfr-3.1.0.spkg
>
> ----
> '''MPFR 3.0.1''' was released on April 4th 2011; there are already some
> [http://www.mpfr.org/mpfr-current/allpatches additional upstream patches]
> for that version; see [http://www.mpfr.org/mpfr-current/].
>
> ----
> '''MPFR 3.1.0''' [http://www.mpfr.org/mpfr-3.1.0/ has been released
> October 3rd 2011].
>
> == Changes from versions 3.0.* to version 3.1.0: ==
>  * The MPFR source has been reorganized.
>  * Dropped `ansi2knr` support.
>  * TLS support is now detected automatically. If TLS is supported, MPFR
> is built as thread safe by default. To disable TLS explicitly, configure
> MPFR with `--disable-thread-safe`.
>  * New `--enable-gmp-internals` `configure` option to use GMP's
> undocumented functions (not from the public API). Note that library
> versioning is not guaranteed to work if this option is used.
>  * The `mpfr_urandom()` and `mpfr_urandomb()` functions now return
> identical values on processors with different word size (assuming the
> same random seed, and since the GMP random generator does not depend
> itself on the word size, cf. [http://gmplib.org/list-archives/gmp-
> devel/2010-September/001642.html]).
>  * The `mpfr_add_one_ulp()` and `mpfr_sub_one_ulp()` macros (which are
> obsolete and no more documented) will be removed in a future release.
>  * Speed improvement for the `mpfr_sqr()` and `mpfr_div()` functions
> using Mulders' algorithm. As a consequence, other functions using those
> routines are also faster.
>  * Much faster formatted output (`mpfr_printf()`, etc.) with `%Rg` and
> similar.
>  * The `--with-gmp-build` `configure` option can now be used when the GMP
> source directory and the GMP build directory are different (without
> having to copy header files manually as before).
>  * New functions `mpfr_buildopt_tune_case()`, `mpfr_frexp()`,
> `mpfr_grandom()` and `mpfr_z_sub()`.
>  * New division-by-zero exception (flag) and associated functions.
>  * The `mpfr.h` header can be included several times, while still
> supporting optional functions (see Section "Headers and Libraries" in the
> manual).
>  * Updated tuning parameters.
>  * Improved MPFR manual.
>  * MPFR tests: `libtool` no longer generates wrapper scripts with `make
> check` (so that running the tests under `valgrind` or `gdb` is easier).
>  * Bug fixes.[[BR]] Note: The `mpfr_subnormalize()` implementation up to
> MPFR 3.0.0 did not change the flags. In particular, it did not follow the
> generic rule concerning the inexact flag (and no special behavior was
> specified). The case of the underflow flag was more a lack of
> specification.
>
> Tarballs are available in various formats (regarding the compression
> method); a bzipped one can be found
> [http://www.mpfr.org/mpfr-3.1.0/mpfr-3.1.0.tar.bz2 here] (upstream).

New description:

 Our current MPFR spkg is fairly old (based on '''MPFR 2.4.2'''), and
 upgrading it to the latest [stable] upstream release is now on the
 [http://wiki.sagemath.org/days32/wishlist high-priority wishlist].

 Use http://perso.telecom-paristech.fr/~flori/sage/mpfr-3.1.0.spkg

 Apply:
   * [attachment:trac_11666_remove_random_hack.patch]
   * [attachment:trac_11666_reduce_precision_max.patch]
   * [attachment:trac_11666_fix_random_doctests.patch]

--

Comment(by vbraun):

 I think the easiest solution is to limit the maximal precision in Sage to
 be slightly below 32-bit INT_MAX. The attached patches do that.

-- 
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/11666#comment:57>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica, 
and MATLAB

-- 
You received this message because you are subscribed to the Google Groups 
"sage-trac" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/sage-trac?hl=en.

Reply via email to