\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k}\begin{array}{l}
\mathbf{if}\;k \le 1.3601387289399805 \cdot 10^{+100}:\\
\;\;\;\;\frac{{\left(\sqrt[3]{k}\right)}^{m} \cdot \left(a \cdot {\left(\sqrt[3]{k} \cdot \sqrt[3]{k}\right)}^{m}\right)}{\left(10 \cdot k + 1\right) + k \cdot k}\\
\mathbf{else}:\\
\;\;\;\;(\left(\frac{\frac{a}{k}}{k}\right) \cdot \left({\left({\left(\frac{1}{k}\right)}^{\frac{-2}{3}}\right)}^{m} \cdot {\left({\left(\frac{1}{k}\right)}^{\frac{-1}{3}}\right)}^{m}\right) + \left((99 \cdot \left(\frac{a}{\left(k \cdot k\right) \cdot \left(k \cdot k\right)} \cdot \left({\left({\left(\frac{1}{k}\right)}^{\frac{-2}{3}}\right)}^{m} \cdot {\left({\left(\frac{1}{k}\right)}^{\frac{-1}{3}}\right)}^{m}\right)\right) + \left(\frac{\frac{-10 \cdot \left(a \cdot \left({\left({\left(\frac{1}{k}\right)}^{\frac{-2}{3}}\right)}^{m} \cdot {\left({\left(\frac{1}{k}\right)}^{\frac{-1}{3}}\right)}^{m}\right)\right)}{k \cdot k}}{k}\right))_*\right))_*\\
\end{array}double f(double a, double k, double m) {
double r41987039 = a;
double r41987040 = k;
double r41987041 = m;
double r41987042 = pow(r41987040, r41987041);
double r41987043 = r41987039 * r41987042;
double r41987044 = 1.0;
double r41987045 = 10.0;
double r41987046 = r41987045 * r41987040;
double r41987047 = r41987044 + r41987046;
double r41987048 = r41987040 * r41987040;
double r41987049 = r41987047 + r41987048;
double r41987050 = r41987043 / r41987049;
return r41987050;
}
double f(double a, double k, double m) {
double r41987051 = k;
double r41987052 = 1.3601387289399805e+100;
bool r41987053 = r41987051 <= r41987052;
double r41987054 = cbrt(r41987051);
double r41987055 = m;
double r41987056 = pow(r41987054, r41987055);
double r41987057 = a;
double r41987058 = r41987054 * r41987054;
double r41987059 = pow(r41987058, r41987055);
double r41987060 = r41987057 * r41987059;
double r41987061 = r41987056 * r41987060;
double r41987062 = 10.0;
double r41987063 = r41987062 * r41987051;
double r41987064 = 1.0;
double r41987065 = r41987063 + r41987064;
double r41987066 = r41987051 * r41987051;
double r41987067 = r41987065 + r41987066;
double r41987068 = r41987061 / r41987067;
double r41987069 = r41987057 / r41987051;
double r41987070 = r41987069 / r41987051;
double r41987071 = r41987064 / r41987051;
double r41987072 = -0.6666666666666666;
double r41987073 = pow(r41987071, r41987072);
double r41987074 = pow(r41987073, r41987055);
double r41987075 = -0.3333333333333333;
double r41987076 = pow(r41987071, r41987075);
double r41987077 = pow(r41987076, r41987055);
double r41987078 = r41987074 * r41987077;
double r41987079 = 99.0;
double r41987080 = r41987066 * r41987066;
double r41987081 = r41987057 / r41987080;
double r41987082 = r41987081 * r41987078;
double r41987083 = -10.0;
double r41987084 = r41987057 * r41987078;
double r41987085 = r41987083 * r41987084;
double r41987086 = r41987085 / r41987066;
double r41987087 = r41987086 / r41987051;
double r41987088 = fma(r41987079, r41987082, r41987087);
double r41987089 = fma(r41987070, r41987078, r41987088);
double r41987090 = r41987053 ? r41987068 : r41987089;
return r41987090;
}



Bits error versus a



Bits error versus k



Bits error versus m
if k < 1.3601387289399805e+100Initial program 0.1
rmApplied add-cube-cbrt0.1
Applied unpow-prod-down0.1
Applied associate-*r*0.1
if 1.3601387289399805e+100 < k Initial program 7.7
rmApplied add-cube-cbrt7.7
Applied unpow-prod-down7.7
Applied associate-*r*7.7
Taylor expanded around inf 7.7
Simplified0.2
Final simplification0.1
herbie shell --seed 2019104 +o rules:numerics
(FPCore (a k m)
:name "Falkner and Boettcher, Appendix A"
(/ (* a (pow k m)) (+ (+ 1 (* 10 k)) (* k k))))