Average Error: 15.3 → 1.3
Time: 53.8s
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(\ell - \left|m - n\right|\right) + \left(\frac{m + n}{2} - M\right) \cdot \left(\frac{m + n}{2} - M\right)}}\]
double f(double K, double m, double n, double M, double l) {
        double r9842984 = K;
        double r9842985 = m;
        double r9842986 = n;
        double r9842987 = r9842985 + r9842986;
        double r9842988 = r9842984 * r9842987;
        double r9842989 = 2.0;
        double r9842990 = r9842988 / r9842989;
        double r9842991 = M;
        double r9842992 = r9842990 - r9842991;
        double r9842993 = cos(r9842992);
        double r9842994 = r9842987 / r9842989;
        double r9842995 = r9842994 - r9842991;
        double r9842996 = pow(r9842995, r9842989);
        double r9842997 = -r9842996;
        double r9842998 = l;
        double r9842999 = r9842985 - r9842986;
        double r9843000 = fabs(r9842999);
        double r9843001 = r9842998 - r9843000;
        double r9843002 = r9842997 - r9843001;
        double r9843003 = exp(r9843002);
        double r9843004 = r9842993 * r9843003;
        return r9843004;
}

double f(double __attribute__((unused)) K, double m, double n, double M, double l) {
        double r9843005 = 1.0;
        double r9843006 = l;
        double r9843007 = m;
        double r9843008 = n;
        double r9843009 = r9843007 - r9843008;
        double r9843010 = fabs(r9843009);
        double r9843011 = r9843006 - r9843010;
        double r9843012 = r9843007 + r9843008;
        double r9843013 = 2.0;
        double r9843014 = r9843012 / r9843013;
        double r9843015 = M;
        double r9843016 = r9843014 - r9843015;
        double r9843017 = r9843016 * r9843016;
        double r9843018 = r9843011 + r9843017;
        double r9843019 = exp(r9843018);
        double r9843020 = r9843005 / r9843019;
        return r9843020;
}

\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(\ell - \left|m - n\right|\right) + \left(\frac{m + n}{2} - M\right) \cdot \left(\frac{m + n}{2} - M\right)}}

Error

Bits error versus K

Bits error versus m

Bits error versus n

Bits error versus M

Bits error versus l

Derivation

  1. Initial program 15.3

    \[\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. Simplified15.3

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

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

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

Reproduce

herbie shell --seed 2019102 
(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)))))))