\left(d1 \cdot d2 + \left(d3 + 5\right) \cdot d1\right) + d1 \cdot 32
d1 \cdot \left(32 + \left(d2 + \left(d3 + 5\right)\right)\right)
double f(double d1, double d2, double d3) {
double r237306 = d1;
double r237307 = d2;
double r237308 = r237306 * r237307;
double r237309 = d3;
double r237310 = 5.0;
double r237311 = r237309 + r237310;
double r237312 = r237311 * r237306;
double r237313 = r237308 + r237312;
double r237314 = 32.0;
double r237315 = r237306 * r237314;
double r237316 = r237313 + r237315;
return r237316;
}
double f(double d1, double d2, double d3) {
double r237317 = d1;
double r237318 = 32.0;
double r237319 = d2;
double r237320 = d3;
double r237321 = 5.0;
double r237322 = r237320 + r237321;
double r237323 = r237319 + r237322;
double r237324 = r237318 + r237323;
double r237325 = r237317 * r237324;
return r237325;
}




Bits error versus d1




Bits error versus d2




Bits error versus d3
Results
| Original | 0.0 |
|---|---|
| Target | 0.0 |
| Herbie | 0.0 |
Initial program 0.0
Simplified0.0
Final simplification0.0
herbie shell --seed 2019198
(FPCore (d1 d2 d3)
:name "FastMath dist3"
:herbie-target
(* d1 (+ (+ 37.0 d3) d2))
(+ (+ (* d1 d2) (* (+ d3 5.0) d1)) (* d1 32.0)))