\frac{x - lo}{hi - lo}\frac{x - lo}{hi - lo}double f(double lo, double hi, double x) {
double r3804 = x;
double r3805 = lo;
double r3806 = r3804 - r3805;
double r3807 = hi;
double r3808 = r3807 - r3805;
double r3809 = r3806 / r3808;
return r3809;
}
double f(double lo, double hi, double x) {
double r3810 = x;
double r3811 = lo;
double r3812 = r3810 - r3811;
double r3813 = hi;
double r3814 = r3813 - r3811;
double r3815 = r3812 / r3814;
return r3815;
}



Bits error versus lo



Bits error versus hi



Bits error versus x
Results
Initial program 62.0
Final simplification62.0
herbie shell --seed 2020018
(FPCore (lo hi x)
:name "(/ (- x lo) (- hi lo))"
:precision binary64
:pre (and (< lo -1e+308) (> hi 1e+308))
(/ (- x lo) (- hi lo)))