d1 \cdot d2 + d1 \cdot d3
d1 \cdot d2 + d3 \cdot d1
double f(double d1, double d2, double d3) {
double r3223272 = d1;
double r3223273 = d2;
double r3223274 = r3223272 * r3223273;
double r3223275 = d3;
double r3223276 = r3223272 * r3223275;
double r3223277 = r3223274 + r3223276;
return r3223277;
}
double f(double d1, double d2, double d3) {
double r3223278 = d1;
double r3223279 = d2;
double r3223280 = r3223278 * r3223279;
double r3223281 = d3;
double r3223282 = r3223281 * r3223278;
double r3223283 = r3223280 + r3223282;
return r3223283;
}




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
Final simplification0.0
herbie shell --seed 2019130
(FPCore (d1 d2 d3)
:name "FastMath dist"
:herbie-target
(* d1 (+ d2 d3))
(+ (* d1 d2) (* d1 d3)))