Average Error: 2.1 → 2.1
Time: 4.4s
Precision: 64
\[\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k}\]
\[\frac{\left(\left(a \cdot {k}^{\left(\frac{m}{2}\right)}\right) \cdot {k}^{\left(\frac{\frac{m}{2}}{2}\right)}\right) \cdot {k}^{\left(\frac{\frac{m}{2}}{2}\right)}}{\left(1 + 10 \cdot k\right) + k \cdot k}\]
\frac{a \cdot {k}^{m}}{\left(1 + 10 \cdot k\right) + k \cdot k}
\frac{\left(\left(a \cdot {k}^{\left(\frac{m}{2}\right)}\right) \cdot {k}^{\left(\frac{\frac{m}{2}}{2}\right)}\right) \cdot {k}^{\left(\frac{\frac{m}{2}}{2}\right)}}{\left(1 + 10 \cdot k\right) + k \cdot k}
double f(double a, double k, double m) {
        double r361009 = a;
        double r361010 = k;
        double r361011 = m;
        double r361012 = pow(r361010, r361011);
        double r361013 = r361009 * r361012;
        double r361014 = 1.0;
        double r361015 = 10.0;
        double r361016 = r361015 * r361010;
        double r361017 = r361014 + r361016;
        double r361018 = r361010 * r361010;
        double r361019 = r361017 + r361018;
        double r361020 = r361013 / r361019;
        return r361020;
}

double f(double a, double k, double m) {
        double r361021 = a;
        double r361022 = k;
        double r361023 = m;
        double r361024 = 2.0;
        double r361025 = r361023 / r361024;
        double r361026 = pow(r361022, r361025);
        double r361027 = r361021 * r361026;
        double r361028 = r361025 / r361024;
        double r361029 = pow(r361022, r361028);
        double r361030 = r361027 * r361029;
        double r361031 = r361030 * r361029;
        double r361032 = 1.0;
        double r361033 = 10.0;
        double r361034 = r361033 * r361022;
        double r361035 = r361032 + r361034;
        double r361036 = r361022 * r361022;
        double r361037 = r361035 + r361036;
        double r361038 = r361031 / r361037;
        return r361038;
}

Error

Bits error versus a

Bits error versus k

Bits error versus m

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 2.1

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

    \[\leadsto \frac{a \cdot \color{blue}{\left({k}^{\left(\frac{m}{2}\right)} \cdot {k}^{\left(\frac{m}{2}\right)}\right)}}{\left(1 + 10 \cdot k\right) + k \cdot k}\]
  4. Applied associate-*r*2.1

    \[\leadsto \frac{\color{blue}{\left(a \cdot {k}^{\left(\frac{m}{2}\right)}\right) \cdot {k}^{\left(\frac{m}{2}\right)}}}{\left(1 + 10 \cdot k\right) + k \cdot k}\]
  5. Using strategy rm
  6. Applied sqr-pow2.1

    \[\leadsto \frac{\left(a \cdot {k}^{\left(\frac{m}{2}\right)}\right) \cdot \color{blue}{\left({k}^{\left(\frac{\frac{m}{2}}{2}\right)} \cdot {k}^{\left(\frac{\frac{m}{2}}{2}\right)}\right)}}{\left(1 + 10 \cdot k\right) + k \cdot k}\]
  7. Applied associate-*r*2.1

    \[\leadsto \frac{\color{blue}{\left(\left(a \cdot {k}^{\left(\frac{m}{2}\right)}\right) \cdot {k}^{\left(\frac{\frac{m}{2}}{2}\right)}\right) \cdot {k}^{\left(\frac{\frac{m}{2}}{2}\right)}}}{\left(1 + 10 \cdot k\right) + k \cdot k}\]
  8. Final simplification2.1

    \[\leadsto \frac{\left(\left(a \cdot {k}^{\left(\frac{m}{2}\right)}\right) \cdot {k}^{\left(\frac{\frac{m}{2}}{2}\right)}\right) \cdot {k}^{\left(\frac{\frac{m}{2}}{2}\right)}}{\left(1 + 10 \cdot k\right) + k \cdot k}\]

Reproduce

herbie shell --seed 2020059 
(FPCore (a k m)
  :name "Falkner and Boettcher, Appendix A"
  :precision binary64
  (/ (* a (pow k m)) (+ (+ 1 (* 10 k)) (* k k))))