Seja bary uma aproximação para y usando APF de k dígitos, na base 10. Mostre que
|y-baryy| <= 10.1 times 10^-k=10^-k+1
usando truncamento, e
|y-baryy| <= 0.5 times 10^-k+1
usando arredondamento.

Passo 1

O enunciado pede para mostrar cotas de erro relativo ao aproximar um número real y por um número de ponto flutuante de base 10 com k dígitos de precisão, usando primeiro truncamento e depois arredondamento.

Passo 2

Em ponto flutuante normalizado na base 10 com k dígitos escrevemos
y = pm 0d1d2dots dm times 10^n,
onde d1neq0. A aproximação por truncamento retém apenas os k primeiros dígitos do mantissa:
bar y = pm 0d1d2dots dk times 10^n
A parte descartada é
R = pm 0.0dots0 dk+1dk+2dots times 10^n
onde há k zeros após o ponto. Logo
|y-bar y| = |R| < 10^-ktimes 10^n

Passo 3

Como d1neq0, temos
|y| = 0d1d2dots times 10^n >= 0.1 times10^n
Dessa forma, o erro relativo no truncamento satisfaz
|y-bar yy| < 10^-k,10^n0.1,10^n = 10^-k+1

Passo 4

No arredondamento a parte descartada é no máximo metade do passo de ULP (unit in last place), ou seja,
|y-bar y| <= 0.5 times 10^-k times 10^n
Repetindo o mesmo raciocínio para o erro relativo,
|y-bar yy| <= 0.5,10^-k,10^n0.1,10^n = 0.5times10^-k+1

Resposta

Usando truncamento: |y-bar yy| <= 10^-k+1. Usando arredondamento: |y-bar yy| <= 0.5times10^-k+1.

Exercícios relacionados