\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k}\begin{array}{l}
\mathbf{if}\;k \le 73317554942727741440:\\
\;\;\;\;\frac{a}{\frac{1 + \left(k + 10\right) \cdot k}{{k}^{m}}}\\
\mathbf{else}:\\
\;\;\;\;\left(\frac{a}{k} \cdot \frac{e^{\log k \cdot m}}{k} + \frac{e^{\log k \cdot m}}{\frac{\left(k \cdot k\right) \cdot \left(k \cdot k\right)}{a}} \cdot 99\right) - \frac{10 \cdot e^{\log k \cdot m}}{\frac{k \cdot \left(k \cdot k\right)}{a}}\\
\end{array}double f(double a, double k, double m) {
double r10684690 = a;
double r10684691 = k;
double r10684692 = m;
double r10684693 = pow(r10684691, r10684692);
double r10684694 = r10684690 * r10684693;
double r10684695 = 1.0;
double r10684696 = 10.0;
double r10684697 = r10684696 * r10684691;
double r10684698 = r10684695 + r10684697;
double r10684699 = r10684691 * r10684691;
double r10684700 = r10684698 + r10684699;
double r10684701 = r10684694 / r10684700;
return r10684701;
}
double f(double a, double k, double m) {
double r10684702 = k;
double r10684703 = 7.331755494272774e+19;
bool r10684704 = r10684702 <= r10684703;
double r10684705 = a;
double r10684706 = 1.0;
double r10684707 = 10.0;
double r10684708 = r10684702 + r10684707;
double r10684709 = r10684708 * r10684702;
double r10684710 = r10684706 + r10684709;
double r10684711 = m;
double r10684712 = pow(r10684702, r10684711);
double r10684713 = r10684710 / r10684712;
double r10684714 = r10684705 / r10684713;
double r10684715 = r10684705 / r10684702;
double r10684716 = log(r10684702);
double r10684717 = r10684716 * r10684711;
double r10684718 = exp(r10684717);
double r10684719 = r10684718 / r10684702;
double r10684720 = r10684715 * r10684719;
double r10684721 = r10684702 * r10684702;
double r10684722 = r10684721 * r10684721;
double r10684723 = r10684722 / r10684705;
double r10684724 = r10684718 / r10684723;
double r10684725 = 99.0;
double r10684726 = r10684724 * r10684725;
double r10684727 = r10684720 + r10684726;
double r10684728 = r10684707 * r10684718;
double r10684729 = r10684702 * r10684721;
double r10684730 = r10684729 / r10684705;
double r10684731 = r10684728 / r10684730;
double r10684732 = r10684727 - r10684731;
double r10684733 = r10684704 ? r10684714 : r10684732;
return r10684733;
}



Bits error versus a



Bits error versus k



Bits error versus m
Results
if k < 7.331755494272774e+19Initial program 0.1
Simplified0.0
if 7.331755494272774e+19 < k Initial program 5.7
Simplified5.7
Taylor expanded around inf 5.7
Simplified0.1
Final simplification0.1
herbie shell --seed 2019172
(FPCore (a k m)
:name "Falkner and Boettcher, Appendix A"
(/ (* a (pow k m)) (+ (+ 1.0 (* 10.0 k)) (* k k))))