Average Error: 2.1 → 0.1
Time: 23.6s
Precision: 64
\[\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k}\]
\[\begin{array}{l} \mathbf{if}\;k \le 1.21824748075500874323673407969583515157 \cdot 10^{154}:\\ \;\;\;\;\frac{{\left(\sqrt[3]{k}\right)}^{m}}{\mathsf{fma}\left(k, k, \mathsf{fma}\left(10, k, 1\right)\right)} \cdot \left(a \cdot {\left(\sqrt[3]{k} \cdot \sqrt[3]{k}\right)}^{m}\right)\\ \mathbf{else}:\\ \;\;\;\;\left(\frac{e^{m \cdot \log k}}{k} \cdot \frac{a}{k}\right) \cdot \left(\frac{99}{k \cdot k} - \frac{10}{k}\right) + \frac{e^{m \cdot \log k}}{k} \cdot \frac{a}{k}\\ \end{array}\]
\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k}
\begin{array}{l}
\mathbf{if}\;k \le 1.21824748075500874323673407969583515157 \cdot 10^{154}:\\
\;\;\;\;\frac{{\left(\sqrt[3]{k}\right)}^{m}}{\mathsf{fma}\left(k, k, \mathsf{fma}\left(10, k, 1\right)\right)} \cdot \left(a \cdot {\left(\sqrt[3]{k} \cdot \sqrt[3]{k}\right)}^{m}\right)\\

\mathbf{else}:\\
\;\;\;\;\left(\frac{e^{m \cdot \log k}}{k} \cdot \frac{a}{k}\right) \cdot \left(\frac{99}{k \cdot k} - \frac{10}{k}\right) + \frac{e^{m \cdot \log k}}{k} \cdot \frac{a}{k}\\

\end{array}
double f(double a, double k, double m) {
        double r9341879 = a;
        double r9341880 = k;
        double r9341881 = m;
        double r9341882 = pow(r9341880, r9341881);
        double r9341883 = r9341879 * r9341882;
        double r9341884 = 1.0;
        double r9341885 = 10.0;
        double r9341886 = r9341885 * r9341880;
        double r9341887 = r9341884 + r9341886;
        double r9341888 = r9341880 * r9341880;
        double r9341889 = r9341887 + r9341888;
        double r9341890 = r9341883 / r9341889;
        return r9341890;
}

double f(double a, double k, double m) {
        double r9341891 = k;
        double r9341892 = 1.2182474807550087e+154;
        bool r9341893 = r9341891 <= r9341892;
        double r9341894 = cbrt(r9341891);
        double r9341895 = m;
        double r9341896 = pow(r9341894, r9341895);
        double r9341897 = 10.0;
        double r9341898 = 1.0;
        double r9341899 = fma(r9341897, r9341891, r9341898);
        double r9341900 = fma(r9341891, r9341891, r9341899);
        double r9341901 = r9341896 / r9341900;
        double r9341902 = a;
        double r9341903 = r9341894 * r9341894;
        double r9341904 = pow(r9341903, r9341895);
        double r9341905 = r9341902 * r9341904;
        double r9341906 = r9341901 * r9341905;
        double r9341907 = log(r9341891);
        double r9341908 = r9341895 * r9341907;
        double r9341909 = exp(r9341908);
        double r9341910 = r9341909 / r9341891;
        double r9341911 = r9341902 / r9341891;
        double r9341912 = r9341910 * r9341911;
        double r9341913 = 99.0;
        double r9341914 = r9341891 * r9341891;
        double r9341915 = r9341913 / r9341914;
        double r9341916 = r9341897 / r9341891;
        double r9341917 = r9341915 - r9341916;
        double r9341918 = r9341912 * r9341917;
        double r9341919 = r9341918 + r9341912;
        double r9341920 = r9341893 ? r9341906 : r9341919;
        return r9341920;
}

Error

Bits error versus a

Bits error versus k

Bits error versus m

Derivation

  1. Split input into 2 regimes
  2. if k < 1.2182474807550087e+154

    1. Initial program 0.1

      \[\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k}\]
    2. Using strategy rm
    3. Applied add-cube-cbrt0.1

      \[\leadsto \frac{a \cdot {\color{blue}{\left(\left(\sqrt[3]{k} \cdot \sqrt[3]{k}\right) \cdot \sqrt[3]{k}\right)}}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k}\]
    4. Applied unpow-prod-down0.1

      \[\leadsto \frac{a \cdot \color{blue}{\left({\left(\sqrt[3]{k} \cdot \sqrt[3]{k}\right)}^{m} \cdot {\left(\sqrt[3]{k}\right)}^{m}\right)}}{\left(1 + 10 \cdot k\right) + k \cdot k}\]
    5. Applied associate-*r*0.1

      \[\leadsto \frac{\color{blue}{\left(a \cdot {\left(\sqrt[3]{k} \cdot \sqrt[3]{k}\right)}^{m}\right) \cdot {\left(\sqrt[3]{k}\right)}^{m}}}{\left(1 + 10 \cdot k\right) + k \cdot k}\]
    6. Using strategy rm
    7. Applied *-un-lft-identity0.1

      \[\leadsto \frac{\left(a \cdot {\left(\sqrt[3]{k} \cdot \sqrt[3]{k}\right)}^{m}\right) \cdot {\left(\sqrt[3]{k}\right)}^{m}}{\color{blue}{1 \cdot \left(\left(1 + 10 \cdot k\right) + k \cdot k\right)}}\]
    8. Applied times-frac0.1

      \[\leadsto \color{blue}{\frac{a \cdot {\left(\sqrt[3]{k} \cdot \sqrt[3]{k}\right)}^{m}}{1} \cdot \frac{{\left(\sqrt[3]{k}\right)}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k}}\]
    9. Simplified0.1

      \[\leadsto \color{blue}{\left({\left(\sqrt[3]{k} \cdot \sqrt[3]{k}\right)}^{m} \cdot a\right)} \cdot \frac{{\left(\sqrt[3]{k}\right)}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k}\]
    10. Simplified0.1

      \[\leadsto \left({\left(\sqrt[3]{k} \cdot \sqrt[3]{k}\right)}^{m} \cdot a\right) \cdot \color{blue}{\frac{{\left(\sqrt[3]{k}\right)}^{m}}{\mathsf{fma}\left(k, k, \mathsf{fma}\left(10, k, 1\right)\right)}}\]

    if 1.2182474807550087e+154 < k

    1. Initial program 10.5

      \[\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k}\]
    2. Taylor expanded around -inf 64.0

      \[\leadsto \color{blue}{\left(99 \cdot \frac{a \cdot e^{m \cdot \left(\log -1 - \log \left(\frac{-1}{k}\right)\right)}}{{k}^{4}} + \frac{a \cdot e^{m \cdot \left(\log -1 - \log \left(\frac{-1}{k}\right)\right)}}{{k}^{2}}\right) - 10 \cdot \frac{a \cdot e^{m \cdot \left(\log -1 - \log \left(\frac{-1}{k}\right)\right)}}{{k}^{3}}}\]
    3. Simplified0.1

      \[\leadsto \color{blue}{\frac{e^{m \cdot \left(0 + \log k\right)}}{k} \cdot \frac{a}{k} + \left(\frac{e^{m \cdot \left(0 + \log k\right)}}{k} \cdot \frac{a}{k}\right) \cdot \left(\frac{99}{k \cdot k} - \frac{10}{k}\right)}\]
  3. Recombined 2 regimes into one program.
  4. Final simplification0.1

    \[\leadsto \begin{array}{l} \mathbf{if}\;k \le 1.21824748075500874323673407969583515157 \cdot 10^{154}:\\ \;\;\;\;\frac{{\left(\sqrt[3]{k}\right)}^{m}}{\mathsf{fma}\left(k, k, \mathsf{fma}\left(10, k, 1\right)\right)} \cdot \left(a \cdot {\left(\sqrt[3]{k} \cdot \sqrt[3]{k}\right)}^{m}\right)\\ \mathbf{else}:\\ \;\;\;\;\left(\frac{e^{m \cdot \log k}}{k} \cdot \frac{a}{k}\right) \cdot \left(\frac{99}{k \cdot k} - \frac{10}{k}\right) + \frac{e^{m \cdot \log k}}{k} \cdot \frac{a}{k}\\ \end{array}\]

Reproduce

herbie shell --seed 2019169 +o rules:numerics
(FPCore (a k m)
  :name "Falkner and Boettcher, Appendix A"
  (/ (* a (pow k m)) (+ (+ 1.0 (* 10.0 k)) (* k k))))