In floating point math, is it always true that (x / y) * y == x, if x and y are exactly representable integers?
I've tried various values of x and y and it seems like it's true, but I'm not sure. If it is true, I'd like to understand why. If it's not true, I'd like to understand for what values it's not true.
I wasn't expecting it to be true because I know that x / y in floating point isn't guaranteed to be exactly equal to x / y using real numbers, so I thought that inaccuracy would be magnified by the multiplication, leading to the calculated result being different from x.