3 \cdot \left(\left(\left(x \cdot 3\right) \cdot x - x \cdot 4\right) + 1\right)
\mathsf{fma}\left(9, {x}^{2}, 3\right) - 12 \cdot xdouble f(double x) {
double r722687 = 3.0;
double r722688 = x;
double r722689 = r722688 * r722687;
double r722690 = r722689 * r722688;
double r722691 = 4.0;
double r722692 = r722688 * r722691;
double r722693 = r722690 - r722692;
double r722694 = 1.0;
double r722695 = r722693 + r722694;
double r722696 = r722687 * r722695;
return r722696;
}
double f(double x) {
double r722697 = 9.0;
double r722698 = x;
double r722699 = 2.0;
double r722700 = pow(r722698, r722699);
double r722701 = 3.0;
double r722702 = fma(r722697, r722700, r722701);
double r722703 = 12.0;
double r722704 = r722703 * r722698;
double r722705 = r722702 - r722704;
return r722705;
}




Bits error versus x
| Original | 0.1 |
|---|---|
| Target | 0.1 |
| Herbie | 0.1 |
Initial program 0.1
rmApplied distribute-lft-in0.1
Simplified0.1
Simplified0.1
Taylor expanded around 0 0.1
Simplified0.1
Final simplification0.1
herbie shell --seed 2020046 +o rules:numerics
(FPCore (x)
:name "Diagrams.Tangent:$catParam from diagrams-lib-1.3.0.3, D"
:precision binary64
:herbie-target
(+ 3 (- (* (* 9 x) x) (* 12 x)))
(* 3 (+ (- (* (* x 3) x) (* x 4)) 1)))