GNU MPFR | |
GNU MPFR | |
Logo Size: | 180px |
Developer: | GNU Project (INRIA and others) |
Latest Release Version: | 4.2.1 |
Programming Language: | C |
Operating System: | Cross-platform |
Genre: | Mathematical software |
License: | LGPL |
The GNU Multiple Precision Floating-Point Reliable Library (GNU MPFR) is a GNU portable C library for arbitrary-precision binary floating-point computation with correct rounding, based on GNU Multi-Precision Library.[1] [2]
MPFR's computation is both efficient and has a well-defined semantics: the functions are completely specified on all the possible operands and the results do not depend on the platform.[3] This is done by copying the ideas from the ANSI/IEEE-754 standard for fixed-precision floating-point arithmetic (correct rounding and exceptions, in particular). More precisely, its main features are:
log1p
and expm1
), the six trigonometric and hyperbolic functions and their inverses, the gamma, zeta and error functions, the arithmetic–geometric mean, the power (xy) function. All those functions are correctly rounded over their complete range.mpfr_subnormalize
function.MPFR is not able to track the accuracy of numbers in a whole program or expression; this is not its goal. Interval arithmetic packages like Arb,[4] MPFI,[5] or Real RAM implementations like iRRAM,[6] which may be based on MPFR, can do that for the user.
MPFR is dependent upon the GNU Multiple Precision Arithmetic Library (GMP).
MPFR is needed to build the GNU Compiler Collection (GCC).[7] Other software uses MPFR, such as ALGLIB, CGAL, FLINT, GNOME Calculator, the Julia language implementation, the Magma computer algebra system, Maple, GNU MPC, and GNU Octave.