\frac{x \cdot 100}{x + y}\frac{x}{y + x} \cdot 100double f(double x, double y) {
double r32667481 = x;
double r32667482 = 100.0;
double r32667483 = r32667481 * r32667482;
double r32667484 = y;
double r32667485 = r32667481 + r32667484;
double r32667486 = r32667483 / r32667485;
return r32667486;
}
double f(double x, double y) {
double r32667487 = x;
double r32667488 = y;
double r32667489 = r32667488 + r32667487;
double r32667490 = r32667487 / r32667489;
double r32667491 = 100.0;
double r32667492 = r32667490 * r32667491;
return r32667492;
}




Bits error versus x




Bits error versus y
Results
| Original | 0.3 |
|---|---|
| Target | 0.2 |
| Herbie | 0.2 |
Initial program 0.3
rmApplied associate-/l*0.2
rmApplied associate-/r/0.2
Final simplification0.2
herbie shell --seed 2019169 +o rules:numerics
(FPCore (x y)
:name "Development.Shake.Progress:message from shake-0.15.5"
:herbie-target
(* (/ x 1.0) (/ 100.0 (+ x y)))
(/ (* x 100.0) (+ x y)))