A adição em aritmética de ponto flutuante nem sempre é associativa. Prova-se que dados n números x1, x2, cdots, xn representados exatamente, o limte do erro total devido ao erredondamento na soma S=x1+x2+cdots+xn é:
|R AS| <=[(n-1) x1+(n-1) x2+(n-2) x3+cdots+2 xn-1+xn] times 12 times 10^-t+1
Faça n=5 e prove que esta relação é verdadeira.

Passo 1

Beleza! O enunciado pede pra gente pegar cinco números exatos l|error|;<=;l[4x1+4x2+3x3+2x4+1x5r];12,10^-t+1 e somá-los em ponto flutuante, mostrando que o erro de arredondamento final satisfaz
fl(a+b);=;(a+b),l(1+de
O conteúdo usado é o modelo padrão de soma em ponto flutuante:
com . A gente vai somar aos poucos: primeiro , depois juntar , e assim por diante, sempre controlando o erro de cada passo.

Passo 2

Definimos
u = 12,10^-t+1
E chamamos
O erro nesta etapa é
s2 = fl(x1 + x2) = (x1 + x2),(1+de
logo em módulo s2 - (x1+x2) = (x1+x2),de.

Passo 3

Agora somamos s3 = fl(s2 + x3) = l(s2 + x3r),(1+de:
Substituindo s3 = l[(x1+x2)(1+de:
s3 - (x1+x2+x3) = (x1+x2),de
O erro total até aqui é
|s3 - (x1+x2+x3)| <= (x1+x2),u,(1+u) ;+;(x1+x2+x3),u
Em módulo, usando :

Passo 4

Agora junta s4 = fl(s3 + x4) = (s3 + x4),(1+de:
O erro até s4 - (x1+cdots+x4) = (s3 - (x1+cdots+x3)),(1+de é
|s4 - (x1+cdots+x4)| <= |s3 - (x1+cdots+x3)|(1+u) + (x1+cdots+x4),u
Em módulo, com :

Passo 5

Por fim somamos s5 = fl(s4 + x5) = (s4 + x5),(1+de:
Então o erro final
s5 - (x1+cdots+x5) = (s4 - (x1+cdots+x4))(1+de
E em módulo:
|s5 - S| <= |s4 - (x1+cdots+x4)|(1+u) + (x1+cdots+x5),u, onde S=sumi=1^5xi

Passo 6

Agora é só juntar todas essas desigualdades recursivamente. Se desenvolver direitinho e sempre usar |s5 - S| ;<=; l[4x1 + 4x2 + 3x3 + 2x4 + 1x5r];u (válido pra ), sobra:

Resposta

Portanto, para l|R ASr| =l|fl(x1+cdots+x5)-sumi=1^5xir| ;<=;l[4x1+4x2+3x3+2x4+1x5r];12,10^-t+1 obtemos mesmo

Exercícios relacionados