\frac{x \cdot 100.0}{x + y}\frac{100.0}{x + y} \cdot xdouble f(double x, double y) {
double r35821111 = x;
double r35821112 = 100.0;
double r35821113 = r35821111 * r35821112;
double r35821114 = y;
double r35821115 = r35821111 + r35821114;
double r35821116 = r35821113 / r35821115;
return r35821116;
}
double f(double x, double y) {
double r35821117 = 100.0;
double r35821118 = x;
double r35821119 = y;
double r35821120 = r35821118 + r35821119;
double r35821121 = r35821117 / r35821120;
double r35821122 = r35821121 * r35821118;
return r35821122;
}




Bits error versus x




Bits error versus y
Results
| Original | 0.4 |
|---|---|
| Target | 0.2 |
| Herbie | 0.2 |
Initial program 0.4
rmApplied *-un-lft-identity0.4
Applied times-frac0.2
Simplified0.2
Final simplification0.2
herbie shell --seed 2019165 +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)))