\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 r162739 = -2.0;
double r162740 = J;
double r162741 = r162739 * r162740;
double r162742 = K;
double r162743 = 2.0;
double r162744 = r162742 / r162743;
double r162745 = cos(r162744);
double r162746 = r162741 * r162745;
double r162747 = 1.0;
double r162748 = U;
double r162749 = r162743 * r162740;
double r162750 = r162749 * r162745;
double r162751 = r162748 / r162750;
double r162752 = pow(r162751, r162743);
double r162753 = r162747 + r162752;
double r162754 = sqrt(r162753);
double r162755 = r162746 * r162754;
return r162755;
}
double f(double J, double K, double U) {
double r162756 = -2.0;
double r162757 = J;
double r162758 = r162756 * r162757;
double r162759 = K;
double r162760 = 2.0;
double r162761 = r162759 / r162760;
double r162762 = cos(r162761);
double r162763 = 1.0;
double r162764 = sqrt(r162763);
double r162765 = U;
double r162766 = r162760 * r162757;
double r162767 = r162765 / r162766;
double r162768 = r162767 / r162762;
double r162769 = 2.0;
double r162770 = r162760 / r162769;
double r162771 = pow(r162768, r162770);
double r162772 = hypot(r162764, r162771);
double r162773 = r162762 * r162772;
double r162774 = r162758 * r162773;
return r162774;
}



Bits error versus J



Bits error versus K



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