Average Error: 14.9 → 1.5
Time: 15.7s
Precision: 64
\[\cos \left(\frac{K \cdot \left(m + n\right)}{2} - M\right) \cdot e^{\left(-{\left(\frac{m + n}{2} - M\right)}^{2}\right) - \left(\ell - \left|m - n\right|\right)}\]
\[\frac{1}{e^{\left(\left(\frac{n + m}{2} - M\right) \cdot \left(\frac{n + m}{2} - M\right) + \ell\right) - \left|m - n\right|}}\]
\cos \left(\frac{K \cdot \left(m + n\right)}{2} - M\right) \cdot e^{\left(-{\left(\frac{m + n}{2} - M\right)}^{2}\right) - \left(\ell - \left|m - n\right|\right)}
\frac{1}{e^{\left(\left(\frac{n + m}{2} - M\right) \cdot \left(\frac{n + m}{2} - M\right) + \ell\right) - \left|m - n\right|}}
double f(double K, double m, double n, double M, double l) {
        double r1583930 = K;
        double r1583931 = m;
        double r1583932 = n;
        double r1583933 = r1583931 + r1583932;
        double r1583934 = r1583930 * r1583933;
        double r1583935 = 2.0;
        double r1583936 = r1583934 / r1583935;
        double r1583937 = M;
        double r1583938 = r1583936 - r1583937;
        double r1583939 = cos(r1583938);
        double r1583940 = r1583933 / r1583935;
        double r1583941 = r1583940 - r1583937;
        double r1583942 = pow(r1583941, r1583935);
        double r1583943 = -r1583942;
        double r1583944 = l;
        double r1583945 = r1583931 - r1583932;
        double r1583946 = fabs(r1583945);
        double r1583947 = r1583944 - r1583946;
        double r1583948 = r1583943 - r1583947;
        double r1583949 = exp(r1583948);
        double r1583950 = r1583939 * r1583949;
        return r1583950;
}

double f(double __attribute__((unused)) K, double m, double n, double M, double l) {
        double r1583951 = 1.0;
        double r1583952 = n;
        double r1583953 = m;
        double r1583954 = r1583952 + r1583953;
        double r1583955 = 2.0;
        double r1583956 = r1583954 / r1583955;
        double r1583957 = M;
        double r1583958 = r1583956 - r1583957;
        double r1583959 = r1583958 * r1583958;
        double r1583960 = l;
        double r1583961 = r1583959 + r1583960;
        double r1583962 = r1583953 - r1583952;
        double r1583963 = fabs(r1583962);
        double r1583964 = r1583961 - r1583963;
        double r1583965 = exp(r1583964);
        double r1583966 = r1583951 / r1583965;
        return r1583966;
}

Error

Bits error versus K

Bits error versus m

Bits error versus n

Bits error versus M

Bits error versus l

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 14.9

    \[\cos \left(\frac{K \cdot \left(m + n\right)}{2} - M\right) \cdot e^{\left(-{\left(\frac{m + n}{2} - M\right)}^{2}\right) - \left(\ell - \left|m - n\right|\right)}\]
  2. Simplified14.9

    \[\leadsto \color{blue}{\frac{\cos \left(\frac{\left(m + n\right) \cdot K}{2} - M\right)}{e^{\left(\ell + \left(\frac{m + n}{2} - M\right) \cdot \left(\frac{m + n}{2} - M\right)\right) - \left|m - n\right|}}}\]
  3. Taylor expanded around 0 1.5

    \[\leadsto \frac{\color{blue}{1}}{e^{\left(\ell + \left(\frac{m + n}{2} - M\right) \cdot \left(\frac{m + n}{2} - M\right)\right) - \left|m - n\right|}}\]
  4. Final simplification1.5

    \[\leadsto \frac{1}{e^{\left(\left(\frac{n + m}{2} - M\right) \cdot \left(\frac{n + m}{2} - M\right) + \ell\right) - \left|m - n\right|}}\]

Reproduce

herbie shell --seed 2019154 
(FPCore (K m n M l)
  :name "Maksimov and Kolovsky, Equation (32)"
  (* (cos (- (/ (* K (+ m n)) 2) M)) (exp (- (- (pow (- (/ (+ m n) 2) M) 2)) (- l (fabs (- m n)))))))