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



Bits error versus r



Bits error versus eps



Bits error versus q



Bits error versus b
Results
Initial program 0.1
Final simplification0.1
herbie shell --seed 2020153
(FPCore (r eps q b)
:name "(- 1 (/ (+ r eps) (+ q (* b eps))))"
:precision binary64
(- 1.0 (/ (+ r eps) (+ q (* b eps)))))