\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.281380710180291348067443154791932971737 \cdot 10^{305}\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 r121272 = -2.0;
double r121273 = J;
double r121274 = r121272 * r121273;
double r121275 = K;
double r121276 = 2.0;
double r121277 = r121275 / r121276;
double r121278 = cos(r121277);
double r121279 = r121274 * r121278;
double r121280 = 1.0;
double r121281 = U;
double r121282 = r121276 * r121273;
double r121283 = r121282 * r121278;
double r121284 = r121281 / r121283;
double r121285 = pow(r121284, r121276);
double r121286 = r121280 + r121285;
double r121287 = sqrt(r121286);
double r121288 = r121279 * r121287;
return r121288;
}
double f(double J, double K, double U) {
double r121289 = -2.0;
double r121290 = J;
double r121291 = r121289 * r121290;
double r121292 = K;
double r121293 = 2.0;
double r121294 = r121292 / r121293;
double r121295 = cos(r121294);
double r121296 = r121291 * r121295;
double r121297 = 1.0;
double r121298 = U;
double r121299 = r121293 * r121290;
double r121300 = r121299 * r121295;
double r121301 = r121298 / r121300;
double r121302 = pow(r121301, r121293);
double r121303 = r121297 + r121302;
double r121304 = sqrt(r121303);
double r121305 = r121296 * r121304;
double r121306 = -inf.0;
bool r121307 = r121305 <= r121306;
double r121308 = 6.281380710180291e+305;
bool r121309 = r121305 <= r121308;
double r121310 = !r121309;
bool r121311 = r121307 || r121310;
double r121312 = 0.25;
double r121313 = sqrt(r121312);
double r121314 = r121313 * r121298;
double r121315 = 0.5;
double r121316 = r121315 * r121292;
double r121317 = cos(r121316);
double r121318 = r121290 * r121317;
double r121319 = r121314 / r121318;
double r121320 = r121296 * r121319;
double r121321 = r121311 ? r121320 : r121305;
return r121321;
}



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.281380710180291e+305 < (* (* (* -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 45.9
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.281380710180291e+305Initial program 0.1
Final simplification12.9
herbie shell --seed 2019353
(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)))))