\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k}\begin{array}{l}
\mathbf{if}\;k \le 1.308663191510053 \cdot 10^{+120}:\\
\;\;\;\;\frac{{k}^{m} \cdot a}{\mathsf{fma}\left(k, k + 10, 1\right)}\\
\mathbf{else}:\\
\;\;\;\;\mathsf{fma}\left(99, \frac{a}{k \cdot k} \cdot \frac{e^{m \cdot \log k}}{k \cdot k}, \frac{a}{k} \cdot \frac{e^{m \cdot \log k}}{k}\right) + -10 \cdot \left(\frac{a}{k} \cdot \frac{e^{m \cdot \log k}}{k \cdot k}\right)\\
\end{array}double f(double a, double k, double m) {
double r3602375 = a;
double r3602376 = k;
double r3602377 = m;
double r3602378 = pow(r3602376, r3602377);
double r3602379 = r3602375 * r3602378;
double r3602380 = 1.0;
double r3602381 = 10.0;
double r3602382 = r3602381 * r3602376;
double r3602383 = r3602380 + r3602382;
double r3602384 = r3602376 * r3602376;
double r3602385 = r3602383 + r3602384;
double r3602386 = r3602379 / r3602385;
return r3602386;
}
double f(double a, double k, double m) {
double r3602387 = k;
double r3602388 = 1.308663191510053e+120;
bool r3602389 = r3602387 <= r3602388;
double r3602390 = m;
double r3602391 = pow(r3602387, r3602390);
double r3602392 = a;
double r3602393 = r3602391 * r3602392;
double r3602394 = 10.0;
double r3602395 = r3602387 + r3602394;
double r3602396 = 1.0;
double r3602397 = fma(r3602387, r3602395, r3602396);
double r3602398 = r3602393 / r3602397;
double r3602399 = 99.0;
double r3602400 = r3602387 * r3602387;
double r3602401 = r3602392 / r3602400;
double r3602402 = log(r3602387);
double r3602403 = r3602390 * r3602402;
double r3602404 = exp(r3602403);
double r3602405 = r3602404 / r3602400;
double r3602406 = r3602401 * r3602405;
double r3602407 = r3602392 / r3602387;
double r3602408 = r3602404 / r3602387;
double r3602409 = r3602407 * r3602408;
double r3602410 = fma(r3602399, r3602406, r3602409);
double r3602411 = -10.0;
double r3602412 = r3602407 * r3602405;
double r3602413 = r3602411 * r3602412;
double r3602414 = r3602410 + r3602413;
double r3602415 = r3602389 ? r3602398 : r3602414;
return r3602415;
}



Bits error versus a



Bits error versus k



Bits error versus m
if k < 1.308663191510053e+120Initial program 0.1
Simplified0.1
if 1.308663191510053e+120 < k Initial program 8.4
Simplified8.4
rmApplied associate-/l*8.5
rmApplied *-un-lft-identity8.5
Applied add-sqr-sqrt8.5
Applied times-frac8.5
Taylor expanded around 0 8.5
Simplified0.5
Taylor expanded around inf 8.4
Simplified0.1
Final simplification0.1
herbie shell --seed 2019146 +o rules:numerics
(FPCore (a k m)
:name "Falkner and Boettcher, Appendix A"
(/ (* a (pow k m)) (+ (+ 1 (* 10 k)) (* k k))))