\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k}\frac{1}{\sqrt{k \cdot \left(10 + k\right) + 1}} \cdot \frac{a}{\frac{\sqrt{k \cdot \left(10 + k\right) + 1}}{{k}^{m}}}double f(double a, double k, double m) {
double r184916 = a;
double r184917 = k;
double r184918 = m;
double r184919 = pow(r184917, r184918);
double r184920 = r184916 * r184919;
double r184921 = 1.0;
double r184922 = 10.0;
double r184923 = r184922 * r184917;
double r184924 = r184921 + r184923;
double r184925 = r184917 * r184917;
double r184926 = r184924 + r184925;
double r184927 = r184920 / r184926;
return r184927;
}
double f(double a, double k, double m) {
double r184928 = 1.0;
double r184929 = k;
double r184930 = 10.0;
double r184931 = r184930 + r184929;
double r184932 = r184929 * r184931;
double r184933 = 1.0;
double r184934 = r184932 + r184933;
double r184935 = sqrt(r184934);
double r184936 = r184928 / r184935;
double r184937 = a;
double r184938 = m;
double r184939 = pow(r184929, r184938);
double r184940 = r184935 / r184939;
double r184941 = r184937 / r184940;
double r184942 = r184936 * r184941;
return r184942;
}



Bits error versus a



Bits error versus k



Bits error versus m
Results
Initial program 2.0
Simplified2.0
rmApplied *-un-lft-identity2.0
Applied unpow-prod-down2.0
Applied add-sqr-sqrt2.1
Applied times-frac2.1
Applied *-un-lft-identity2.1
Applied times-frac2.1
Simplified2.1
Final simplification2.1
herbie shell --seed 2019323
(FPCore (a k m)
:name "Falkner and Boettcher, Appendix A"
:precision binary64
(/ (* a (pow k m)) (+ (+ 1 (* 10 k)) (* k k))))