Articulo de referencia

Error de redondeo

En computación , un error de redondeo , [ 1 ] también llamado error de redondeo , [ 2 ] es la diferencia entre el resultado producido por un algoritmo dado usando aritmética exa...

En computación , un error de redondeo , [ 1 ] también llamado error de redondeo , [ 2 ] es la diferencia entre el resultado producido por un algoritmo dado usando aritmética exacta y el resultado producido por el mismo algoritmo usando aritmética redondeada de precisión finita . [ 3 ] Los errores de redondeo se deben a la inexactitud en la representación de los números reales y las operaciones aritméticas realizadas con ellos. Esta es una forma de error de cuantización . [ 4 ] Cuando se utilizan ecuaciones o algoritmos de aproximación, especialmente cuando se utilizan un número finito de dígitos para representar números reales (que en teoría tienen infinitos dígitos), uno de los objetivos del análisis numérico es estimar los errores de cálculo. [ 5 ] Los errores de cálculo, también llamados errores numéricos , incluyen tanto errores de truncamiento como errores de redondeo.

Cuando se realiza una secuencia de cálculos con una entrada que incluye algún error de redondeo, los errores pueden acumularse, llegando a dominar el cálculo en ocasiones. En problemas mal condicionados , puede acumularse un error significativo. [ 6 ]

En resumen, existen dos facetas principales de los errores de redondeo involucrados en los cálculos numéricos: [ 7 ]

  1. La capacidad de los ordenadores para representar tanto la magnitud como la precisión de los números es inherentemente limitada.
  2. Ciertas manipulaciones numéricas son muy sensibles a los errores de redondeo. Esto puede deberse tanto a consideraciones matemáticas como a la forma en que las computadoras realizan las operaciones aritméticas.

Error de representación

El error que se produce al intentar representar un número mediante una cadena finita de dígitos es una forma de error de redondeo denominada error de representación . [ 8 ] A continuación se muestran algunos ejemplos de errores de representación en representaciones decimales:

Aumentar el número de dígitos permitidos en una representación reduce la magnitud de los posibles errores de redondeo, pero cualquier representación limitada a un número finito de dígitos seguirá causando cierto grado de error de redondeo para una cantidad incontable de números reales. Los dígitos adicionales utilizados para los pasos intermedios de un cálculo se conocen como dígitos de guarda . [ 9 ]

El redondeo múltiple puede provocar la acumulación de errores. [ 10 ] Por ejemplo, si 9,945309 se redondea a dos decimales (9,95) y luego se redondea nuevamente a un decimal (10,0), el error total es 0,054691. Redondear 9,945309 a un decimal (9,9) en un solo paso introduce menos error (0,045309). Esto puede ocurrir, por ejemplo, cuando el software realiza aritmética en punto flotante de 80 bits x86 y luego redondea el resultado a punto flotante IEEE 754 binary64 .

Sistema de numeración de punto flotante

En comparación con el sistema de números de punto fijo , el sistema de números de punto flotante es más eficiente para representar números reales, por lo que se utiliza ampliamente en las computadoras modernas. Mientras que los números realesR{\displaystyle \mathbb {R} }son infinitos y continuos, un sistema de números de punto flotanteF{\displaystyle F}es finito y discreto. Por lo tanto, en el sistema de números de punto flotante se produce un error de representación que da lugar a un error de redondeo.

Notación del sistema de números de punto flotante

Un sistema de números de punto flotanteF{\displaystyle F}se caracteriza por4{\displaystyle 4}números enteros:

  • β{\displaystyle \beta }: base o raíz
  • pag{\displaystyle p}: precisión
  • [L,U]{\displaystyle [L,U]}: rango del exponente, dondeL{\displaystyle L}es el límite inferior yU{\displaystyle U}es el límite superior

CualquierincógnitaF{\displaystyle x\in F}tiene la siguiente forma: incógnita=±(d0.d1d2dpag1significando)β×βmiexponente=±d0×βmi+d1×βmi1++dpag1×βmi(pag1){\displaystyle x=\pm (\underbrace {d_{0}.d_{1}d_{2}\ldots d_{p-1}} _{\text{significando}})_{\beta }\times \beta ^{\overbrace {E} ^{\text{exponente}}}=\pm d_{0}\times \beta ^{E}+d_{1}\times \beta ^{E-1}+\ldots +d_{p-1}\times \beta ^{E-(p-1)}} dóndedi{\displaystyle d_{i}}es un número entero tal que0diβ1{\displaystyle 0\leq d_{i}\leq \beta -1}parai=0,1,,pag1{\displaystyle i=0,1,\ldots ,p-1}, ymi{\displaystyle E}es un número entero tal queLmiU{\displaystyle L\leq E\leq U}.

Sistema de números flotantes normalizado

  • Un sistema de números de punto flotante se normaliza si el dígito principald0{\displaystyle d_{0}}siempre es distinto de cero a menos que el número sea cero. [ 3 ] Dado que la mantisa esd0.d1d2dpag1{\displaystyle d_{0}.d_{1}d_{2}\ldots d_{p-1}}, la mantisa de un número distinto de cero en un sistema normalizado satisface1significando<βpag{\displaystyle 1\leq {\text{significando}}<\beta ^{p}}Por lo tanto, la forma normalizada de un número de punto flotante IEEE distinto de cero es±1.bbb×2mi{\displaystyle \pm 1.bb\ldots b\times 2^{E}}dóndeb0,1{\displaystyle b\in {0,1}}En binario, el dígito principal siempre es1{\displaystyle 1}Por lo tanto, no se escribe y se denomina bit implícito. Esto proporciona un bit adicional de precisión, de modo que se reduce el error de redondeo causado por el error de representación.
  • Desde el sistema de números de punto flotanteF{\displaystyle F}es finito y discreto, no puede representar todos los números reales, lo que significa que los números reales infinitos solo pueden aproximarse mediante algunos números finitos a través de reglas de redondeo . La aproximación de punto flotante de un número real dadoincógnita{\displaystyle x}porFl(incógnita){\displaystyle fl(x)}puede denotarse.
    • El número total de números de punto flotante normalizados es2(β1)βpag1(UL+1)+1,{\displaystyle 2(\beta -1)\beta ^{p-1}(U-L+1)+1,}dónde
      • 2{\displaystyle 2}cuenta la elección del signo, ya sea positivo o negativo
      • (β1){\displaystyle (\beta -1)}cuenta la elección del dígito principal
      • βpag1{\displaystyle \beta ^{p-1}}cuenta los dígitos de la mantisa restantes
      • UL+1{\displaystyle U-L+1}cuenta la elección de exponentes
      • 1{\displaystyle 1}cuenta el caso cuando el número es0{\displaystyle 0}.

estándar IEEE

En el estándar IEEE la base es binaria, es decirβ=2{\displaystyle \beta =2}y se utiliza la normalización. El estándar IEEE almacena el signo, el exponente y la mantisa en campos separados de una palabra de punto flotante, cada uno con un ancho fijo (número de bits). Los dos niveles de precisión más comunes para números de punto flotante son la precisión simple y la precisión doble.

épsilon de máquina

El épsilon de máquina se puede utilizar para medir el nivel de error de redondeo en el sistema de números de punto flotante. Aquí hay dos definiciones diferentes. [ 3 ]

  • El épsilon de la máquina, denotadoϵmach{\displaystyle \epsilon _ {\text{mach}}}, es el máximo error relativo absoluto posible al representar un número real distinto de cero,incógnita{\displaystyle x}en un sistema de números de punto flotante.ϵmach=máximoincógnita|incógnitaFlorida(incógnita)||incógnita|{\displaystyle \epsilon _{\text{mach}}=\max _{x}{\frac {|x-\operatorname {fl} (x)|}{|x|}}}
  • El épsilon de la máquina, denotadoϵmach{\displaystyle \epsilon _ {\text{mach}}}es el número más pequeñoϵ{\displaystyle \epsilon }de tal manera queFlorida(1+ϵ)>1{\displaystyle \operatorname {fl} (1+\epsilon )>1}. De este modo,Florida(1+δ)=Florida(1)=1{\displaystyle \operatorname {fl} (1+\delta )=\operatorname {fl} (1)=1}, cuando sea|δ|<ϵmach.{\displaystyle |\delta |<\epsilon _{\text{mach}}.}

Error de redondeo bajo diferentes reglas de redondeo

Existen dos reglas de redondeo comunes: redondeo por intervalos y redondeo al más cercano. El estándar IEEE utiliza el redondeo al más cercano.

  • Ronda por ronda : La base-β{\displaystyle \beta }expansión deincógnita{\displaystyle x}se trunca después de la(pag1){\displaystyle (p-1)}-ésimo dígito.
    • Esta regla de redondeo es sesgada porque siempre desplaza el resultado hacia cero.
  • Redondear al más cercano :Florida(incógnita){\displaystyle \operatorname {fl} (x)}se establece al número de punto flotante más cercano aincógnita{\displaystyle x}En caso de empate, se utiliza el número de punto flotante cuyo último dígito almacenado sea par (es decir, cuyo último dígito, en formato binario, sea igual a 0).
    • Para el estándar IEEE donde la baseβ{\displaystyle \beta }es2{\displaystyle 2}, esto significa que cuando hay un empate se redondea de manera que el último dígito sea igual a0{\displaystyle 0}.
    • Esta regla de redondeo es más precisa, pero requiere mayor capacidad de cálculo.
    • El redondeo, de forma que el último dígito almacenado sea par en caso de empate, garantiza que no se redondee sistemáticamente hacia arriba o hacia abajo. Esto busca evitar posibles retrasos indeseados en cálculos largos debido a un redondeo sesgado.

El siguiente ejemplo ilustra el nivel de error de redondeo bajo las dos reglas de redondeo. [ 3 ] La regla de redondeo, redondear al más cercano, conduce a un menor error de redondeo en general.

Cálculo del error de redondeo en la norma IEEE

Supongamos que se utiliza el método de redondeo al más cercano y la precisión doble IEEE.

Ejemplo: el número decimal(9.4)10=(1001.0110¯)2{\displaystyle (9.4)_{10}=(1001.{\overline {0110}})_{2}}se puede reorganizar en+1.001011001100110011001100110011001100110011001100110052 bits110×23{\displaystyle +1.\underbrace {0010110011001100110011001100110011001100110011001100} _{\text{52 bits}}110\ldots \times 2^{3}} Dado que el bit 53 a la derecha del punto binario es un 1 y está seguido por otros bits distintos de cero, la regla de redondeo al más cercano requiere redondear hacia arriba, es decir, sumar 1 bit al bit 52. Por lo tanto, la representación de punto flotante normalizada en el estándar IEEE 9.4 es Florida(9.4)=1.0010110011001100110011001100110011001100110011001101×23.{\displaystyle \operatorname {fl} (9.4)=1.0010110011001100110011001100110011001100110011001101\times 2^{3}.}

Ahora, el error de redondeo se puede calcular al representar9.4{\displaystyle 9.4} with fl(9.4){\displaystyle \operatorname {fl} (9.4)}. This representation is derived by discarding the infinite tail 0.1100¯×252×23=0.0110¯×251×23=0.4×248{\displaystyle 0.{\overline {1100}}\times 2^{-52}\times 2^{3}=0.{\overline {0110}}\times 2^{-51}\times 2^{3}=0.4\times 2^{-48}} from the right tail and then added 1×252×23=249{\displaystyle 1\times 2^{-52}\times 2^{3}=2^{-49}} in the rounding step. Then fl(9.4)=9.40.4×248+249=9.4+(0.2)10×249.{\displaystyle \operatorname {fl} (9.4)=9.4-0.4\times 2^{-48}+2^{-49}=9.4+(0.2)_{10}\times 2^{-49}.} Thus, the roundoff error is (0.2×249)10{\displaystyle (0.2\times 2^{-49})_{10}}.

Measuring roundoff error by using machine epsilon

The machine epsilon ϵmach{\displaystyle \epsilon _ {\text{mach}}} can be used to measure the level of roundoff error when using the two rounding rules above. Below are the formulas and corresponding proof.[3] The first definition of machine epsilon is used here.

Theorem

  1. Round-by-chop: ϵmach=β1p{\displaystyle \epsilon _{\text{mach}}=\beta ^{1-p}}
  2. Round-to-nearest: ϵmach=12β1p{\displaystyle \epsilon _{\text{mach}}={\frac {1}{2}}\beta ^{1-p}}

Proof

Let x=d0.d1d2dp1dp×βnR{\displaystyle x=d_{0}.d_{1}d_{2}\ldots d_{p-1}d_{p}\ldots \times \beta ^{n}\in \mathbb {R} } where n[L,U]{\displaystyle n\in [L,U]}, and let fl(x){\displaystyle \operatorname {fl} (x)} be the floating-point representation of x{\displaystyle x}. Since round-by-chop is being used, it is |xfl(x)||x|=|d0.d1d2dp1dpdp+1×βnd0.d1d2dp1×βn||d0.d1d2×βn|=|dp.dp+1×βnp||d0.d1d2×βn|=|dp.dp+1dp+2||d0.d1d2|×βp{\displaystyle {\begin{aligned}{\frac {|x-\operatorname {fl} (x)|}{|x|}}&={\frac {|d_{0}.d_{1}d_{2}\ldots d_{p-1}d_{p}d_{p+1}\ldots \times \beta ^{n}-d_{0}.d_{1}d_{2}\ldots d_{p-1}\times \beta ^{n}|}{|d_{0}.d_{1}d_{2}\ldots \times \beta ^{n}|}}\\&={\frac {|d_{p}.d_{p+1}\ldots \times \beta ^{n-p}|}{|d_{0}.d_{1}d_{2}\ldots \times \beta ^{n}|}}\\&={\frac {|d_{p}.d_{p+1}d_{p+2}\ldots |}{|d_{0}.d_{1}d_{2}\ldots |}}\times \beta ^{-p}\end{aligned}}} In order to determine the maximum of this quantity, there is a need to find the maximum of the numerator and the minimum of the denominator. Since d00{\displaystyle d_{0}\neq 0} (normalized system), the minimum value of the denominator is 1{\displaystyle 1}. The numerator is bounded above by (β1).(β1)(β1)¯=β{\displaystyle (\beta -1).(\beta -1){\overline {(\beta -1)}}=\beta }. Thus, |xfl(x)||x|β1×βp=β1p.{\displaystyle {\frac {|x-fl(x)|}{|x|}}\leq {\frac {\beta }{1}}\times \beta ^{-p}=\beta ^{1-p}.} Therefore, ϵ=β1p{\displaystyle \epsilon =\beta ^{1-p}} for round-by-chop. The proof for round-to-nearest is similar.

  • Note that the first definition of machine epsilon is not quite equivalent to the second definition when using the round-to-nearest rule but it is equivalent for round-by-chop.

Roundoff error caused by floating-point arithmetic

Even if some numbers can be represented exactly by floating-point numbers and such numbers are called machine numbers, performing floating-point arithmetic may lead to roundoff error in the final result.

Addition

Machine addition consists of lining up the decimal points of the two numbers to be added, adding them, and then storing the result again as a floating-point number. The addition itself can be done in higher precision but the result must be rounded back to the specified precision, which may lead to roundoff error.[3]

  • For example, adding 1{\displaystyle 1} to 253{\displaystyle 2^{-53}} in IEEE double precision as follows,1.000×20+1.000×253=1.00052 bits×20+0.00052 bits1×20=1.00052 bits1×20.{\displaystyle {\begin{aligned}1.00\ldots 0\times 2^{0}+1.00\ldots 0\times 2^{-53}&=1.\underbrace {00\ldots 0} _{\text{52 bits}}\times 2^{0}+0.\underbrace {00\ldots 0} _{\text{52 bits}}1\times 2^{0}\\&=1.\underbrace {00\ldots 0} _{\text{52 bits}}1\times 2^{0}.\end{aligned}}}This is saved as 1.00052 bits×20{\displaystyle 1.\underbrace {00\ldots 0} _{\text{52 bits}}\times 2^{0}} since round-to-nearest is used in IEEE standard. Therefore, 1+253{\displaystyle 1+2^{-53}} is equal to 1{\displaystyle 1} in IEEE double precision and the roundoff error is 253{\displaystyle 2^{-53}}.

This example shows that roundoff error can be introduced when adding a large number and a small number. The shifting of the decimal points in the significands to make the exponents match causes the loss of some of the less significant digits. The loss of precision may be described as absorption.[11]

Note that the addition of two floating-point numbers can produce roundoff error when their sum is an order of magnitude greater than that of the larger of the two.

  • For example, consider a normalized floating-point number system with base 10{\displaystyle 10} and precision 2{\displaystyle 2}. Then fl(62)=6.2×101{\displaystyle fl(62)=6.2\times 10^{1}} and fl(41)=4.1×101{\displaystyle fl(41)=4.1\times 10^{1}}. Note that 62+41=103{\displaystyle 62+41=103} but fl(103)=1.0×102{\displaystyle fl(103)=1.0\times 10^{2}}. There is a roundoff error of 103fl(103)=3{\displaystyle 103-fl(103)=3}.

This kind of error can occur alongside an absorption error in a single operation.

Multiplication

En general, el producto de dos mantisas de p dígitos contiene hasta 2p dígitos, por lo que el resultado podría no caber en la mantisa. [ 3 ] Por lo tanto, el resultado estará sujeto a un error de redondeo.

  • Por ejemplo, consideremos un sistema de números de punto flotante normalizado con la baseβ=10{\displaystyle \beta =10}y los dígitos de la mantisa son como máximo2{\displaystyle 2}. EntoncesFl(77)=7.7×101{\displaystyle fl(77)=7.7\times 10^{1}}yFl(88)=8.8×101{\displaystyle fl(88)=8.8\times 10^{1}}. Tenga en cuenta que77×88=6776{\displaystyle 77\times 88=6776}peroFl(6776)=6.7×103{\displaystyle fl(6776)=6.7\times 10^{3}}ya que allí como máximo2{\displaystyle 2}dígitos de la mantisa. El error de redondeo sería6776Fl(6776)=67766.7×103=76{\displaystyle 6776-fl(6776)=6776-6.7\times 10^{3}=76}.

División

En general, el cociente de mantisas de 2p dígitos puede contener más de p dígitos. Por lo tanto, el resultado incluirá un error de redondeo.

  • Por ejemplo, si todavía se utiliza el sistema de números de punto flotante normalizado mencionado anteriormente, entonces1/3=0,333{\displaystyle 1/3=0.333\ldots }peroFl(1/3)=Fl(0,333)=3.3×101{\displaystyle fl(1/3)=fl(0.333\ldots )=3.3\times 10^{-1}}. Entonces, la cola0,3333.3×101=0,00333{\displaystyle 0.333\ldots -3.3\times 10^{-1}=0.00333\ldots }está cortado.

Sustracción

La absorción también se aplica a la resta.

  • Por ejemplo, restar260{\displaystyle 2^{-60}}de1{\displaystyle 1}en precisión doble IEEE de la siguiente manera:1.000×201.000×260=1.00060 bits×200.000160 bits×20=0,11160 bits×20.{\displaystyle {\begin{aligned}1.00\ldots 0\times 2^{0}-1.00\ldots 0\times 2^{-60}&=\underbrace {1.00\ldots 0} _{\text{60 bits}}\times 2^{0}-\underbrace {0.00\ldots 01} _{\text{60 bits}}\times 2^{0}\\&=\underbrace {0.11\ldots 1} _{\text{60 bits}}\times 2^{0}.\end{aligned}}}Esto se guarda como1.00053 bits×20{\displaystyle \underbrace {1.00\ldots 0} _{\text{53 bits}}\times 2^{0}}ya que el redondeo al más cercano se utiliza en el estándar IEEE. Por lo tanto,1260{\displaystyle 1-2^{-60}}es igual a1{\displaystyle 1}en precisión doble IEEE y el error de redondeo es260{\displaystyle -2^{-60}}.

La resta de dos números casi iguales se llama cancelación sustractiva . [ 3 ] Cuando se cancelan los dígitos principales, el resultado puede ser demasiado pequeño para ser representado exactamente y simplemente se representará como0{\displaystyle 0}.

  • Por ejemplo, dejemos|ϵ|<ϵmach{\displaystyle |\epsilon |<\epsilon _{\text{mach}}}y aquí se utiliza la segunda definición de épsilon de máquina. ¿Cuál es la solución a(1+ϵ)(1ϵ){\displaystyle (1+\epsilon )-(1-\epsilon )}¿ Se sabe que?1+ϵ{\displaystyle 1+\epsilon }y1ϵ{\displaystyle 1-\epsilon }son números casi iguales, y(1+ϵ)(1ϵ)=1+ϵ1+ϵ=2ϵ{\displaystyle (1+\epsilon )-(1-\epsilon )=1+\epsilon -1+\epsilon =2\epsilon }Sin embargo, en el sistema de números de punto flotante,Fl((1+ϵ)(1ϵ))=Fl(1+ϵ)Fl(1ϵ)=11=0{\displaystyle fl((1+\epsilon )-(1-\epsilon ))=fl(1+\epsilon )-fl(1-\epsilon )=1-1=0}. A pesar de2ϵ{\displaystyle 2\epsilon }es fácilmente lo suficientemente grande como para ser representado, ambos casos deϵ{\displaystyle \epsilon }han sido redondeados dando0{\displaystyle 0}.

Incluso con un tamaño algo mayorϵ{\displaystyle \epsilon }El resultado sigue siendo significativamente poco fiable en casos típicos. No hay mucha confianza en la exactitud del valor porque la mayor incertidumbre en cualquier número de coma flotante se encuentra en los dígitos del extremo derecho.

  • Por ejemplo,1.99999×1021.99998×102=0,00001×102=1×105×102=1×103{\displaystyle 1.99999\times 10^{2}-1.99998\times 10^{2}=0.00001\times 10^{2}=1\times 10^{-5}\times 10^{2}=1\times 10^{-3}}El resultado1×103{\displaystyle 1\times 10^{-3}}Es claramente representable, pero no hay mucha confianza en ello.

Esto está estrechamente relacionado con el fenómeno de la cancelación catastrófica , en el que se sabe que los dos números son aproximaciones.

Acumulación de errores de redondeo

Los errores pueden magnificarse o acumularse cuando se aplica una secuencia de cálculos a una entrada inicial con errores de redondeo debido a una representación inexacta.

Algoritmos inestables

Un algoritmo o proceso numérico se denomina estable si pequeños cambios en la entrada solo producen pequeños cambios en la salida, e inestable si se producen grandes cambios en la salida. [ 12 ] Por ejemplo, el cálculo deF(incógnita)=1+incógnita1{\displaystyle f(x)={\sqrt {1+x}}-1}El uso del método "obvio" es inestable cercaincógnita=0{\displaystyle x=0}debido al gran error introducido al restar dos cantidades similares, mientras que la expresión equivalenteF(incógnita)=incógnita1+incógnita+1{\displaystyle \textstyle {f(x)={\frac {x}{{\sqrt {1+x}}+1}}}}es estable. [ 12 ]

Problemas mal condicionados

Aunque se utilice un algoritmo estable, la solución a un problema puede seguir siendo imprecisa debido a la acumulación de errores de redondeo cuando el problema en sí está mal condicionado .

El número de condición de un problema es la razón entre el cambio relativo en la solución y el cambio relativo en la entrada. [ 3 ] Un problema está bien condicionado si pequeños cambios relativos en la entrada resultan en pequeños cambios relativos en la solución. De lo contrario, el problema está mal condicionado . [ 3 ] En otras palabras, un problema está mal condicionado si su número de condición es "mucho mayor" que 1.

El número de condición se introduce como una medida de los errores de redondeo que pueden resultar al resolver problemas mal condicionados. [ 7 ]

Véase también

Referencias

  1. Butt, Rizwan (2009), Introducción al análisis numérico con MATLAB , Jones & Bartlett Learning, pp. 11–18 , ISBN  978-0-76377376-2
  2. ^ Ueberhuber, Christoph W. (1997), Computación numérica 1: métodos, software y análisis , Springer, págs. 139-146 , ISBN  978-3-54062058-7
  3. 1 2 3 4 5 6 7 8 9 10 Forrester, Dick (2018). Métodos numéricos de matemáticas/computación 241 (apuntes de clase) . Dickinson College .
  4. Aksoy, Pelin; DeNardis, Laura (2007), Information Technology in Theory , Cengage Learning, p. 134, ISBN  978-1-42390140-2
  5. Ralston, Anthony; Rabinowitz, Philip (2012), A First Course in Numerical Analysis , Dover Books on Mathematics (2.ª ed.), Courier Dover Publications, pp. 2–4 , ISBN   978-0-48614029-2
  6. Chapman, Stephen (2012), MATLAB Programming with Applications for Engineers , Cengage Learning, p. 454, ISBN  978-1-28540279-6
  7. 1 2 Chapra, Steven (2012). Métodos numéricos aplicados con MATLAB para ingenieros y científicos (3.ª ed.). McGraw-Hill . ISBN  9780073401102.
  8. Laplante, Philip A. (2000). Diccionario de informática, ingeniería y tecnología . CRC Press . pág. 420. ISBN  978-0-84932691-2.
  9. Higham, Nicholas John (2002). Precisión y estabilidad de los algoritmos numéricos (2.ª ed.). Sociedad de Matemáticas Industriales y Aplicadas (SIAM). págs. 43–44 . ISBN   978-0-89871521-7.
  10. Volkov, EA (1990). Métodos numéricos . Taylor & Francis . pág. 24. ISBN  978-1-56032011-1.
  11. Biran, Adrian B.; Breiner, Moshe (2010). "5". Lo que todo ingeniero debería saber sobre MATLAB y Simulink . Boca Raton , Florida : CRC Press . págs. 193–194 . ISBN  978-1-4398-1023-1.
  12. 1 2 Collins, Charles (2005). "Condición y estabilidad" (PDF) . Departamento de Matemáticas de la Universidad de Tennessee . Recuperado el 28 de octubre de 2018 .

Lecturas adicionales

  • Matt Parker (2021). Humble Pi: Cuando las matemáticas fallan en el mundo real . Riverhead Books. ISBN 978-0593084694.
  • Error de redondeo en MathWorld.
  • Goldberg, David (marzo de 1991). "Lo que todo científico informático debería saber sobre la aritmética de punto flotante" (PDF) . ACM Computing Surveys . 23 (1): 5– 48. doi : 10.1145/103162.103163 . S2CID 222008826. Recuperado el 20 de enero de 2016 . (,)
  • 20 desastres de software famosos
  • Calculadora de redondeo
Obtenido de " https://en.wikipedia.org/w/index.php?title=Round-off_error&oldid=1353065956 "