Open
Description
For simple operations (e.g. +
, *
, -
) we do modular arithmetic and do not warn on overflow.
For complex operations, we sometimes check for intermediate overflow (lcm
, getindex
, binomial
) and sometimes do not, (isapprox
, lcm
)
I'd like a clear, documented, policy of when we let overflow happen, when we throw, and when we make sure to avoid it with widen or similar.
The first step is to come up with the policy. Current documentation is quite limited. Ideas?