\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.458749119765806208019423718909134273559 \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(\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}}\\
\end{array}double f(double J, double K, double U) {
double r101139 = -2.0;
double r101140 = J;
double r101141 = r101139 * r101140;
double r101142 = K;
double r101143 = 2.0;
double r101144 = r101142 / r101143;
double r101145 = cos(r101144);
double r101146 = r101141 * r101145;
double r101147 = 1.0;
double r101148 = U;
double r101149 = r101143 * r101140;
double r101150 = r101149 * r101145;
double r101151 = r101148 / r101150;
double r101152 = pow(r101151, r101143);
double r101153 = r101147 + r101152;
double r101154 = sqrt(r101153);
double r101155 = r101146 * r101154;
return r101155;
}
double f(double J, double K, double U) {
double r101156 = -2.0;
double r101157 = J;
double r101158 = r101156 * r101157;
double r101159 = K;
double r101160 = 2.0;
double r101161 = r101159 / r101160;
double r101162 = cos(r101161);
double r101163 = r101158 * r101162;
double r101164 = 1.0;
double r101165 = U;
double r101166 = r101160 * r101157;
double r101167 = r101166 * r101162;
double r101168 = r101165 / r101167;
double r101169 = pow(r101168, r101160);
double r101170 = r101164 + r101169;
double r101171 = sqrt(r101170);
double r101172 = r101163 * r101171;
double r101173 = -inf.0;
bool r101174 = r101172 <= r101173;
double r101175 = 3.458749119765806e+307;
bool r101176 = r101172 <= r101175;
double r101177 = !r101176;
bool r101178 = r101174 || r101177;
double r101179 = 0.25;
double r101180 = sqrt(r101179);
double r101181 = r101180 * r101165;
double r101182 = 0.5;
double r101183 = r101182 * r101159;
double r101184 = cos(r101183);
double r101185 = r101157 * r101184;
double r101186 = r101181 / r101185;
double r101187 = r101163 * r101186;
double r101188 = r101178 ? r101187 : r101172;
return r101188;
}



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.458749119765806e+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 46.0
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.458749119765806e+307Initial program 0.1
Final simplification13.0
herbie shell --seed 2019297
(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)))))