\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 9.5746746081830022 \cdot 10^{297}\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 r238509 = -2.0;
double r238510 = J;
double r238511 = r238509 * r238510;
double r238512 = K;
double r238513 = 2.0;
double r238514 = r238512 / r238513;
double r238515 = cos(r238514);
double r238516 = r238511 * r238515;
double r238517 = 1.0;
double r238518 = U;
double r238519 = r238513 * r238510;
double r238520 = r238519 * r238515;
double r238521 = r238518 / r238520;
double r238522 = pow(r238521, r238513);
double r238523 = r238517 + r238522;
double r238524 = sqrt(r238523);
double r238525 = r238516 * r238524;
return r238525;
}
double f(double J, double K, double U) {
double r238526 = -2.0;
double r238527 = J;
double r238528 = r238526 * r238527;
double r238529 = K;
double r238530 = 2.0;
double r238531 = r238529 / r238530;
double r238532 = cos(r238531);
double r238533 = r238528 * r238532;
double r238534 = 1.0;
double r238535 = U;
double r238536 = r238530 * r238527;
double r238537 = r238536 * r238532;
double r238538 = r238535 / r238537;
double r238539 = pow(r238538, r238530);
double r238540 = r238534 + r238539;
double r238541 = sqrt(r238540);
double r238542 = r238533 * r238541;
double r238543 = -inf.0;
bool r238544 = r238542 <= r238543;
double r238545 = 9.574674608183002e+297;
bool r238546 = r238542 <= r238545;
double r238547 = !r238546;
bool r238548 = r238544 || r238547;
double r238549 = 0.25;
double r238550 = sqrt(r238549);
double r238551 = r238550 * r238535;
double r238552 = 0.5;
double r238553 = r238552 * r238529;
double r238554 = cos(r238553);
double r238555 = r238527 * r238554;
double r238556 = r238551 / r238555;
double r238557 = r238533 * r238556;
double r238558 = r238548 ? r238557 : r238542;
return r238558;
}



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 9.574674608183002e+297 < (* (* (* -2.0 J) (cos (/ K 2.0))) (sqrt (+ 1.0 (pow (/ U (* (* 2.0 J) (cos (/ K 2.0)))) 2.0)))) Initial program 61.8
Taylor expanded around inf 46.4
if -inf.0 < (* (* (* -2.0 J) (cos (/ K 2.0))) (sqrt (+ 1.0 (pow (/ U (* (* 2.0 J) (cos (/ K 2.0)))) 2.0)))) < 9.574674608183002e+297Initial program 0.1
Final simplification13.5
herbie shell --seed 2020089
(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)))))