\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 1.0361340039041615 \cdot 10^{294}\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(\left(-2 \cdot J\right) \cdot \cos \left(\frac{K}{2}\right)\right) \cdot \sqrt{\sqrt{1 + {\left(\frac{U}{\left(2 \cdot J\right) \cdot \cos \left(\frac{K}{2}\right)}\right)}^{2}}}\right) \cdot \sqrt{\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 r179202 = -2.0;
double r179203 = J;
double r179204 = r179202 * r179203;
double r179205 = K;
double r179206 = 2.0;
double r179207 = r179205 / r179206;
double r179208 = cos(r179207);
double r179209 = r179204 * r179208;
double r179210 = 1.0;
double r179211 = U;
double r179212 = r179206 * r179203;
double r179213 = r179212 * r179208;
double r179214 = r179211 / r179213;
double r179215 = pow(r179214, r179206);
double r179216 = r179210 + r179215;
double r179217 = sqrt(r179216);
double r179218 = r179209 * r179217;
return r179218;
}
double f(double J, double K, double U) {
double r179219 = -2.0;
double r179220 = J;
double r179221 = r179219 * r179220;
double r179222 = K;
double r179223 = 2.0;
double r179224 = r179222 / r179223;
double r179225 = cos(r179224);
double r179226 = r179221 * r179225;
double r179227 = 1.0;
double r179228 = U;
double r179229 = r179223 * r179220;
double r179230 = r179229 * r179225;
double r179231 = r179228 / r179230;
double r179232 = pow(r179231, r179223);
double r179233 = r179227 + r179232;
double r179234 = sqrt(r179233);
double r179235 = r179226 * r179234;
double r179236 = -inf.0;
bool r179237 = r179235 <= r179236;
double r179238 = 1.0361340039041615e+294;
bool r179239 = r179235 <= r179238;
double r179240 = !r179239;
bool r179241 = r179237 || r179240;
double r179242 = 0.25;
double r179243 = sqrt(r179242);
double r179244 = r179243 * r179228;
double r179245 = 0.5;
double r179246 = r179245 * r179222;
double r179247 = cos(r179246);
double r179248 = r179220 * r179247;
double r179249 = r179244 / r179248;
double r179250 = r179226 * r179249;
double r179251 = sqrt(r179234);
double r179252 = r179226 * r179251;
double r179253 = r179252 * r179251;
double r179254 = r179241 ? r179250 : r179253;
return r179254;
}



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 1.0361340039041615e+294 < (* (* (* -2.0 J) (cos (/ K 2.0))) (sqrt (+ 1.0 (pow (/ U (* (* 2.0 J) (cos (/ K 2.0)))) 2.0)))) Initial program 61.2
Taylor expanded around inf 47.2
if -inf.0 < (* (* (* -2.0 J) (cos (/ K 2.0))) (sqrt (+ 1.0 (pow (/ U (* (* 2.0 J) (cos (/ K 2.0)))) 2.0)))) < 1.0361340039041615e+294Initial program 0.1
rmApplied add-sqr-sqrt0.1
Applied sqrt-prod0.2
Applied associate-*r*0.2
Final simplification14.3
herbie shell --seed 2020024
(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)))))