\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}}\left(-2 \cdot J\right) \cdot \left(\cos \left(\frac{K}{2}\right) \cdot \mathsf{hypot}\left(\sqrt{1}, {\left(\frac{\frac{U}{2 \cdot J}}{\cos \left(\frac{K}{2}\right)}\right)}^{\left(\frac{2}{2}\right)}\right)\right)double f(double J, double K, double U) {
double r264030 = -2.0;
double r264031 = J;
double r264032 = r264030 * r264031;
double r264033 = K;
double r264034 = 2.0;
double r264035 = r264033 / r264034;
double r264036 = cos(r264035);
double r264037 = r264032 * r264036;
double r264038 = 1.0;
double r264039 = U;
double r264040 = r264034 * r264031;
double r264041 = r264040 * r264036;
double r264042 = r264039 / r264041;
double r264043 = pow(r264042, r264034);
double r264044 = r264038 + r264043;
double r264045 = sqrt(r264044);
double r264046 = r264037 * r264045;
return r264046;
}
double f(double J, double K, double U) {
double r264047 = -2.0;
double r264048 = J;
double r264049 = r264047 * r264048;
double r264050 = K;
double r264051 = 2.0;
double r264052 = r264050 / r264051;
double r264053 = cos(r264052);
double r264054 = 1.0;
double r264055 = sqrt(r264054);
double r264056 = U;
double r264057 = r264051 * r264048;
double r264058 = r264056 / r264057;
double r264059 = r264058 / r264053;
double r264060 = 2.0;
double r264061 = r264051 / r264060;
double r264062 = pow(r264059, r264061);
double r264063 = hypot(r264055, r264062);
double r264064 = r264053 * r264063;
double r264065 = r264049 * r264064;
return r264065;
}



Bits error versus J



Bits error versus K



Bits error versus U
Results
Initial program 18.6
rmApplied sqr-pow18.6
Applied add-sqr-sqrt18.6
Applied hypot-def8.2
rmApplied associate-*l*8.3
rmApplied associate-/r*8.2
Final simplification8.2
herbie shell --seed 2019347 +o rules:numerics
(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)))))