\left(J \cdot \left(e^{\ell} - e^{-\ell}\right)\right) \cdot \cos \left(\frac{K}{2}\right) + U\left(\left(\left(\ell \cdot \left(\ell \cdot \ell\right)\right) \cdot \left(\ell \cdot \ell\right)\right) \cdot \left(\frac{1}{60} \cdot J\right) + \mathsf{fma}\left(\ell \cdot \ell, \frac{1}{3}, 2\right) \cdot \left(J \cdot \ell\right)\right) \cdot \cos \left(\frac{K}{2}\right) + Udouble f(double J, double l, double K, double U) {
double r3143596 = J;
double r3143597 = l;
double r3143598 = exp(r3143597);
double r3143599 = -r3143597;
double r3143600 = exp(r3143599);
double r3143601 = r3143598 - r3143600;
double r3143602 = r3143596 * r3143601;
double r3143603 = K;
double r3143604 = 2.0;
double r3143605 = r3143603 / r3143604;
double r3143606 = cos(r3143605);
double r3143607 = r3143602 * r3143606;
double r3143608 = U;
double r3143609 = r3143607 + r3143608;
return r3143609;
}
double f(double J, double l, double K, double U) {
double r3143610 = l;
double r3143611 = r3143610 * r3143610;
double r3143612 = r3143610 * r3143611;
double r3143613 = r3143612 * r3143611;
double r3143614 = 0.016666666666666666;
double r3143615 = J;
double r3143616 = r3143614 * r3143615;
double r3143617 = r3143613 * r3143616;
double r3143618 = 0.3333333333333333;
double r3143619 = 2.0;
double r3143620 = fma(r3143611, r3143618, r3143619);
double r3143621 = r3143615 * r3143610;
double r3143622 = r3143620 * r3143621;
double r3143623 = r3143617 + r3143622;
double r3143624 = K;
double r3143625 = r3143624 / r3143619;
double r3143626 = cos(r3143625);
double r3143627 = r3143623 * r3143626;
double r3143628 = U;
double r3143629 = r3143627 + r3143628;
return r3143629;
}



Bits error versus J



Bits error versus l



Bits error versus K



Bits error versus U
Initial program 17.5
Taylor expanded around 0 0.4
Simplified0.4
rmApplied fma-udef0.4
Applied distribute-rgt-in0.4
Simplified0.4
Simplified0.4
Final simplification0.4
herbie shell --seed 2019141 +o rules:numerics
(FPCore (J l K U)
:name "Maksimov and Kolovsky, Equation (4)"
(+ (* (* J (- (exp l) (exp (- l)))) (cos (/ K 2))) U))