\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k}\begin{array}{l}
\mathbf{if}\;k \le 105336881957004620240781312:\\
\;\;\;\;\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k}\\
\mathbf{else}:\\
\;\;\;\;\left(\frac{\left(a \cdot e^{\log \left({k}^{m}\right)}\right) \cdot 99}{{k}^{4}} - \frac{a \cdot e^{\log \left({k}^{m}\right)}}{{k}^{3}} \cdot 10\right) + \frac{a}{k} \cdot \frac{e^{\log \left({k}^{m}\right)}}{k}\\
\end{array}double f(double a, double k, double m) {
double r252232 = a;
double r252233 = k;
double r252234 = m;
double r252235 = pow(r252233, r252234);
double r252236 = r252232 * r252235;
double r252237 = 1.0;
double r252238 = 10.0;
double r252239 = r252238 * r252233;
double r252240 = r252237 + r252239;
double r252241 = r252233 * r252233;
double r252242 = r252240 + r252241;
double r252243 = r252236 / r252242;
return r252243;
}
double f(double a, double k, double m) {
double r252244 = k;
double r252245 = 1.0533688195700462e+26;
bool r252246 = r252244 <= r252245;
double r252247 = a;
double r252248 = m;
double r252249 = pow(r252244, r252248);
double r252250 = r252247 * r252249;
double r252251 = 1.0;
double r252252 = 10.0;
double r252253 = r252252 * r252244;
double r252254 = r252251 + r252253;
double r252255 = r252244 * r252244;
double r252256 = r252254 + r252255;
double r252257 = r252250 / r252256;
double r252258 = log(r252249);
double r252259 = exp(r252258);
double r252260 = r252247 * r252259;
double r252261 = 99.0;
double r252262 = r252260 * r252261;
double r252263 = 4.0;
double r252264 = pow(r252244, r252263);
double r252265 = r252262 / r252264;
double r252266 = 3.0;
double r252267 = pow(r252244, r252266);
double r252268 = r252260 / r252267;
double r252269 = r252268 * r252252;
double r252270 = r252265 - r252269;
double r252271 = r252247 / r252244;
double r252272 = r252259 / r252244;
double r252273 = r252271 * r252272;
double r252274 = r252270 + r252273;
double r252275 = r252246 ? r252257 : r252274;
return r252275;
}



Bits error versus a



Bits error versus k



Bits error versus m
Results
if k < 1.0533688195700462e+26Initial program 0.1
if 1.0533688195700462e+26 < k Initial program 5.7
rmApplied clear-num6.0
Simplified5.9
Taylor expanded around inf 5.7
Simplified0.4
Final simplification0.2
herbie shell --seed 2019323
(FPCore (a k m)
:name "Falkner and Boettcher, Appendix A"
:precision binary64
(/ (* a (pow k m)) (+ (+ 1 (* 10 k)) (* k k))))