\left(x \cdot x\right) \cdot x
{x}^{3}double f(double x) {
double r5566586 = x;
double r5566587 = r5566586 * r5566586;
double r5566588 = r5566587 * r5566586;
return r5566588;
}
double f(double x) {
double r5566589 = x;
double r5566590 = 3.0;
double r5566591 = pow(r5566589, r5566590);
return r5566591;
}




Bits error versus x
Results
| Original | 0.1 |
|---|---|
| Target | 0 |
| Herbie | 0 |
Initial program 0.1
rmApplied pow10.1
Applied pow10.1
Applied pow10.1
Applied pow-prod-up0.1
Applied pow-prod-up0
Simplified0
Final simplification0
herbie shell --seed 2019172 +o rules:numerics
(FPCore (x)
:name "math.cube on real"
:herbie-target
(pow x 3.0)
(* (* x x) x))