\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k}\begin{array}{l}
\mathbf{if}\;k \le 1.0251482028952462 \cdot 10^{+139}:\\
\;\;\;\;\frac{\frac{{k}^{\left(\frac{m}{2}\right)} \cdot \left(a \cdot {k}^{\left(\frac{m}{2}\right)}\right)}{\sqrt{\left(k + 10\right) \cdot k + 1}}}{\sqrt{\left(k + 10\right) \cdot k + 1}}\\
\mathbf{else}:\\
\;\;\;\;\frac{a}{k} \cdot \frac{e^{\log k \cdot m}}{k} - \left(\left(\frac{a}{k} \cdot \frac{e^{\log k \cdot m}}{k}\right) \cdot \frac{10}{k} - 99 \cdot \frac{a}{\frac{\left(k \cdot k\right) \cdot \left(k \cdot k\right)}{e^{\log k \cdot m}}}\right)\\
\end{array}double f(double a, double k, double m) {
double r7176249 = a;
double r7176250 = k;
double r7176251 = m;
double r7176252 = pow(r7176250, r7176251);
double r7176253 = r7176249 * r7176252;
double r7176254 = 1.0;
double r7176255 = 10.0;
double r7176256 = r7176255 * r7176250;
double r7176257 = r7176254 + r7176256;
double r7176258 = r7176250 * r7176250;
double r7176259 = r7176257 + r7176258;
double r7176260 = r7176253 / r7176259;
return r7176260;
}
double f(double a, double k, double m) {
double r7176261 = k;
double r7176262 = 1.0251482028952462e+139;
bool r7176263 = r7176261 <= r7176262;
double r7176264 = m;
double r7176265 = 2.0;
double r7176266 = r7176264 / r7176265;
double r7176267 = pow(r7176261, r7176266);
double r7176268 = a;
double r7176269 = r7176268 * r7176267;
double r7176270 = r7176267 * r7176269;
double r7176271 = 10.0;
double r7176272 = r7176261 + r7176271;
double r7176273 = r7176272 * r7176261;
double r7176274 = 1.0;
double r7176275 = r7176273 + r7176274;
double r7176276 = sqrt(r7176275);
double r7176277 = r7176270 / r7176276;
double r7176278 = r7176277 / r7176276;
double r7176279 = r7176268 / r7176261;
double r7176280 = log(r7176261);
double r7176281 = r7176280 * r7176264;
double r7176282 = exp(r7176281);
double r7176283 = r7176282 / r7176261;
double r7176284 = r7176279 * r7176283;
double r7176285 = r7176271 / r7176261;
double r7176286 = r7176284 * r7176285;
double r7176287 = 99.0;
double r7176288 = r7176261 * r7176261;
double r7176289 = r7176288 * r7176288;
double r7176290 = r7176289 / r7176282;
double r7176291 = r7176268 / r7176290;
double r7176292 = r7176287 * r7176291;
double r7176293 = r7176286 - r7176292;
double r7176294 = r7176284 - r7176293;
double r7176295 = r7176263 ? r7176278 : r7176294;
return r7176295;
}



Bits error versus a



Bits error versus k



Bits error versus m
Results
if k < 1.0251482028952462e+139Initial program 0.1
Simplified0.0
rmApplied sqr-pow0.1
Applied associate-*l*0.1
rmApplied add-sqr-sqrt0.1
Applied associate-/r*0.1
if 1.0251482028952462e+139 < k Initial program 8.9
Simplified8.9
Taylor expanded around -inf 63.0
Simplified0.1
Final simplification0.1
herbie shell --seed 2019142
(FPCore (a k m)
:name "Falkner and Boettcher, Appendix A"
(/ (* a (pow k m)) (+ (+ 1 (* 10 k)) (* k k))))