\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.971607601044754258030554284381095355808 \cdot 10^{301}\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 r146166 = -2.0;
double r146167 = J;
double r146168 = r146166 * r146167;
double r146169 = K;
double r146170 = 2.0;
double r146171 = r146169 / r146170;
double r146172 = cos(r146171);
double r146173 = r146168 * r146172;
double r146174 = 1.0;
double r146175 = U;
double r146176 = r146170 * r146167;
double r146177 = r146176 * r146172;
double r146178 = r146175 / r146177;
double r146179 = pow(r146178, r146170);
double r146180 = r146174 + r146179;
double r146181 = sqrt(r146180);
double r146182 = r146173 * r146181;
return r146182;
}
double f(double J, double K, double U) {
double r146183 = -2.0;
double r146184 = J;
double r146185 = r146183 * r146184;
double r146186 = K;
double r146187 = 2.0;
double r146188 = r146186 / r146187;
double r146189 = cos(r146188);
double r146190 = r146185 * r146189;
double r146191 = 1.0;
double r146192 = U;
double r146193 = r146187 * r146184;
double r146194 = r146193 * r146189;
double r146195 = r146192 / r146194;
double r146196 = pow(r146195, r146187);
double r146197 = r146191 + r146196;
double r146198 = sqrt(r146197);
double r146199 = r146190 * r146198;
double r146200 = -inf.0;
bool r146201 = r146199 <= r146200;
double r146202 = 1.9716076010447543e+301;
bool r146203 = r146199 <= r146202;
double r146204 = !r146203;
bool r146205 = r146201 || r146204;
double r146206 = 0.25;
double r146207 = sqrt(r146206);
double r146208 = r146207 * r146192;
double r146209 = 0.5;
double r146210 = r146209 * r146186;
double r146211 = cos(r146210);
double r146212 = r146184 * r146211;
double r146213 = r146208 / r146212;
double r146214 = r146190 * r146213;
double r146215 = r146189 * r146198;
double r146216 = r146185 * r146215;
double r146217 = r146205 ? r146214 : r146216;
return r146217;
}



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.9716076010447543e+301 < (* (* (* -2.0 J) (cos (/ K 2.0))) (sqrt (+ 1.0 (pow (/ U (* (* 2.0 J) (cos (/ K 2.0)))) 2.0)))) Initial program 62.3
Taylor expanded around inf 46.1
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.9716076010447543e+301Initial program 0.1
rmApplied associate-*l*0.2
Final simplification13.3
herbie shell --seed 2020001
(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)))))