\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)}\sqrt{{e}^{\left(\left(-{\left(\frac{m + n}{2} - M\right)}^{2}\right) - \left(\ell - \left|m - n\right|\right)\right)}} \cdot \sqrt{{e}^{\left(\left(-{\left(\frac{m + n}{2} - M\right)}^{2}\right) - \left(\ell - \left|m - n\right|\right)\right)}}double f(double K, double m, double n, double M, double l) {
double r155277 = K;
double r155278 = m;
double r155279 = n;
double r155280 = r155278 + r155279;
double r155281 = r155277 * r155280;
double r155282 = 2.0;
double r155283 = r155281 / r155282;
double r155284 = M;
double r155285 = r155283 - r155284;
double r155286 = cos(r155285);
double r155287 = r155280 / r155282;
double r155288 = r155287 - r155284;
double r155289 = pow(r155288, r155282);
double r155290 = -r155289;
double r155291 = l;
double r155292 = r155278 - r155279;
double r155293 = fabs(r155292);
double r155294 = r155291 - r155293;
double r155295 = r155290 - r155294;
double r155296 = exp(r155295);
double r155297 = r155286 * r155296;
return r155297;
}
double f(double __attribute__((unused)) K, double m, double n, double M, double l) {
double r155298 = exp(1.0);
double r155299 = m;
double r155300 = n;
double r155301 = r155299 + r155300;
double r155302 = 2.0;
double r155303 = r155301 / r155302;
double r155304 = M;
double r155305 = r155303 - r155304;
double r155306 = pow(r155305, r155302);
double r155307 = -r155306;
double r155308 = l;
double r155309 = r155299 - r155300;
double r155310 = fabs(r155309);
double r155311 = r155308 - r155310;
double r155312 = r155307 - r155311;
double r155313 = pow(r155298, r155312);
double r155314 = sqrt(r155313);
double r155315 = r155314 * r155314;
return r155315;
}



Bits error versus K



Bits error versus m



Bits error versus n



Bits error versus M



Bits error versus l
Results
Initial program 15.6
Taylor expanded around 0 1.5
rmApplied *-un-lft-identity1.5
Applied exp-prod1.5
Simplified1.5
rmApplied add-sqr-sqrt1.5
Final simplification1.5
herbie shell --seed 2020033
(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)))))))