x \cdot \left(x \cdot x\right) + x \cdot x
x \cdot \mathsf{fma}\left(x, x, x\right)double f(double x) {
double r124360 = x;
double r124361 = r124360 * r124360;
double r124362 = r124360 * r124361;
double r124363 = r124362 + r124361;
return r124363;
}
double f(double x) {
double r124364 = x;
double r124365 = fma(r124364, r124364, r124364);
double r124366 = r124364 * r124365;
return r124366;
}




Bits error versus x
| Original | 0.0 |
|---|---|
| Target | 0.0 |
| Herbie | 0.0 |
Initial program 0.0
Simplified0.0
Final simplification0.0
herbie shell --seed 2019323 +o rules:numerics
(FPCore (x)
:name "Expression 3, p15"
:precision binary64
:pre (<= 0.0 x 2)
:herbie-target
(* (* (+ 1 x) x) x)
(+ (* x (* x x)) (* x x)))