Next: , Previous: Alignment of poly_ints, Up: poly_int   [Contents][Index]


10.6 Computing bounds on poly_ints

poly_int also provides routines for calculating lower and upper bounds:

constant_lower_bound (a)

Assert that a is nonnegative and return the smallest value it can have.

constant_lower_bound_with_limit (a, b)

Return the least value a can have, given that the context in which a appears guarantees that the answer is no less than b. In other words, the caller is asserting that a is greater than or equal to b even if ‘known_ge (a, b)’ doesn’t hold.

constant_upper_bound_with_limit (a, b)

Return the greatest value a can have, given that the context in which a appears guarantees that the answer is no greater than b. In other words, the caller is asserting that a is less than or equal to b even if ‘known_le (a, b)’ doesn’t hold.

lower_bound (a, b)

Return a value that is always less than or equal to both a and b. It will be the greatest such value for some indeterminate values but necessarily for all.

upper_bound (a, b)

Return a value that is always greater than or equal to both a and b. It will be the least such value for some indeterminate values but necessarily for all.