Invalid flags for adjacency and number-preferring extrema #
nextUp, nextDown, minimumNumber, and maximumNumber deliver a value without a status. Their
*WithStatus forms add the invalid indicator required for a signaling NaN operand by IEEE 754-2019
(§5.3.1 for the adjacent-value operations, §9.6 for the number-preferring selections). This module
proves that the value is unchanged and that invalid is raised exactly for a signaling operand;
no other indicator is ever set.
The status form of nextUp delivers exactly nextUp.
nextUpWithStatus raises invalid exactly for a signaling NaN input.
nextUpWithStatus raises no indicator other than invalid.
The status form of nextDown delivers exactly nextDown.
nextDownWithStatus raises invalid exactly for a signaling NaN input.
nextDownWithStatus raises no indicator other than invalid.
The status form of minimumNumber delivers exactly minimumNumber.
minimumNumberWithStatus raises invalid exactly when an operand is a signaling NaN.
minimumNumberWithStatus raises no indicator other than invalid.
The status form of maximumNumber delivers exactly maximumNumber.
maximumNumberWithStatus raises invalid exactly when an operand is a signaling NaN.
maximumNumberWithStatus raises no indicator other than invalid.