\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k}\begin{array}{l}
\mathbf{if}\;k \le 1.442302470468942821043172495313077911614 \cdot 10^{138}:\\
\;\;\;\;\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k}\\
\mathbf{else}:\\
\;\;\;\;\frac{{\left(\frac{1}{k}\right)}^{\left(-m\right)}}{k} \cdot \frac{a}{k} + \left(\left(\frac{a}{{k}^{4}} \cdot {\left(\frac{1}{k}\right)}^{\left(-m\right)}\right) \cdot 99 - \frac{10 \cdot a}{\frac{{k}^{3}}{{\left(\frac{1}{k}\right)}^{\left(-m\right)}}}\right)\\
\end{array}double f(double a, double k, double m) {
double r146780 = a;
double r146781 = k;
double r146782 = m;
double r146783 = pow(r146781, r146782);
double r146784 = r146780 * r146783;
double r146785 = 1.0;
double r146786 = 10.0;
double r146787 = r146786 * r146781;
double r146788 = r146785 + r146787;
double r146789 = r146781 * r146781;
double r146790 = r146788 + r146789;
double r146791 = r146784 / r146790;
return r146791;
}
double f(double a, double k, double m) {
double r146792 = k;
double r146793 = 1.4423024704689428e+138;
bool r146794 = r146792 <= r146793;
double r146795 = a;
double r146796 = m;
double r146797 = pow(r146792, r146796);
double r146798 = r146795 * r146797;
double r146799 = 1.0;
double r146800 = 10.0;
double r146801 = r146800 * r146792;
double r146802 = r146799 + r146801;
double r146803 = r146792 * r146792;
double r146804 = r146802 + r146803;
double r146805 = r146798 / r146804;
double r146806 = 1.0;
double r146807 = r146806 / r146792;
double r146808 = -r146796;
double r146809 = pow(r146807, r146808);
double r146810 = r146809 / r146792;
double r146811 = r146795 / r146792;
double r146812 = r146810 * r146811;
double r146813 = 4.0;
double r146814 = pow(r146792, r146813);
double r146815 = r146795 / r146814;
double r146816 = r146815 * r146809;
double r146817 = 99.0;
double r146818 = r146816 * r146817;
double r146819 = r146800 * r146795;
double r146820 = 3.0;
double r146821 = pow(r146792, r146820);
double r146822 = r146821 / r146809;
double r146823 = r146819 / r146822;
double r146824 = r146818 - r146823;
double r146825 = r146812 + r146824;
double r146826 = r146794 ? r146805 : r146825;
return r146826;
}



Bits error versus a



Bits error versus k



Bits error versus m
Results
if k < 1.4423024704689428e+138Initial program 0.1
if 1.4423024704689428e+138 < k Initial program 8.9
rmApplied add-sqr-sqrt8.9
Applied associate-/r*8.9
Simplified8.9
rmApplied associate-+l+8.9
Simplified8.9
Taylor expanded around inf 8.9
Simplified0.3
Final simplification0.1
herbie shell --seed 2019325
(FPCore (a k m)
:name "Falkner and Boettcher, Appendix A"
:precision binary64
(/ (* a (pow k m)) (+ (+ 1 (* 10 k)) (* k k))))