\left(3 \cdot \left(2 - x \cdot 3\right)\right) \cdot x
x \cdot 6 - 9 \cdot \left(x \cdot x\right)
double f(double x) {
double r548202 = 3.0;
double r548203 = 2.0;
double r548204 = x;
double r548205 = r548204 * r548202;
double r548206 = r548203 - r548205;
double r548207 = r548202 * r548206;
double r548208 = r548207 * r548204;
return r548208;
}
double f(double x) {
double r548209 = x;
double r548210 = 6.0;
double r548211 = r548209 * r548210;
double r548212 = 9.0;
double r548213 = r548209 * r548209;
double r548214 = r548212 * r548213;
double r548215 = r548211 - r548214;
return r548215;
}




Bits error versus x
Results
| Original | 0.3 |
|---|---|
| Target | 0.2 |
| Herbie | 0.2 |
Initial program 0.3
Simplified0.3
rmApplied associate-*r*0.3
Simplified0.3
Taylor expanded around 0 0.2
Simplified0.2
Final simplification0.2
herbie shell --seed 2019194
(FPCore (x)
:name "Diagrams.Tangent:$catParam from diagrams-lib-1.3.0.3, E"
:herbie-target
(- (* 6.0 x) (* 9.0 (* x x)))
(* (* 3.0 (- 2.0 (* x 3.0))) x))