\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k}\begin{array}{l}
\mathbf{if}\;k \le 2.2584134818398895 \cdot 10^{-19}:\\
\;\;\;\;\frac{\frac{{k}^{\left(\frac{m}{2}\right)} \cdot \left(a \cdot {k}^{\left(\frac{m}{2}\right)}\right)}{\sqrt{\mathsf{fma}\left(k, k + 10, 1\right)}}}{\sqrt{\mathsf{fma}\left(k, k + 10, 1\right)}}\\
\mathbf{else}:\\
\;\;\;\;\frac{{k}^{\left(\frac{m}{2}\right)}}{\mathsf{fma}\left(10, \frac{k}{e^{\frac{1}{2} \cdot \left(m \cdot \log k\right)} \cdot a}, \frac{k}{e^{\frac{1}{2} \cdot \left(m \cdot \log k\right)}} \cdot \frac{k}{a} + \frac{e^{\frac{-1}{2} \cdot \left(m \cdot \log k\right)}}{a}\right)}\\
\end{array}double f(double a, double k, double m) {
double r6405472 = a;
double r6405473 = k;
double r6405474 = m;
double r6405475 = pow(r6405473, r6405474);
double r6405476 = r6405472 * r6405475;
double r6405477 = 1.0;
double r6405478 = 10.0;
double r6405479 = r6405478 * r6405473;
double r6405480 = r6405477 + r6405479;
double r6405481 = r6405473 * r6405473;
double r6405482 = r6405480 + r6405481;
double r6405483 = r6405476 / r6405482;
return r6405483;
}
double f(double a, double k, double m) {
double r6405484 = k;
double r6405485 = 2.2584134818398895e-19;
bool r6405486 = r6405484 <= r6405485;
double r6405487 = m;
double r6405488 = 2.0;
double r6405489 = r6405487 / r6405488;
double r6405490 = pow(r6405484, r6405489);
double r6405491 = a;
double r6405492 = r6405491 * r6405490;
double r6405493 = r6405490 * r6405492;
double r6405494 = 10.0;
double r6405495 = r6405484 + r6405494;
double r6405496 = 1.0;
double r6405497 = fma(r6405484, r6405495, r6405496);
double r6405498 = sqrt(r6405497);
double r6405499 = r6405493 / r6405498;
double r6405500 = r6405499 / r6405498;
double r6405501 = 0.5;
double r6405502 = log(r6405484);
double r6405503 = r6405487 * r6405502;
double r6405504 = r6405501 * r6405503;
double r6405505 = exp(r6405504);
double r6405506 = r6405505 * r6405491;
double r6405507 = r6405484 / r6405506;
double r6405508 = r6405484 / r6405505;
double r6405509 = r6405484 / r6405491;
double r6405510 = r6405508 * r6405509;
double r6405511 = -0.5;
double r6405512 = r6405511 * r6405503;
double r6405513 = exp(r6405512);
double r6405514 = r6405513 / r6405491;
double r6405515 = r6405510 + r6405514;
double r6405516 = fma(r6405494, r6405507, r6405515);
double r6405517 = r6405490 / r6405516;
double r6405518 = r6405486 ? r6405500 : r6405517;
return r6405518;
}



Bits error versus a



Bits error versus k



Bits error versus m
if k < 2.2584134818398895e-19Initial program 0.0
Simplified0.0
rmApplied sqr-pow0.0
Applied associate-*l*0.0
rmApplied add-sqr-sqrt0.1
Applied associate-/r*0.1
if 2.2584134818398895e-19 < k Initial program 4.8
Simplified4.8
rmApplied sqr-pow4.8
Applied associate-*l*4.8
rmApplied associate-/l*5.0
Taylor expanded around inf 5.0
Simplified0.4
Final simplification0.3
herbie shell --seed 2019142 +o rules:numerics
(FPCore (a k m)
:name "Falkner and Boettcher, Appendix A"
(/ (* a (pow k m)) (+ (+ 1 (* 10 k)) (* k k))))