Real helper lemmas for interval corner bounds #
Several IEEEExec32 interval-soundness modules need the same basic real-analysis fact:
If $x\in[a,b]$ and $y\in[c,d]$, then $xy$ is enclosed by the minimum and maximum of the four corner products $\{ac,ad,bc,bd\}$.
This module keeps the interval arithmetic fact separate from the IEEEExec32 soundness proofs.
Minimum of four real numbers, grouped as min (min a b) (min c d).
Instances For
Maximum of four real numbers, grouped as max (max a b) (max c d).
Instances For
Corner enclosure for real multiplication on intervals.
If $x\in[a,b]$ and $y\in[c,d]$, then $$ \min(ac,ad,bc,bd)\le xy\le\max(ac,ad,bc,bd), $$
where the min/max are represented by minOfFourReal/maxOfFourReal with the same grouping used by the IEEE32Exec
4-corner rule implementations.
Four-corner enclosure for division by a sign-stable interval.
The denominator hypothesis excludes zero. The result follows by enclosing y⁻¹ with
inv_mem_Icc and applying mul_bounds_Icc to x * y⁻¹.