\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k}\begin{array}{l}
\mathbf{if}\;k \le 1.304764198775255 \cdot 10^{+145}:\\
\;\;\;\;\frac{{k}^{m} \cdot a}{1 + k \cdot \left(k + 10\right)}\\
\mathbf{else}:\\
\;\;\;\;\left(\frac{a}{k \cdot k} \cdot 99\right) \cdot \frac{e^{m \cdot \log k}}{k \cdot k} + \left(\frac{a}{k} \cdot \frac{e^{m \cdot \log k}}{k} - \frac{a}{k} \cdot \frac{e^{m \cdot \log k} \cdot 10}{k \cdot k}\right)\\
\end{array}double f(double a, double k, double m) {
double r10159489 = a;
double r10159490 = k;
double r10159491 = m;
double r10159492 = pow(r10159490, r10159491);
double r10159493 = r10159489 * r10159492;
double r10159494 = 1.0;
double r10159495 = 10.0;
double r10159496 = r10159495 * r10159490;
double r10159497 = r10159494 + r10159496;
double r10159498 = r10159490 * r10159490;
double r10159499 = r10159497 + r10159498;
double r10159500 = r10159493 / r10159499;
return r10159500;
}
double f(double a, double k, double m) {
double r10159501 = k;
double r10159502 = 1.304764198775255e+145;
bool r10159503 = r10159501 <= r10159502;
double r10159504 = m;
double r10159505 = pow(r10159501, r10159504);
double r10159506 = a;
double r10159507 = r10159505 * r10159506;
double r10159508 = 1.0;
double r10159509 = 10.0;
double r10159510 = r10159501 + r10159509;
double r10159511 = r10159501 * r10159510;
double r10159512 = r10159508 + r10159511;
double r10159513 = r10159507 / r10159512;
double r10159514 = r10159501 * r10159501;
double r10159515 = r10159506 / r10159514;
double r10159516 = 99.0;
double r10159517 = r10159515 * r10159516;
double r10159518 = log(r10159501);
double r10159519 = r10159504 * r10159518;
double r10159520 = exp(r10159519);
double r10159521 = r10159520 / r10159514;
double r10159522 = r10159517 * r10159521;
double r10159523 = r10159506 / r10159501;
double r10159524 = r10159520 / r10159501;
double r10159525 = r10159523 * r10159524;
double r10159526 = r10159520 * r10159509;
double r10159527 = r10159526 / r10159514;
double r10159528 = r10159523 * r10159527;
double r10159529 = r10159525 - r10159528;
double r10159530 = r10159522 + r10159529;
double r10159531 = r10159503 ? r10159513 : r10159530;
return r10159531;
}



Bits error versus a



Bits error versus k



Bits error versus m
Results
if k < 1.304764198775255e+145Initial program 0.1
Simplified0.1
rmApplied *-un-lft-identity0.1
Applied associate-*r*0.1
Simplified0.1
if 1.304764198775255e+145 < k Initial program 10.1
Simplified10.1
Taylor expanded around inf 10.1
Simplified0.1
Final simplification0.1
herbie shell --seed 2019149
(FPCore (a k m)
:name "Falkner and Boettcher, Appendix A"
(/ (* a (pow k m)) (+ (+ 1 (* 10 k)) (* k k))))