package mopsa
Install
Dune Dependency
Authors
Maintainers
Sources
md5=fdee20e988343751de440b4f6b67c0f4
sha512=f5cbf1328785d3f5ce40155dada2d95e5de5cce4f084ea30cfb04d1ab10cc9403a26cfb3fa55d0f9da72244482130fdb89c286a9aed0d640bba46b7c00e09500
doc/itvUtils/ItvUtils/IntBound/index.html
Module ItvUtils.IntBound
Source
IntBound - Enriches arbitrary precision integers with +∞ and -∞.
Useful as interval bounds.
Types
Internal utilities
Constructors
Conversion with truncation from floats. Handles infinites. Raises an exception on NaNs.
Predicates
Total order. Returns -1 (strictly smaller), 0 (equal), or 1 (strictly greater).
Printing
Operators
Euclidian division. Always defined: 0 / 0 = 0, x / +∞ = 0, x / 0 = sign(x) * ∞
Remainder. rem x y has the sign of x, rem x (-y) = rem x y, and rem x +∞ = x. rem +∞ y and rem x 0 are undefined (invalid argument exception).
Euclidian remainder. erem x y >= 0, rem x y < |b| and a = b * ediv a b + erem a b. rem +∞ y and rem x 0 are undefined (invalid argument exception).
Left bitshift. Undefined if the second argument is negative (invalid argument exception). Returns an infinity if the second argument is too large.
Right bitshift, rounding towards -∞. Undefined if the second argument is negative (invalid argument exception). Returns zero if the second argument is too large.
Right bitshift, rounding towards 0 (truncation). Undefined if the second argument is negative (invalid argument exception). Returns zero if the second argument is too large.
Bitwise operations. Undefined for infinites (invalid argument exception).