If you compute 1+x
for x
less than the machine precision, the answer will be 1
which is the exact result for x = 0
. But this would then imply that the relative backward error is |0 - x| / |x| = 1
, i.e. this method is not backwards stable and no method based on standard floating point arithmetic can ever be.
It feels like this finding must be wrong, because how can what is literally the simplest possible operation not be backwards stable? So where is fault in the above reasoning?