Requested-precision guarantees for binary character output #
The integer rounder is independent of the external radix and the binary descriptor. The shared radix laws then give coefficient bounds, fixed points and the numerical interpretation of the emitted characters.
Every output rounding direction fixes a nonnegative integer.
Nearest-even integer output has error at most one half on a nonnegative magnitude.
Nearest-away integer output of a nonnegative magnitude exceeds a natural bound exactly when the magnitude reaches the bound plus one half.
An external magnitude rounder never falls below floor.
An integer upper bound on a magnitude also bounds its rounded coefficient.
Requested decimal output has exactly the requested digit count for nonzero inputs.
Enough decimal digits preserve the exact value, for any binary descriptor and direction.
Decimal precision output parses to the grid-rounded value.
Hexadecimal precision output parses to the complete rounded dyadic, including signed zero.
Decimal output raises inexact exactly when its numerical value changes.
Hexadecimal output raises inexact exactly when its numerical value changes.
At a halfway integer, the common output rounder selects the even neighbor.
The same half-grid error guarantee holds in any external radix greater than one.
Nearest-even decimal output has at most half a requested decimal grid unit of error.
Nearest-even hexadecimal output has at most half a requested hexadecimal grid unit of error.
Requested hexadecimal output has exactly the requested digit count for nonzero input.
Decimal output rounded toward positive infinity is at least the exact input.
Decimal output rounded toward negative infinity is at most the exact input.
Decimal output rounded toward zero cannot increase the magnitude.
Hexadecimal output toward positive infinity is at least the exact input.
Hexadecimal output toward negative infinity is at most the exact input.
Hexadecimal output toward zero cannot increase the magnitude.