\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k}\begin{array}{l}
\mathbf{if}\;k \le 1.21824748075500874323673407969583515157 \cdot 10^{154}:\\
\;\;\;\;\frac{{\left(\sqrt[3]{k}\right)}^{m}}{\mathsf{fma}\left(k, k, \mathsf{fma}\left(10, k, 1\right)\right)} \cdot \left(a \cdot {\left(\sqrt[3]{k} \cdot \sqrt[3]{k}\right)}^{m}\right)\\
\mathbf{else}:\\
\;\;\;\;\left(\frac{e^{m \cdot \log k}}{k} \cdot \frac{a}{k}\right) \cdot \left(\frac{99}{k \cdot k} - \frac{10}{k}\right) + \frac{e^{m \cdot \log k}}{k} \cdot \frac{a}{k}\\
\end{array}double f(double a, double k, double m) {
double r9341879 = a;
double r9341880 = k;
double r9341881 = m;
double r9341882 = pow(r9341880, r9341881);
double r9341883 = r9341879 * r9341882;
double r9341884 = 1.0;
double r9341885 = 10.0;
double r9341886 = r9341885 * r9341880;
double r9341887 = r9341884 + r9341886;
double r9341888 = r9341880 * r9341880;
double r9341889 = r9341887 + r9341888;
double r9341890 = r9341883 / r9341889;
return r9341890;
}
double f(double a, double k, double m) {
double r9341891 = k;
double r9341892 = 1.2182474807550087e+154;
bool r9341893 = r9341891 <= r9341892;
double r9341894 = cbrt(r9341891);
double r9341895 = m;
double r9341896 = pow(r9341894, r9341895);
double r9341897 = 10.0;
double r9341898 = 1.0;
double r9341899 = fma(r9341897, r9341891, r9341898);
double r9341900 = fma(r9341891, r9341891, r9341899);
double r9341901 = r9341896 / r9341900;
double r9341902 = a;
double r9341903 = r9341894 * r9341894;
double r9341904 = pow(r9341903, r9341895);
double r9341905 = r9341902 * r9341904;
double r9341906 = r9341901 * r9341905;
double r9341907 = log(r9341891);
double r9341908 = r9341895 * r9341907;
double r9341909 = exp(r9341908);
double r9341910 = r9341909 / r9341891;
double r9341911 = r9341902 / r9341891;
double r9341912 = r9341910 * r9341911;
double r9341913 = 99.0;
double r9341914 = r9341891 * r9341891;
double r9341915 = r9341913 / r9341914;
double r9341916 = r9341897 / r9341891;
double r9341917 = r9341915 - r9341916;
double r9341918 = r9341912 * r9341917;
double r9341919 = r9341918 + r9341912;
double r9341920 = r9341893 ? r9341906 : r9341919;
return r9341920;
}



Bits error versus a



Bits error versus k



Bits error versus m
if k < 1.2182474807550087e+154Initial program 0.1
rmApplied add-cube-cbrt0.1
Applied unpow-prod-down0.1
Applied associate-*r*0.1
rmApplied *-un-lft-identity0.1
Applied times-frac0.1
Simplified0.1
Simplified0.1
if 1.2182474807550087e+154 < k Initial program 10.5
Taylor expanded around -inf 64.0
Simplified0.1
Final simplification0.1
herbie shell --seed 2019169 +o rules:numerics
(FPCore (a k m)
:name "Falkner and Boettcher, Appendix A"
(/ (* a (pow k m)) (+ (+ 1.0 (* 10.0 k)) (* k k))))