package mopsa
Install
Dune Dependency
Authors
Maintainers
Sources
md5=9f673f79708b44a7effb3b6bb3618d2c
sha512=cb91cb428e43a22f1abbcb8219710d0c10a5b3756d0da392d4084b3b3a6157350776c596983e63def344f617d39964e91f244f60c07958695ee5c8c809a9f0f4
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).