Average Error: 15.1 → 1.3
Time: 18.4s
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)}\]
\[e^{\left(-{\left(\frac{m + n}{2} - M\right)}^{2}\right) - \left(\ell - \left|m - n\right|\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)}
e^{\left(-{\left(\frac{m + n}{2} - M\right)}^{2}\right) - \left(\ell - \left|m - n\right|\right)}
double f(double K, double m, double n, double M, double l) {
        double r82782 = K;
        double r82783 = m;
        double r82784 = n;
        double r82785 = r82783 + r82784;
        double r82786 = r82782 * r82785;
        double r82787 = 2.0;
        double r82788 = r82786 / r82787;
        double r82789 = M;
        double r82790 = r82788 - r82789;
        double r82791 = cos(r82790);
        double r82792 = r82785 / r82787;
        double r82793 = r82792 - r82789;
        double r82794 = pow(r82793, r82787);
        double r82795 = -r82794;
        double r82796 = l;
        double r82797 = r82783 - r82784;
        double r82798 = fabs(r82797);
        double r82799 = r82796 - r82798;
        double r82800 = r82795 - r82799;
        double r82801 = exp(r82800);
        double r82802 = r82791 * r82801;
        return r82802;
}

double f(double __attribute__((unused)) K, double m, double n, double M, double l) {
        double r82803 = m;
        double r82804 = n;
        double r82805 = r82803 + r82804;
        double r82806 = 2.0;
        double r82807 = r82805 / r82806;
        double r82808 = M;
        double r82809 = r82807 - r82808;
        double r82810 = pow(r82809, r82806);
        double r82811 = -r82810;
        double r82812 = l;
        double r82813 = r82803 - r82804;
        double r82814 = fabs(r82813);
        double r82815 = r82812 - r82814;
        double r82816 = r82811 - r82815;
        double r82817 = exp(r82816);
        return r82817;
}

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 15.1

    \[\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. Taylor expanded around 0 1.3

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

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

Reproduce

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