\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k}\left(\frac{\frac{1}{\mathsf{fma}\left(k, 10 + k, 1\right)}}{\frac{1}{a}} \cdot {k}^{\left(\frac{m}{2}\right)}\right) \cdot {k}^{\left(\frac{m}{2}\right)}double f(double a, double k, double m) {
double r281855 = a;
double r281856 = k;
double r281857 = m;
double r281858 = pow(r281856, r281857);
double r281859 = r281855 * r281858;
double r281860 = 1.0;
double r281861 = 10.0;
double r281862 = r281861 * r281856;
double r281863 = r281860 + r281862;
double r281864 = r281856 * r281856;
double r281865 = r281863 + r281864;
double r281866 = r281859 / r281865;
return r281866;
}
double f(double a, double k, double m) {
double r281867 = 1.0;
double r281868 = k;
double r281869 = 10.0;
double r281870 = r281869 + r281868;
double r281871 = 1.0;
double r281872 = fma(r281868, r281870, r281871);
double r281873 = r281867 / r281872;
double r281874 = a;
double r281875 = r281867 / r281874;
double r281876 = r281873 / r281875;
double r281877 = m;
double r281878 = 2.0;
double r281879 = r281877 / r281878;
double r281880 = pow(r281868, r281879);
double r281881 = r281876 * r281880;
double r281882 = r281881 * r281880;
return r281882;
}



Bits error versus a



Bits error versus k



Bits error versus m
Initial program 2.0
Simplified2.0
rmApplied sqr-pow2.0
Applied associate-*r*2.0
rmApplied clear-num2.1
rmApplied div-inv2.2
Applied associate-/r*2.1
Final simplification2.1
herbie shell --seed 2020045 +o rules:numerics
(FPCore (a k m)
:name "Falkner and Boettcher, Appendix A"
:precision binary64
(/ (* a (pow k m)) (+ (+ 1 (* 10 k)) (* k k))))