\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(\left(\left(-2 \cdot J\right) \cdot \left(\sqrt[3]{\cos \left(\frac{K}{2}\right)} \cdot \sqrt[3]{\cos \left(\frac{K}{2}\right)}\right)\right) \cdot \sqrt[3]{\cos \left(\frac{K}{2}\right)}\right) \cdot \mathsf{hypot}\left(\sqrt{1}, {\left(\frac{U}{\left(2 \cdot J\right) \cdot \cos \left(\frac{K}{2}\right)}\right)}^{\left(\frac{2}{2}\right)}\right)double f(double J, double K, double U) {
double r187698 = -2.0;
double r187699 = J;
double r187700 = r187698 * r187699;
double r187701 = K;
double r187702 = 2.0;
double r187703 = r187701 / r187702;
double r187704 = cos(r187703);
double r187705 = r187700 * r187704;
double r187706 = 1.0;
double r187707 = U;
double r187708 = r187702 * r187699;
double r187709 = r187708 * r187704;
double r187710 = r187707 / r187709;
double r187711 = pow(r187710, r187702);
double r187712 = r187706 + r187711;
double r187713 = sqrt(r187712);
double r187714 = r187705 * r187713;
return r187714;
}
double f(double J, double K, double U) {
double r187715 = -2.0;
double r187716 = J;
double r187717 = r187715 * r187716;
double r187718 = K;
double r187719 = 2.0;
double r187720 = r187718 / r187719;
double r187721 = cos(r187720);
double r187722 = cbrt(r187721);
double r187723 = r187722 * r187722;
double r187724 = r187717 * r187723;
double r187725 = r187724 * r187722;
double r187726 = 1.0;
double r187727 = sqrt(r187726);
double r187728 = U;
double r187729 = r187719 * r187716;
double r187730 = r187729 * r187721;
double r187731 = r187728 / r187730;
double r187732 = 2.0;
double r187733 = r187719 / r187732;
double r187734 = pow(r187731, r187733);
double r187735 = hypot(r187727, r187734);
double r187736 = r187725 * r187735;
return r187736;
}



Bits error versus J



Bits error versus K



Bits error versus U
Results
Initial program 18.3
rmApplied sqr-pow18.3
Applied add-sqr-sqrt18.3
Applied hypot-def8.5
rmApplied add-cube-cbrt8.5
Applied associate-*r*8.5
Final simplification8.5
herbie shell --seed 2020024 +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)))))