\left(J \cdot \left(e^{\ell} - e^{-\ell}\right)\right) \cdot \cos \left(\frac{K}{2}\right) + U\left(2 \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 r131857 = J;
double r131858 = l;
double r131859 = exp(r131858);
double r131860 = -r131858;
double r131861 = exp(r131860);
double r131862 = r131859 - r131861;
double r131863 = r131857 * r131862;
double r131864 = K;
double r131865 = 2.0;
double r131866 = r131864 / r131865;
double r131867 = cos(r131866);
double r131868 = r131863 * r131867;
double r131869 = U;
double r131870 = r131868 + r131869;
return r131870;
}
double f(double J, double l, double K, double U) {
double r131871 = 2.0;
double r131872 = J;
double r131873 = l;
double r131874 = r131872 * r131873;
double r131875 = r131871 * r131874;
double r131876 = K;
double r131877 = 2.0;
double r131878 = r131876 / r131877;
double r131879 = cos(r131878);
double r131880 = r131875 * r131879;
double r131881 = U;
double r131882 = r131880 + r131881;
return r131882;
}



Bits error versus J



Bits error versus l



Bits error versus K



Bits error versus U
Results
Initial program 17.1
Taylor expanded around 0 0.7
Final simplification0.7
herbie shell --seed 2020057
(FPCore (J l K U)
:name "Maksimov and Kolovsky, Equation (4)"
:precision binary64
(+ (* (* J (- (exp l) (exp (- l)))) (cos (/ K 2))) U))