\left(\left(-2 \cdot J\right) \cdot \cos \left(\frac{K}{2}\right)\right) \cdot \sqrt{1 + {\left(\frac{U}{\left(2 \cdot J\right) \cdot \cos \left(\frac{K}{2}\right)}\right)}^{2}}\left(-2 \cdot J\right) \cdot \left(\cos \left(\frac{K}{2}\right) \cdot \mathsf{hypot}\left(\sqrt{1}, {\left(\frac{\frac{U}{2 \cdot J}}{\cos \left(\frac{K}{2}\right)}\right)}^{\left(\frac{2}{2}\right)}\right)\right)double f(double J, double K, double U) {
double r183974 = -2.0;
double r183975 = J;
double r183976 = r183974 * r183975;
double r183977 = K;
double r183978 = 2.0;
double r183979 = r183977 / r183978;
double r183980 = cos(r183979);
double r183981 = r183976 * r183980;
double r183982 = 1.0;
double r183983 = U;
double r183984 = r183978 * r183975;
double r183985 = r183984 * r183980;
double r183986 = r183983 / r183985;
double r183987 = pow(r183986, r183978);
double r183988 = r183982 + r183987;
double r183989 = sqrt(r183988);
double r183990 = r183981 * r183989;
return r183990;
}
double f(double J, double K, double U) {
double r183991 = -2.0;
double r183992 = J;
double r183993 = r183991 * r183992;
double r183994 = K;
double r183995 = 2.0;
double r183996 = r183994 / r183995;
double r183997 = cos(r183996);
double r183998 = 1.0;
double r183999 = sqrt(r183998);
double r184000 = U;
double r184001 = r183995 * r183992;
double r184002 = r184000 / r184001;
double r184003 = r184002 / r183997;
double r184004 = 2.0;
double r184005 = r183995 / r184004;
double r184006 = pow(r184003, r184005);
double r184007 = hypot(r183999, r184006);
double r184008 = r183997 * r184007;
double r184009 = r183993 * r184008;
return r184009;
}



Bits error versus J



Bits error versus K



Bits error versus U
Results
Initial program 18.1
rmApplied sqr-pow18.1
Applied add-sqr-sqrt18.1
Applied hypot-def8.1
rmApplied associate-/r*8.1
rmApplied associate-*l*8.1
Final simplification8.1
herbie shell --seed 2019356 +o rules:numerics
(FPCore (J K U)
:name "Maksimov and Kolovsky, Equation (3)"
:precision binary64
(* (* (* -2 J) (cos (/ K 2))) (sqrt (+ 1 (pow (/ U (* (* 2 J) (cos (/ K 2)))) 2)))))