x \cdot \left(x \cdot x\right) + x \cdot x
x \cdot \mathsf{fma}\left(x, x, x\right)double f(double x) {
double r1427931 = x;
double r1427932 = r1427931 * r1427931;
double r1427933 = r1427931 * r1427932;
double r1427934 = r1427933 + r1427932;
return r1427934;
}
double f(double x) {
double r1427935 = x;
double r1427936 = fma(r1427935, r1427935, r1427935);
double r1427937 = r1427935 * r1427936;
return r1427937;
}




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