\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k}\begin{array}{l}
\mathbf{if}\;k \le 1.019499051488994452424440699775966803008 \cdot 10^{135}:\\
\;\;\;\;\frac{a}{\frac{\mathsf{fma}\left(k, 10 + k, 1\right)}{{k}^{m}}}\\
\mathbf{else}:\\
\;\;\;\;\frac{1}{\mathsf{fma}\left(\frac{k}{a}, \frac{k}{{\left(\frac{1}{k}\right)}^{\left(-m\right)}}, \mathsf{fma}\left(1, \frac{{k}^{\left(-m\right)}}{a}, \frac{10}{a} \cdot \frac{k}{{\left(\frac{1}{k}\right)}^{\left(-m\right)}}\right)\right)}\\
\end{array}double f(double a, double k, double m) {
double r172168 = a;
double r172169 = k;
double r172170 = m;
double r172171 = pow(r172169, r172170);
double r172172 = r172168 * r172171;
double r172173 = 1.0;
double r172174 = 10.0;
double r172175 = r172174 * r172169;
double r172176 = r172173 + r172175;
double r172177 = r172169 * r172169;
double r172178 = r172176 + r172177;
double r172179 = r172172 / r172178;
return r172179;
}
double f(double a, double k, double m) {
double r172180 = k;
double r172181 = 1.0194990514889945e+135;
bool r172182 = r172180 <= r172181;
double r172183 = a;
double r172184 = 10.0;
double r172185 = r172184 + r172180;
double r172186 = 1.0;
double r172187 = fma(r172180, r172185, r172186);
double r172188 = m;
double r172189 = pow(r172180, r172188);
double r172190 = r172187 / r172189;
double r172191 = r172183 / r172190;
double r172192 = 1.0;
double r172193 = r172180 / r172183;
double r172194 = r172192 / r172180;
double r172195 = -r172188;
double r172196 = pow(r172194, r172195);
double r172197 = r172180 / r172196;
double r172198 = pow(r172180, r172195);
double r172199 = r172198 / r172183;
double r172200 = r172184 / r172183;
double r172201 = r172200 * r172197;
double r172202 = fma(r172186, r172199, r172201);
double r172203 = fma(r172193, r172197, r172202);
double r172204 = r172192 / r172203;
double r172205 = r172182 ? r172191 : r172204;
return r172205;
}



Bits error versus a



Bits error versus k



Bits error versus m
if k < 1.0194990514889945e+135Initial program 0.1
Simplified0.0
if 1.0194990514889945e+135 < k Initial program 9.5
Simplified9.5
rmApplied clear-num9.5
Taylor expanded around inf 9.5
Simplified0.6
Final simplification0.2
herbie shell --seed 2019326 +o rules:numerics
(FPCore (a k m)
:name "Falkner and Boettcher, Appendix A"
:precision binary64
(/ (* a (pow k m)) (+ (+ 1 (* 10 k)) (* k k))))