\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k}\begin{array}{l}
\mathbf{if}\;k \le 3.641563002348689 \cdot 10^{+130}:\\
\;\;\;\;\frac{{k}^{m} \cdot a}{1 + k \cdot \left(k + 10\right)}\\
\mathbf{else}:\\
\;\;\;\;\left(\frac{e^{\log k \cdot m}}{k} \cdot \frac{a}{k} + \left(\frac{e^{\log k \cdot m}}{k} \cdot \frac{a}{k \cdot k}\right) \cdot -10\right) + \frac{99 \cdot e^{\log k \cdot m}}{\frac{\left(k \cdot k\right) \cdot \left(k \cdot k\right)}{a}}\\
\end{array}double f(double a, double k, double m) {
double r6375371 = a;
double r6375372 = k;
double r6375373 = m;
double r6375374 = pow(r6375372, r6375373);
double r6375375 = r6375371 * r6375374;
double r6375376 = 1.0;
double r6375377 = 10.0;
double r6375378 = r6375377 * r6375372;
double r6375379 = r6375376 + r6375378;
double r6375380 = r6375372 * r6375372;
double r6375381 = r6375379 + r6375380;
double r6375382 = r6375375 / r6375381;
return r6375382;
}
double f(double a, double k, double m) {
double r6375383 = k;
double r6375384 = 3.641563002348689e+130;
bool r6375385 = r6375383 <= r6375384;
double r6375386 = m;
double r6375387 = pow(r6375383, r6375386);
double r6375388 = a;
double r6375389 = r6375387 * r6375388;
double r6375390 = 1.0;
double r6375391 = 10.0;
double r6375392 = r6375383 + r6375391;
double r6375393 = r6375383 * r6375392;
double r6375394 = r6375390 + r6375393;
double r6375395 = r6375389 / r6375394;
double r6375396 = log(r6375383);
double r6375397 = r6375396 * r6375386;
double r6375398 = exp(r6375397);
double r6375399 = r6375398 / r6375383;
double r6375400 = r6375388 / r6375383;
double r6375401 = r6375399 * r6375400;
double r6375402 = r6375383 * r6375383;
double r6375403 = r6375388 / r6375402;
double r6375404 = r6375399 * r6375403;
double r6375405 = -10.0;
double r6375406 = r6375404 * r6375405;
double r6375407 = r6375401 + r6375406;
double r6375408 = 99.0;
double r6375409 = r6375408 * r6375398;
double r6375410 = r6375402 * r6375402;
double r6375411 = r6375410 / r6375388;
double r6375412 = r6375409 / r6375411;
double r6375413 = r6375407 + r6375412;
double r6375414 = r6375385 ? r6375395 : r6375413;
return r6375414;
}



Bits error versus a



Bits error versus k



Bits error versus m
Results
if k < 3.641563002348689e+130Initial program 0.1
Simplified0.0
if 3.641563002348689e+130 < k Initial program 8.9
Simplified8.9
Taylor expanded around inf 8.9
Simplified0.2
Final simplification0.1
herbie shell --seed 2019143
(FPCore (a k m)
:name "Falkner and Boettcher, Appendix A"
(/ (* a (pow k m)) (+ (+ 1 (* 10 k)) (* k k))))