int(floor(a))
としたときに、やはり丸め誤差をくらって、
数学的に期待した結果と返り値が1ずれることは想定すべきですか?

例えばa = 1.3だとして、
floor(a) => 0.99999999999999912341
int(floor(a)) => 0
になるような場合が起こってしまうのか、ということです。

実際にはa = 1.3の場合には、自分の環境ではこうなりませんが、
aが他の値のときにこのようなことが起こるかもしれません。