\left(x \cdot x\right) \cdot \left(3 - x \cdot 2\right)
\left(x \cdot x\right) \cdot 3 + \left(-2 \cdot {x}^{3}\right)double f(double x) {
double r840533 = x;
double r840534 = r840533 * r840533;
double r840535 = 3.0;
double r840536 = 2.0;
double r840537 = r840533 * r840536;
double r840538 = r840535 - r840537;
double r840539 = r840534 * r840538;
return r840539;
}
double f(double x) {
double r840540 = x;
double r840541 = r840540 * r840540;
double r840542 = 3.0;
double r840543 = r840541 * r840542;
double r840544 = 2.0;
double r840545 = 3.0;
double r840546 = pow(r840540, r840545);
double r840547 = r840544 * r840546;
double r840548 = -r840547;
double r840549 = r840543 + r840548;
return r840549;
}




Bits error versus x
Results
| Original | 0.2 |
|---|---|
| Target | 0.2 |
| Herbie | 0.1 |
Initial program 0.2
rmApplied sub-neg0.2
Applied distribute-lft-in0.2
Simplified0.1
Final simplification0.1
herbie shell --seed 2020042
(FPCore (x)
:name "Data.Spline.Key:interpolateKeys from smoothie-0.4.0.2"
:precision binary64
:herbie-target
(* x (* x (- 3 (* x 2))))
(* (* x x) (- 3 (* x 2))))