Artifact Content
Not logged in

Artifact 0901c60de39aa2295288944eb45ac604639690a6:

Changes from version 2001 to version 2.0.1:
- new mathematical functions: acos, acosh, asin, asinh, atan, atanh, cosh,
  base-2 exponential and logarithm, base-10 logarithm, expm1, factorial,
  pow, pow_si, pow_ui, sinh, tan, tanh, ui_pow, ui_pow_ui
- other new functions: mpfr_const_euler, mpfr_dim, mpfr_fma, mpfr_hypot,
  mpfr_min, mpfr_max, mpfr_rint, mpfr_set_inf, mpfr_set_nan
- new operations with mpz or mpz: mpfr_{add,sub,mul,div}_[zq]
- new predicates: mpfr_inf_p, mpfr_nan_p, mpfr_number_p, mpfr_isinteger,
- add mechanism to set/check exponent range (overflow, underflow), partially
  implemented in the mpfr functions.
- efficiency: mpfr_div is now faster when the divisor has a few limbs
- rounding: now mpfr_pow implements exact rouding, and most functions return a
  ternary value indicating the position of the returned value wrt the exact one
  (thus the return value is now 'int' instead of 'void')
- complete rewrite of the configuration files
- mpfr_get_d, mpfr_{add,sub}_one_ulp now get a rounding mode as 2nd argument
- some function names did change: mpz_set_fr is now mpfr_get_z_exp,
  mpfr_print_raw is now mpfr_print_binary.

Changes from version 1.0 to version 2001:
- the default installation does not provide any more access to machine 
  rounding mode, and as a consequence does not compare MPFR results with 
  precision=53 to machine results. Add option -DTEST if you want to have
  access to machine rounding mode, and to check MPFR results against.
- the MPFR files do not need <math.h> any more
- the header file <mpfr.h> was split into <mpfr.h> for exported functions
  and <mpfr-impl.h> for internal functions. The user should not use functions
  or macros from <mpfr-impl.h>, since those may change in further releases.
- <mpfr.h> was modified in order to make easy a C++ interface
- MPFR now deals with infinities (+infinity and -infinity) and NaN
- the missing function mpfr_swap is now available
- mpfr_zeta was removed (was incomplete)
- mpfr_init and mpfr_init2 now initialize the corresponding variable to 0
  (like in other initialization functions from GNU MP)
- in case memory allocation fails, an error message is output
- several bugs of version 1.0 were fixed

Changes from version 0.4 to version 1.0:

- Version 1.0 now uses a standard configure/make installation. 
- Version 1.0 implements all functions that are available in the MPF class 
  from GMP 3.1 (except mpf_swap) and a header file mpf2mpfr.h is included in 
  the distribution for easy change from MPF to MPFR. 
- Version 1.0 implements new elementary functions: mpfr_sincos 
- Some functions and macros have been renamed: mpfr_log2 is now 
  mpfr_const_log2, mpfr_pi is now mpfr_const_pi, SIGN is now MPFR_SIGN. 
- Version 1.0 uses faster algorithms for mpfr_exp, mpfr_const_pi, 
  mpfr_const_log2. Compare the timings from version 1.0 and version 0.4. 
- Version 1.0 corrects some bugs of version 0.4. 
- The precision of MPFR variables is now named mpfr_prec, which makes it 
  easier to change it, to say unsigned long long. Same for the rounding mode 
  which is called mp_rnd_t. 

You'll find other news concerning the MPFR library on the web
page <>.