Well, until around 9 thousand trillion, the floating point representation of the number has enough bits of mantissa to properly represent the least significant digit. Or so it seems, from my tests.
I suppose the autoincrement isn't considered math because of the ability to do $string++.