x \cdot \left(x \cdot x\right) + x \cdot x
\mathsf{fma}\left(x, x, {x}^{3}\right)double f(double x) {
double r76989 = x;
double r76990 = r76989 * r76989;
double r76991 = r76989 * r76990;
double r76992 = r76991 + r76990;
return r76992;
}
double f(double x) {
double r76993 = x;
double r76994 = 3.0;
double r76995 = pow(r76993, r76994);
double r76996 = fma(r76993, r76993, r76995);
return r76996;
}




Bits error versus x
| Original | 0.0 |
|---|---|
| Target | 0.0 |
| Herbie | 0 |
Initial program 0.0
Simplified0
Final simplification0
herbie shell --seed 2019351 +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)))