\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 3.475832753678374667260809876922009669046 \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 r98065 = -2.0;
double r98066 = J;
double r98067 = r98065 * r98066;
double r98068 = K;
double r98069 = 2.0;
double r98070 = r98068 / r98069;
double r98071 = cos(r98070);
double r98072 = r98067 * r98071;
double r98073 = 1.0;
double r98074 = U;
double r98075 = r98069 * r98066;
double r98076 = r98075 * r98071;
double r98077 = r98074 / r98076;
double r98078 = pow(r98077, r98069);
double r98079 = r98073 + r98078;
double r98080 = sqrt(r98079);
double r98081 = r98072 * r98080;
return r98081;
}
double f(double J, double K, double U) {
double r98082 = -2.0;
double r98083 = J;
double r98084 = r98082 * r98083;
double r98085 = K;
double r98086 = 2.0;
double r98087 = r98085 / r98086;
double r98088 = cos(r98087);
double r98089 = r98084 * r98088;
double r98090 = 1.0;
double r98091 = U;
double r98092 = r98086 * r98083;
double r98093 = r98092 * r98088;
double r98094 = r98091 / r98093;
double r98095 = pow(r98094, r98086);
double r98096 = r98090 + r98095;
double r98097 = sqrt(r98096);
double r98098 = r98089 * r98097;
double r98099 = -inf.0;
bool r98100 = r98098 <= r98099;
double r98101 = 3.4758327536783747e+306;
bool r98102 = r98098 <= r98101;
double r98103 = !r98102;
bool r98104 = r98100 || r98103;
double r98105 = 0.25;
double r98106 = sqrt(r98105);
double r98107 = r98106 * r98091;
double r98108 = 0.5;
double r98109 = r98108 * r98085;
double r98110 = cos(r98109);
double r98111 = r98083 * r98110;
double r98112 = r98107 / r98111;
double r98113 = r98089 * r98112;
double r98114 = r98088 * r98097;
double r98115 = r98084 * r98114;
double r98116 = r98104 ? r98113 : r98115;
return r98116;
}



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 3.4758327536783747e+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.6
Taylor expanded around inf 46.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)))) < 3.4758327536783747e+306Initial program 0.1
rmApplied associate-*l*0.2
Final simplification13.2
herbie shell --seed 2019308
(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)))))