The model's approximations: the correctly rounded reciprocal and square
root (and the reciprocal of the rounded square root) -- NOT the MUFU
unit's results, which are within a few units in the last place of them;
the trigonometric, exponential, logarithmic and tanh approximations are
not modelled (the default NaN). A statement at the model that uses them
is a statement about this choice; the checked paths state theirs for
every choice.
353def modelF32Approximate =
354 (lambda unrestricted operation : Nat . (lambda unrestricted value : Nat .
355 (specSelect (specEqual operation f32ApproximateReciprocal)
356 (modelF32Divide 1065353216 value)
357 (specSelect (specEqual operation f32ApproximateSquareRoot)
358 (modelF32SquareRoot value)
359 (specSelect (specEqual operation f32ApproximateReciprocalSquareRoot)
360 (modelF32Divide 1065353216 (modelF32SquareRoot value))
361 modelDefaultNaN)))))The compiler supplied declaration spans and resolved links from this source snapshot. This page does not assert that this file belongs to a checked closure.