Bounds checking could have been broken in some cases (models having
negative upper-bounds), apparently Float.MIN_VALUE is almost 0 instead
of -Float.MAX_VALUE