La biblioteca fiable de coma flotant de precisió múltiple de GNU (GNU MPFR) és una biblioteca C portàtil de GNU per al càlcul binari de coma flotant de precisió arbitrària amb un arrodoniment correcte, basada en la biblioteca GNU Multi-Precision.

Biblioteca El càlcul de MPFR és alhora eficient i té una semàntica ben definida: les funcions estan completament especificades en tots els operands possibles i els resultats no depenen de la plataforma. Això es fa copiant les idees de l'estàndard ANSI/IEEE-754 per a l'aritmètica de coma flotant de precisió fixa (arrodoniment correcte i excepcions, en particular). Més concretament, les seves característiques principals són:

Suport per a nombres especials: zeros amb signe (+0 i -0), infinits i no-un nombre (s'admet un únic NaN: MPFR no diferencia entre NaNs tranquils i NaNs de senyalització). Cada nombre té la seva pròpia precisió (en bits ja que MPFR utilitza la base 2). Els resultats de coma flotant s'arrodoneixen correctament a la precisió de la variable objectiu, en un dels cinc modes d'arrodoniment admesos (inclosos els quatre de IEEE 754-1985). Funcions suportades: MPFR implementa totes les funcions matemàtiques de C99 i altres funcions matemàtiques habituals: el logaritme i l'exponencial en base natural, base 2 i base 10, les funcions log(1+x) i exp(x)−1 (log1p i expm1), les sis funcions trigonomètriques i hiperbòliques i les seves inverses, les funcions gamma, zeta i d'error, la mitjana aritmètica-geomètrica, la funció de potència (xy). Totes aquestes funcions s'arrodonien correctament en el seu rang complet. Els números subnormals no són compatibles, però es poden emular amb la funció mpfr_subnormalize.

MPFR no és capaç de fer un seguiment de la precisió dels números en un programa o expressió sencer; aquest no és el seu objectiu. Paquets aritmètics d'interval com Arb, MPFI, o implementacions de Real RAM com iRRAM, que es poden basar en MPFR, poden fer-ho per a l'usuari.

MPFR depèn de la biblioteca d'aritmètica de precisió múltiple (GMP) de GNU.

Es necessita MPFR per construir la col·lecció de compiladors GNU (GCC). Un altre programari utilitza MPFR, com ALGLIB, CGAL, FLINT, GNOME Calculator, la implementació del llenguatge Julia, el sistema d'àlgebra informàtica Magma, Maple, GNU MPC i GNU Octave.

Referències

Categoria:Biblioteques de programari Categoria:Llenguatge de programació C