1 - \frac{r + a \cdot \varepsilon}{q + \varepsilon}1 - \frac{r + a \cdot \varepsilon}{q + \varepsilon}double code(double r, double a, double eps, double q) {
return ((double) (1.0 - ((double) (((double) (r + ((double) (a * eps)))) / ((double) (q + eps))))));
}
double code(double r, double a, double eps, double q) {
return ((double) (1.0 - ((double) (((double) (r + ((double) (a * eps)))) / ((double) (q + eps))))));
}



Bits error versus r



Bits error versus a



Bits error versus eps



Bits error versus q
Results
Initial program 8.6
Final simplification8.6
herbie shell --seed 2020152
(FPCore (r a eps q)
:name "(- 1 (/ (+ r (* a eps)) (+ q eps)))"
:precision binary64
(- 1.0 (/ (+ r (* a eps)) (+ q eps))))