I was solving an equation using double precision and I got -7.07649e-17
as a solution instead of 0
.
I agree it's close enough that I can say it's equal but I've read that the machine epsilon for the C++ double type is 2^-52
which is larger than the value I get.
So why do I have an inferior value than the machine epsilon? Why isn't the value rounded to zero?
It's not a big deal but when I do a logical test it appears that my value is not zero...