\frac{x \cdot 100}{x + y}\frac{x}{x + y} \cdot 100double f(double x, double y) {
double r767004 = x;
double r767005 = 100.0;
double r767006 = r767004 * r767005;
double r767007 = y;
double r767008 = r767004 + r767007;
double r767009 = r767006 / r767008;
return r767009;
}
double f(double x, double y) {
double r767010 = x;
double r767011 = y;
double r767012 = r767010 + r767011;
double r767013 = r767010 / r767012;
double r767014 = 100.0;
double r767015 = r767013 * r767014;
return r767015;
}




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 2020062 +o rules:numerics
(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)))