Finite binary32 refinement for proof consumers #
These lemmas transfer FloatLib's real rounding theorems through the configured binary32 codec. The executable operations remain FloatLib operations. The total refinement theorems assume only a finite result and discharge exceptional inputs internally. In particular, division of a finite value by infinity produces signed zero, agreeing with the totalized real interpretation.
Real denotation of FloatLib's signed dyadic representation.
Instances For
A decoded dyadic witnesses that the IEEE value is finite.
Configured subtraction decodes to FloatLib's model subtraction.
Configured division decodes to FloatLib's model division.
Configured nearest-even FMA decodes to the model's single-rounding FMA.
Configured nearest-even square root decodes to the model square root.
The binary32 zero literal denotes real zero.
IEEE maximum agrees with real maximum on finite operands, including signed zeros.
Finite subtraction refines one nearest-even rounding of the real difference.
Finite dyadic rounding refines binary32 rounding of the exact dyadic real value.
Finite division by a decoded nonzero dyadic refines one real rounding.
Finite FMA refines one rounding of the exact product-plus-addend expression.
Finite square-root evaluation excludes negative nonzero inputs and refines real rounding.
Fused multiply-add refinement packaged for total reasoning.
Square-root refinement packaged for total reasoning.
Division refinement packaged for total reasoning.