Tente evitar perda de dígitos significantes no cálculo das seguintes funções:
log (1+x)-log (x), para x grande.
Isto é, tente reescrever as funções acima de forma que não haja subtração de dois números quase iguais. Use identidades trigonométricas nos itens (a) e (b).

Passo 1

O enunciado pede para calcular
f(x)=log(1+x)-log(x)
para x grande de modo a evitar a perda de dígitos significativos que ocorre quando subtraímos dois números muito próximos (pois log(1+x)approxlog x quando xgg1). Vamos usar uma identidade algébrica de logaritmos para reescrever f(x) sem essa diferença direta.

Passo 2

Recordando a identidade
log A - log B = logl(tfracABr),
podemos escrever
f(x)=log(1+x)-log(x) =log!l(1+xxr)

Passo 3

Simplificando a fração dentro do logaritmo, obtemos
1+xx=1+1x,
logo
f(x)=log!l(1+tfrac1xr)
Nesta forma já não há subtração de dois números grandes.

Passo 4

Para implementar numericamente de forma estável quando tfrac1x é muito pequeno, recomenda-se usar a função especializada
log1pl(tfrac1xr),
que calcula log(1+y) com boa precisão para yll1.

Resposta

log(1+x)-log(x) =log!l(1+tfrac1xr),
ou em implementações numéricas
f(x)=log1pl(tfrac1xr)

Exercícios relacionados