\frac{x \cdot 100}{x + y}\frac{\frac{x}{x + y}}{\frac{1}{100}}double f(double x, double y) {
double r802278 = x;
double r802279 = 100.0;
double r802280 = r802278 * r802279;
double r802281 = y;
double r802282 = r802278 + r802281;
double r802283 = r802280 / r802282;
return r802283;
}
double f(double x, double y) {
double r802284 = x;
double r802285 = y;
double r802286 = r802284 + r802285;
double r802287 = r802284 / r802286;
double r802288 = 1.0;
double r802289 = 100.0;
double r802290 = r802288 / r802289;
double r802291 = r802287 / r802290;
return r802291;
}




Bits error versus x




Bits error versus y
Results
| Original | 0.4 |
|---|---|
| Target | 0.2 |
| Herbie | 0.2 |
Initial program 0.4
rmApplied associate-/l*0.2
rmApplied div-inv0.2
Applied associate-/r*0.2
Final simplification0.2
herbie shell --seed 2020047
(FPCore (x y)
:name "Development.Shake.Progress:message from shake-0.15.5"
:precision binary64
:herbie-target
(* (/ x 1) (/ 100 (+ x y)))
(/ (* x 100) (+ x y)))