\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k}\begin{array}{l}
\mathbf{if}\;k \le 14158963.13343324698507785797119140625:\\
\;\;\;\;\frac{\frac{a \cdot {\left(\sqrt[3]{k} \cdot \sqrt[3]{k}\right)}^{m}}{\sqrt{1 + k \cdot \left(k + 10\right)}}}{\frac{\sqrt{1 + k \cdot \left(k + 10\right)}}{{\left(\sqrt[3]{k}\right)}^{m}}}\\
\mathbf{else}:\\
\;\;\;\;\frac{{\left(\frac{1}{k}\right)}^{\left(-m\right)} \cdot 99}{\frac{{k}^{4}}{a}} + \left(\frac{{\left(\frac{1}{k}\right)}^{\left(-m\right)}}{k} \cdot \frac{a}{k} - \frac{{\left(\frac{1}{k}\right)}^{\left(-m\right)} \cdot \left(a \cdot 10\right)}{{k}^{3}}\right)\\
\end{array}double f(double a, double k, double m) {
double r190578 = a;
double r190579 = k;
double r190580 = m;
double r190581 = pow(r190579, r190580);
double r190582 = r190578 * r190581;
double r190583 = 1.0;
double r190584 = 10.0;
double r190585 = r190584 * r190579;
double r190586 = r190583 + r190585;
double r190587 = r190579 * r190579;
double r190588 = r190586 + r190587;
double r190589 = r190582 / r190588;
return r190589;
}
double f(double a, double k, double m) {
double r190590 = k;
double r190591 = 14158963.133433247;
bool r190592 = r190590 <= r190591;
double r190593 = a;
double r190594 = cbrt(r190590);
double r190595 = r190594 * r190594;
double r190596 = m;
double r190597 = pow(r190595, r190596);
double r190598 = r190593 * r190597;
double r190599 = 1.0;
double r190600 = 10.0;
double r190601 = r190590 + r190600;
double r190602 = r190590 * r190601;
double r190603 = r190599 + r190602;
double r190604 = sqrt(r190603);
double r190605 = r190598 / r190604;
double r190606 = pow(r190594, r190596);
double r190607 = r190604 / r190606;
double r190608 = r190605 / r190607;
double r190609 = 1.0;
double r190610 = r190609 / r190590;
double r190611 = -r190596;
double r190612 = pow(r190610, r190611);
double r190613 = 99.0;
double r190614 = r190612 * r190613;
double r190615 = 4.0;
double r190616 = pow(r190590, r190615);
double r190617 = r190616 / r190593;
double r190618 = r190614 / r190617;
double r190619 = r190612 / r190590;
double r190620 = r190593 / r190590;
double r190621 = r190619 * r190620;
double r190622 = r190593 * r190600;
double r190623 = r190612 * r190622;
double r190624 = 3.0;
double r190625 = pow(r190590, r190624);
double r190626 = r190623 / r190625;
double r190627 = r190621 - r190626;
double r190628 = r190618 + r190627;
double r190629 = r190592 ? r190608 : r190628;
return r190629;
}



Bits error versus a



Bits error versus k



Bits error versus m
Results
if k < 14158963.133433247Initial program 0.1
Simplified0.0
rmApplied add-cube-cbrt0.0
Applied unpow-prod-down0.0
Applied add-sqr-sqrt0.1
Applied times-frac0.1
Applied associate-/r*0.1
Simplified0.1
if 14158963.133433247 < k Initial program 5.5
Simplified5.5
rmApplied clear-num5.7
Simplified5.7
Taylor expanded around inf 5.5
Simplified0.2
Final simplification0.2
herbie shell --seed 2019194
(FPCore (a k m)
:name "Falkner and Boettcher, Appendix A"
(/ (* a (pow k m)) (+ (+ 1.0 (* 10.0 k)) (* k k))))