\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 7.498348991702614734003739977816297903715 \cdot 10^{307}\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 r116877 = -2.0;
double r116878 = J;
double r116879 = r116877 * r116878;
double r116880 = K;
double r116881 = 2.0;
double r116882 = r116880 / r116881;
double r116883 = cos(r116882);
double r116884 = r116879 * r116883;
double r116885 = 1.0;
double r116886 = U;
double r116887 = r116881 * r116878;
double r116888 = r116887 * r116883;
double r116889 = r116886 / r116888;
double r116890 = pow(r116889, r116881);
double r116891 = r116885 + r116890;
double r116892 = sqrt(r116891);
double r116893 = r116884 * r116892;
return r116893;
}
double f(double J, double K, double U) {
double r116894 = -2.0;
double r116895 = J;
double r116896 = r116894 * r116895;
double r116897 = K;
double r116898 = 2.0;
double r116899 = r116897 / r116898;
double r116900 = cos(r116899);
double r116901 = r116896 * r116900;
double r116902 = 1.0;
double r116903 = U;
double r116904 = r116898 * r116895;
double r116905 = r116904 * r116900;
double r116906 = r116903 / r116905;
double r116907 = pow(r116906, r116898);
double r116908 = r116902 + r116907;
double r116909 = sqrt(r116908);
double r116910 = r116901 * r116909;
double r116911 = -inf.0;
bool r116912 = r116910 <= r116911;
double r116913 = 7.498348991702615e+307;
bool r116914 = r116910 <= r116913;
double r116915 = !r116914;
bool r116916 = r116912 || r116915;
double r116917 = 0.25;
double r116918 = sqrt(r116917);
double r116919 = r116918 * r116903;
double r116920 = 0.5;
double r116921 = r116920 * r116897;
double r116922 = cos(r116921);
double r116923 = r116895 * r116922;
double r116924 = r116919 / r116923;
double r116925 = r116901 * r116924;
double r116926 = r116900 * r116909;
double r116927 = r116896 * r116926;
double r116928 = r116916 ? r116925 : r116927;
return r116928;
}



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 7.498348991702615e+307 < (* (* (* -2.0 J) (cos (/ K 2.0))) (sqrt (+ 1.0 (pow (/ U (* (* 2.0 J) (cos (/ K 2.0)))) 2.0)))) Initial program 63.9
Taylor expanded around inf 45.3
if -inf.0 < (* (* (* -2.0 J) (cos (/ K 2.0))) (sqrt (+ 1.0 (pow (/ U (* (* 2.0 J) (cos (/ K 2.0)))) 2.0)))) < 7.498348991702615e+307Initial program 0.1
rmApplied associate-*l*0.2
Final simplification13.0
herbie shell --seed 2019326
(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)))))