\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k}\begin{array}{l}
\mathbf{if}\;k \le 14158963.13343324698507785797119140625:\\
\;\;\;\;\frac{\frac{a \cdot {\left(\sqrt[3]{k} \cdot \sqrt[3]{k}\right)}^{m}}{\sqrt{1 + k \cdot \left(k + 10\right)}}}{\frac{\sqrt{1 + k \cdot \left(k + 10\right)}}{{\left(\sqrt[3]{k}\right)}^{m}}}\\
\mathbf{else}:\\
\;\;\;\;\frac{{\left(\frac{1}{k}\right)}^{\left(-m\right)} \cdot 99}{\frac{{k}^{4}}{a}} + \left(\frac{{\left(\frac{1}{k}\right)}^{\left(-m\right)}}{k} \cdot \frac{a}{k} - \frac{{\left(\frac{1}{k}\right)}^{\left(-m\right)} \cdot \left(a \cdot 10\right)}{{k}^{3}}\right)\\
\end{array}double f(double a, double k, double m) {
double r208307 = a;
double r208308 = k;
double r208309 = m;
double r208310 = pow(r208308, r208309);
double r208311 = r208307 * r208310;
double r208312 = 1.0;
double r208313 = 10.0;
double r208314 = r208313 * r208308;
double r208315 = r208312 + r208314;
double r208316 = r208308 * r208308;
double r208317 = r208315 + r208316;
double r208318 = r208311 / r208317;
return r208318;
}
double f(double a, double k, double m) {
double r208319 = k;
double r208320 = 14158963.133433247;
bool r208321 = r208319 <= r208320;
double r208322 = a;
double r208323 = cbrt(r208319);
double r208324 = r208323 * r208323;
double r208325 = m;
double r208326 = pow(r208324, r208325);
double r208327 = r208322 * r208326;
double r208328 = 1.0;
double r208329 = 10.0;
double r208330 = r208319 + r208329;
double r208331 = r208319 * r208330;
double r208332 = r208328 + r208331;
double r208333 = sqrt(r208332);
double r208334 = r208327 / r208333;
double r208335 = pow(r208323, r208325);
double r208336 = r208333 / r208335;
double r208337 = r208334 / r208336;
double r208338 = 1.0;
double r208339 = r208338 / r208319;
double r208340 = -r208325;
double r208341 = pow(r208339, r208340);
double r208342 = 99.0;
double r208343 = r208341 * r208342;
double r208344 = 4.0;
double r208345 = pow(r208319, r208344);
double r208346 = r208345 / r208322;
double r208347 = r208343 / r208346;
double r208348 = r208341 / r208319;
double r208349 = r208322 / r208319;
double r208350 = r208348 * r208349;
double r208351 = r208322 * r208329;
double r208352 = r208341 * r208351;
double r208353 = 3.0;
double r208354 = pow(r208319, r208353);
double r208355 = r208352 / r208354;
double r208356 = r208350 - r208355;
double r208357 = r208347 + r208356;
double r208358 = r208321 ? r208337 : r208357;
return r208358;
}



Bits error versus a



Bits error versus k



Bits error versus m
Results
if k < 14158963.133433247Initial program 0.1
Simplified0.0
rmApplied add-cube-cbrt0.0
Applied unpow-prod-down0.0
Applied add-sqr-sqrt0.1
Applied times-frac0.1
Applied associate-/r*0.1
Simplified0.1
if 14158963.133433247 < k Initial program 5.5
Simplified5.5
rmApplied clear-num5.7
Simplified5.7
Taylor expanded around inf 5.5
Simplified0.2
Final simplification0.2
herbie shell --seed 2019194
(FPCore (a k m)
:name "Falkner and Boettcher, Appendix A"
(/ (* a (pow k m)) (+ (+ 1.0 (* 10.0 k)) (* k k))))