\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k}\begin{array}{l}
\mathbf{if}\;k \le 27285682477325215839813632:\\
\;\;\;\;\frac{{k}^{m}}{\mathsf{fma}\left(k + 10, k, 1\right)} \cdot a\\
\mathbf{else}:\\
\;\;\;\;{k}^{m} \cdot \mathsf{fma}\left(\frac{99}{k \cdot k}, \frac{a}{k \cdot k}, \frac{\frac{a}{k}}{k} - \frac{\frac{a}{k \cdot k}}{k} \cdot 10\right)\\
\end{array}double f(double a, double k, double m) {
double r8801299 = a;
double r8801300 = k;
double r8801301 = m;
double r8801302 = pow(r8801300, r8801301);
double r8801303 = r8801299 * r8801302;
double r8801304 = 1.0;
double r8801305 = 10.0;
double r8801306 = r8801305 * r8801300;
double r8801307 = r8801304 + r8801306;
double r8801308 = r8801300 * r8801300;
double r8801309 = r8801307 + r8801308;
double r8801310 = r8801303 / r8801309;
return r8801310;
}
double f(double a, double k, double m) {
double r8801311 = k;
double r8801312 = 2.7285682477325216e+25;
bool r8801313 = r8801311 <= r8801312;
double r8801314 = m;
double r8801315 = pow(r8801311, r8801314);
double r8801316 = 10.0;
double r8801317 = r8801311 + r8801316;
double r8801318 = 1.0;
double r8801319 = fma(r8801317, r8801311, r8801318);
double r8801320 = r8801315 / r8801319;
double r8801321 = a;
double r8801322 = r8801320 * r8801321;
double r8801323 = 99.0;
double r8801324 = r8801311 * r8801311;
double r8801325 = r8801323 / r8801324;
double r8801326 = r8801321 / r8801324;
double r8801327 = r8801321 / r8801311;
double r8801328 = r8801327 / r8801311;
double r8801329 = r8801326 / r8801311;
double r8801330 = r8801329 * r8801316;
double r8801331 = r8801328 - r8801330;
double r8801332 = fma(r8801325, r8801326, r8801331);
double r8801333 = r8801315 * r8801332;
double r8801334 = r8801313 ? r8801322 : r8801333;
return r8801334;
}



Bits error versus a



Bits error versus k



Bits error versus m
if k < 2.7285682477325216e+25Initial program 0.1
Simplified0.0
rmApplied div-inv0.0
Applied associate-*l*0.0
Simplified0.0
if 2.7285682477325216e+25 < k Initial program 6.2
Simplified6.2
rmApplied add-sqr-sqrt6.2
Applied associate-/r*6.2
Taylor expanded around inf 6.2
Simplified0.1
Final simplification0.0
herbie shell --seed 2019200 +o rules:numerics
(FPCore (a k m)
:name "Falkner and Boettcher, Appendix A"
(/ (* a (pow k m)) (+ (+ 1.0 (* 10.0 k)) (* k k))))