x \cdot \left(x \cdot x\right) + x \cdot x
\mathsf{fma}\left(x, x, {x}^{3}\right)double f(double x) {
double r98403 = x;
double r98404 = r98403 * r98403;
double r98405 = r98403 * r98404;
double r98406 = r98405 + r98404;
return r98406;
}
double f(double x) {
double r98407 = x;
double r98408 = 3.0;
double r98409 = pow(r98407, r98408);
double r98410 = fma(r98407, r98407, r98409);
return r98410;
}




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 2019362 +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)))