\left(x \cdot x\right) \cdot \left(3 - x \cdot 2\right)
3 \cdot \left(x \cdot x\right) + \left(-2\right) \cdot {x}^{3}double f(double x) {
double r546101 = x;
double r546102 = r546101 * r546101;
double r546103 = 3.0;
double r546104 = 2.0;
double r546105 = r546101 * r546104;
double r546106 = r546103 - r546105;
double r546107 = r546102 * r546106;
return r546107;
}
double f(double x) {
double r546108 = 3.0;
double r546109 = x;
double r546110 = r546109 * r546109;
double r546111 = r546108 * r546110;
double r546112 = 2.0;
double r546113 = -r546112;
double r546114 = 3.0;
double r546115 = pow(r546109, r546114);
double r546116 = r546113 * r546115;
double r546117 = r546111 + r546116;
return r546117;
}




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.2
Simplified0.1
Final simplification0.1
herbie shell --seed 2019212
(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))))