\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}}\begin{array}{l}
\mathbf{if}\;\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}} = -\infty \lor \neg \left(\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}} \le 6.6178444095897884 \cdot 10^{306}\right):\\
\;\;\;\;\left(\left(-2 \cdot J\right) \cdot \cos \left(\frac{K}{2}\right)\right) \cdot \frac{\sqrt{0.25} \cdot U}{J \cdot \cos \left(0.5 \cdot K\right)}\\
\mathbf{else}:\\
\;\;\;\;\left(-2 \cdot J\right) \cdot \left(\cos \left(\frac{K}{2}\right) \cdot \sqrt{1 + {\left(\frac{U}{\left(2 \cdot J\right) \cdot \cos \left(\frac{K}{2}\right)}\right)}^{2}}\right)\\
\end{array}double f(double J, double K, double U) {
double r242902 = -2.0;
double r242903 = J;
double r242904 = r242902 * r242903;
double r242905 = K;
double r242906 = 2.0;
double r242907 = r242905 / r242906;
double r242908 = cos(r242907);
double r242909 = r242904 * r242908;
double r242910 = 1.0;
double r242911 = U;
double r242912 = r242906 * r242903;
double r242913 = r242912 * r242908;
double r242914 = r242911 / r242913;
double r242915 = pow(r242914, r242906);
double r242916 = r242910 + r242915;
double r242917 = sqrt(r242916);
double r242918 = r242909 * r242917;
return r242918;
}
double f(double J, double K, double U) {
double r242919 = -2.0;
double r242920 = J;
double r242921 = r242919 * r242920;
double r242922 = K;
double r242923 = 2.0;
double r242924 = r242922 / r242923;
double r242925 = cos(r242924);
double r242926 = r242921 * r242925;
double r242927 = 1.0;
double r242928 = U;
double r242929 = r242923 * r242920;
double r242930 = r242929 * r242925;
double r242931 = r242928 / r242930;
double r242932 = pow(r242931, r242923);
double r242933 = r242927 + r242932;
double r242934 = sqrt(r242933);
double r242935 = r242926 * r242934;
double r242936 = -inf.0;
bool r242937 = r242935 <= r242936;
double r242938 = 6.617844409589788e+306;
bool r242939 = r242935 <= r242938;
double r242940 = !r242939;
bool r242941 = r242937 || r242940;
double r242942 = 0.25;
double r242943 = sqrt(r242942);
double r242944 = r242943 * r242928;
double r242945 = 0.5;
double r242946 = r242945 * r242922;
double r242947 = cos(r242946);
double r242948 = r242920 * r242947;
double r242949 = r242944 / r242948;
double r242950 = r242926 * r242949;
double r242951 = r242925 * r242934;
double r242952 = r242921 * r242951;
double r242953 = r242941 ? r242950 : r242952;
return r242953;
}



Bits error versus J



Bits error versus K



Bits error versus U
Results
if (* (* (* -2.0 J) (cos (/ K 2.0))) (sqrt (+ 1.0 (pow (/ U (* (* 2.0 J) (cos (/ K 2.0)))) 2.0)))) < -inf.0 or 6.617844409589788e+306 < (* (* (* -2.0 J) (cos (/ K 2.0))) (sqrt (+ 1.0 (pow (/ U (* (* 2.0 J) (cos (/ K 2.0)))) 2.0)))) Initial program 63.7
Taylor expanded around inf 46.1
if -inf.0 < (* (* (* -2.0 J) (cos (/ K 2.0))) (sqrt (+ 1.0 (pow (/ U (* (* 2.0 J) (cos (/ K 2.0)))) 2.0)))) < 6.617844409589788e+306Initial program 0.1
rmApplied associate-*l*0.2
Final simplification13.1
herbie shell --seed 2020081
(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)))))