\frac{x - lo}{hi - lo}\frac{x - lo}{hi - lo}double f(double lo, double hi, double x) {
double r128019 = x;
double r128020 = lo;
double r128021 = r128019 - r128020;
double r128022 = hi;
double r128023 = r128022 - r128020;
double r128024 = r128021 / r128023;
return r128024;
}
double f(double lo, double hi, double x) {
double r128025 = x;
double r128026 = lo;
double r128027 = r128025 - r128026;
double r128028 = hi;
double r128029 = r128028 - r128026;
double r128030 = r128027 / r128029;
return r128030;
}



Bits error versus lo



Bits error versus hi



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