d \cdot 10 + d \cdot 20
d \cdot \left(10 + 20\right)
double f(double d) {
double r163096 = d;
double r163097 = 10.0;
double r163098 = r163096 * r163097;
double r163099 = 20.0;
double r163100 = r163096 * r163099;
double r163101 = r163098 + r163100;
return r163101;
}
double f(double d) {
double r163102 = d;
double r163103 = 10.0;
double r163104 = 20.0;
double r163105 = r163103 + r163104;
double r163106 = r163102 * r163105;
return r163106;
}




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