double f(double a, double k, double m) {
double r54090628 = a;
double r54090629 = k;
double r54090630 = m;
double r54090631 = pow(r54090629, r54090630);
double r54090632 = r54090628 * r54090631;
double r54090633 = 1.0;
double r54090634 = 10.0;
double r54090635 = r54090634 * r54090629;
double r54090636 = r54090633 + r54090635;
double r54090637 = r54090629 * r54090629;
double r54090638 = r54090636 + r54090637;
double r54090639 = r54090632 / r54090638;
return r54090639;
}
double f(double a, double k, double m) {
double r54090640 = k;
double r54090641 = 5.4112590007686036e+39;
bool r54090642 = r54090640 <= r54090641;
double r54090643 = m;
double r54090644 = pow(r54090640, r54090643);
double r54090645 = sqrt(r54090644);
double r54090646 = a;
double r54090647 = r54090645 * r54090646;
double r54090648 = r54090647 * r54090645;
double r54090649 = 10.0;
double r54090650 = r54090640 + r54090649;
double r54090651 = 1.0;
double r54090652 = fma(r54090640, r54090650, r54090651);
double r54090653 = r54090648 / r54090652;
double r54090654 = 99.0;
double r54090655 = r54090654 / r54090640;
double r54090656 = r54090655 / r54090640;
double r54090657 = log(r54090640);
double r54090658 = r54090643 * r54090657;
double r54090659 = exp(r54090658);
double r54090660 = r54090640 / r54090646;
double r54090661 = r54090659 / r54090660;
double r54090662 = r54090661 / r54090640;
double r54090663 = -10.0;
double r54090664 = r54090662 / r54090640;
double r54090665 = r54090663 * r54090664;
double r54090666 = r54090665 + r54090662;
double r54090667 = fma(r54090656, r54090662, r54090666);
double r54090668 = r54090642 ? r54090653 : r54090667;
return r54090668;
}
\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k}\begin{array}{l}
\mathbf{if}\;k \le 5.4112590007686036 \cdot 10^{+39}:\\
\;\;\;\;\frac{\left(\sqrt{{k}^{m}} \cdot a\right) \cdot \sqrt{{k}^{m}}}{(k \cdot \left(k + 10\right) + 1)_*}\\
\mathbf{else}:\\
\;\;\;\;(\left(\frac{\frac{99}{k}}{k}\right) \cdot \left(\frac{\frac{e^{m \cdot \log k}}{\frac{k}{a}}}{k}\right) + \left(-10 \cdot \frac{\frac{\frac{e^{m \cdot \log k}}{\frac{k}{a}}}{k}}{k} + \frac{\frac{e^{m \cdot \log k}}{\frac{k}{a}}}{k}\right))_*\\
\end{array}


Bits error versus a



Bits error versus k



Bits error versus m
if k < 5.4112590007686036e+39Initial program 0.0
Simplified0.0
Taylor expanded around inf 0.0
Simplified0.0
rmApplied add-sqr-sqrt0.0
Applied associate-*l*0.0
if 5.4112590007686036e+39 < k Initial program 5.8
Simplified5.8
Taylor expanded around inf 5.8
Simplified5.8
rmApplied add-sqr-sqrt5.8
Applied associate-*l*5.8
Taylor expanded around inf 5.8
Simplified0.2
Final simplification0.1
herbie shell --seed 2019102 +o rules:numerics
(FPCore (a k m)
:name "Falkner and Boettcher, Appendix A"
(/ (* a (pow k m)) (+ (+ 1 (* 10 k)) (* k k))))