d \cdot 10 + d \cdot 20
d \cdot \left(10 + 20\right)
double f(double d) {
double r395896 = d;
double r395897 = 10.0;
double r395898 = r395896 * r395897;
double r395899 = 20.0;
double r395900 = r395896 * r395899;
double r395901 = r395898 + r395900;
return r395901;
}
double f(double d) {
double r395902 = d;
double r395903 = 10.0;
double r395904 = 20.0;
double r395905 = r395903 + r395904;
double r395906 = r395902 * r395905;
return r395906;
}




Bits error versus d
Results
| Original | 0.3 |
|---|---|
| Target | 0 |
| Herbie | 0 |
Initial program 0.3
Simplified0
Final simplification0
herbie shell --seed 2020100
(FPCore (d)
:name "FastMath test1"
:precision binary64
:herbie-target
(* d 30)
(+ (* d 10) (* d 20)))