\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k}\begin{array}{l}
\mathbf{if}\;k \le 1.4637587288026368 \cdot 10^{44}:\\
\;\;\;\;\frac{\frac{\left(a \cdot {\left(\sqrt[3]{k} \cdot \sqrt[3]{k}\right)}^{m}\right) \cdot {\left(\sqrt[3]{k}\right)}^{m}}{\sqrt{\left(1 + 10 \cdot k\right) + k \cdot k}}}{\sqrt{\left(1 + 10 \cdot k\right) + k \cdot k}}\\
\mathbf{else}:\\
\;\;\;\;\frac{99 \cdot \left(\left({\left({\left(\frac{1}{k}\right)}^{\frac{-2}{3}}\right)}^{m} \cdot a\right) \cdot {\left({\left(\frac{1}{k}\right)}^{\frac{-1}{3}}\right)}^{m}\right)}{{k}^{4}} + \left(\frac{{\left({\left(\frac{1}{k}\right)}^{\frac{-2}{3}}\right)}^{m} \cdot a}{k} \cdot \frac{{\left({\left(\frac{1}{k}\right)}^{\frac{-1}{3}}\right)}^{m}}{k} - \frac{10 \cdot \left(\left({\left({\left(\frac{1}{k}\right)}^{\frac{-2}{3}}\right)}^{m} \cdot a\right) \cdot {\left({\left(\frac{1}{k}\right)}^{\frac{-1}{3}}\right)}^{m}\right)}{{k}^{3}}\right)\\
\end{array}double code(double a, double k, double m) {
return ((a * pow(k, m)) / ((1.0 + (10.0 * k)) + (k * k)));
}
double code(double a, double k, double m) {
double temp;
if ((k <= 1.4637587288026368e+44)) {
temp = ((((a * pow((cbrt(k) * cbrt(k)), m)) * pow(cbrt(k), m)) / sqrt(((1.0 + (10.0 * k)) + (k * k)))) / sqrt(((1.0 + (10.0 * k)) + (k * k))));
} else {
temp = (((99.0 * ((pow(pow((1.0 / k), -0.6666666666666666), m) * a) * pow(pow((1.0 / k), -0.3333333333333333), m))) / pow(k, 4.0)) + ((((pow(pow((1.0 / k), -0.6666666666666666), m) * a) / k) * (pow(pow((1.0 / k), -0.3333333333333333), m) / k)) - ((10.0 * ((pow(pow((1.0 / k), -0.6666666666666666), m) * a) * pow(pow((1.0 / k), -0.3333333333333333), m))) / pow(k, 3.0))));
}
return temp;
}



Bits error versus a



Bits error versus k



Bits error versus m
Results
if k < 1.4637587288026368e+44Initial program 0.1
rmApplied add-cube-cbrt0.1
Applied unpow-prod-down0.1
Applied associate-*r*0.1
rmApplied add-sqr-sqrt0.2
Applied associate-/r*0.2
if 1.4637587288026368e+44 < k Initial program 6.3
rmApplied add-cube-cbrt6.3
Applied unpow-prod-down6.3
Applied associate-*r*6.3
Taylor expanded around inf 6.3
Simplified0.3
Final simplification0.2
herbie shell --seed 2020060
(FPCore (a k m)
:name "Falkner and Boettcher, Appendix A"
:precision binary64
(/ (* a (pow k m)) (+ (+ 1 (* 10 k)) (* k k))))