\left(x \cdot x\right) \cdot \left(3 - x \cdot 2\right)
\left(3 - 2 \cdot x\right) \cdot {x}^{2}double f(double x) {
double r588268 = x;
double r588269 = r588268 * r588268;
double r588270 = 3.0;
double r588271 = 2.0;
double r588272 = r588268 * r588271;
double r588273 = r588270 - r588272;
double r588274 = r588269 * r588273;
return r588274;
}
double f(double x) {
double r588275 = 3.0;
double r588276 = 2.0;
double r588277 = x;
double r588278 = r588276 * r588277;
double r588279 = r588275 - r588278;
double r588280 = 2.0;
double r588281 = pow(r588277, r588280);
double r588282 = r588279 * r588281;
return r588282;
}




Bits error versus x
Results
| Original | 0.2 |
|---|---|
| Target | 0.2 |
| Herbie | 0.2 |
Initial program 0.2
Simplified0.2
Taylor expanded around 0 0.1
Simplified0.2
Final simplification0.2
herbie shell --seed 2019194 +o rules:numerics
(FPCore (x)
:name "Data.Spline.Key:interpolateKeys from smoothie-0.4.0.2"
:herbie-target
(* x (* x (- 3.0 (* x 2.0))))
(* (* x x) (- 3.0 (* x 2.0))))