d \cdot 10 + d \cdot 20
\left(20 + 10\right) \cdot d
double f(double d) {
double r192267 = d;
double r192268 = 10.0;
double r192269 = r192267 * r192268;
double r192270 = 20.0;
double r192271 = r192267 * r192270;
double r192272 = r192269 + r192271;
return r192272;
}
double f(double d) {
double r192273 = 20.0;
double r192274 = 10.0;
double r192275 = r192273 + r192274;
double r192276 = d;
double r192277 = r192275 * r192276;
return r192277;
}




Bits error versus d
Results
| Original | 0.3 |
|---|---|
| Target | 0 |
| Herbie | 0 |
Initial program 0.3
Simplified0
Final simplification0
herbie shell --seed 2019179 +o rules:numerics
(FPCore (d)
:name "FastMath test1"
:herbie-target
(* d 30.0)
(+ (* d 10.0) (* d 20.0)))