\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k}\begin{array}{l}
\mathbf{if}\;k \le 20048275272.014377593994140625:\\
\;\;\;\;\frac{1}{\frac{\mathsf{fma}\left(k, 10 + k, 1\right)}{a \cdot {k}^{m}}}\\
\mathbf{else}:\\
\;\;\;\;\frac{1}{\mathsf{fma}\left(\frac{10}{{\left(\frac{1}{k}\right)}^{\left(-m\right)}}, \frac{k}{a}, \mathsf{fma}\left(\frac{k}{a}, \frac{k}{{\left(\frac{1}{k}\right)}^{\left(-m\right)}}, \frac{\frac{1}{a}}{{\left(\frac{1}{k}\right)}^{\left(-m\right)}}\right)\right)}\\
\end{array}double f(double a, double k, double m) {
double r218254 = a;
double r218255 = k;
double r218256 = m;
double r218257 = pow(r218255, r218256);
double r218258 = r218254 * r218257;
double r218259 = 1.0;
double r218260 = 10.0;
double r218261 = r218260 * r218255;
double r218262 = r218259 + r218261;
double r218263 = r218255 * r218255;
double r218264 = r218262 + r218263;
double r218265 = r218258 / r218264;
return r218265;
}
double f(double a, double k, double m) {
double r218266 = k;
double r218267 = 20048275272.014378;
bool r218268 = r218266 <= r218267;
double r218269 = 1.0;
double r218270 = 10.0;
double r218271 = r218270 + r218266;
double r218272 = 1.0;
double r218273 = fma(r218266, r218271, r218272);
double r218274 = a;
double r218275 = m;
double r218276 = pow(r218266, r218275);
double r218277 = r218274 * r218276;
double r218278 = r218273 / r218277;
double r218279 = r218269 / r218278;
double r218280 = r218269 / r218266;
double r218281 = -r218275;
double r218282 = pow(r218280, r218281);
double r218283 = r218270 / r218282;
double r218284 = r218266 / r218274;
double r218285 = r218266 / r218282;
double r218286 = r218272 / r218274;
double r218287 = r218286 / r218282;
double r218288 = fma(r218284, r218285, r218287);
double r218289 = fma(r218283, r218284, r218288);
double r218290 = r218269 / r218289;
double r218291 = r218268 ? r218279 : r218290;
return r218291;
}



Bits error versus a



Bits error versus k



Bits error versus m
if k < 20048275272.014378Initial program 0.0
rmApplied clear-num0.1
Simplified0.1
if 20048275272.014378 < k Initial program 5.2
rmApplied clear-num5.5
Simplified5.5
Taylor expanded around inf 5.5
Simplified0.5
Final simplification0.2
herbie shell --seed 2019209 +o rules:numerics
(FPCore (a k m)
:name "Falkner and Boettcher, Appendix A"
:precision binary64
(/ (* a (pow k m)) (+ (+ 1 (* 10 k)) (* k k))))