\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}}\sqrt{\frac{U}{\left(2 \cdot J\right) \cdot \cos \left(\frac{K}{2}\right)} \cdot \frac{U}{\left(2 \cdot J\right) \cdot \cos \left(\frac{K}{2}\right)} + 1} \cdot \left(J \cdot \left(\cos \left(\frac{K}{2}\right) \cdot -2\right)\right)double f(double J, double K, double U) {
double r2304154 = -2.0;
double r2304155 = J;
double r2304156 = r2304154 * r2304155;
double r2304157 = K;
double r2304158 = 2.0;
double r2304159 = r2304157 / r2304158;
double r2304160 = cos(r2304159);
double r2304161 = r2304156 * r2304160;
double r2304162 = 1.0;
double r2304163 = U;
double r2304164 = r2304158 * r2304155;
double r2304165 = r2304164 * r2304160;
double r2304166 = r2304163 / r2304165;
double r2304167 = pow(r2304166, r2304158);
double r2304168 = r2304162 + r2304167;
double r2304169 = sqrt(r2304168);
double r2304170 = r2304161 * r2304169;
return r2304170;
}
double f(double J, double K, double U) {
double r2304171 = U;
double r2304172 = 2.0;
double r2304173 = J;
double r2304174 = r2304172 * r2304173;
double r2304175 = K;
double r2304176 = r2304175 / r2304172;
double r2304177 = cos(r2304176);
double r2304178 = r2304174 * r2304177;
double r2304179 = r2304171 / r2304178;
double r2304180 = r2304179 * r2304179;
double r2304181 = 1.0;
double r2304182 = r2304180 + r2304181;
double r2304183 = sqrt(r2304182);
double r2304184 = -2.0;
double r2304185 = r2304177 * r2304184;
double r2304186 = r2304173 * r2304185;
double r2304187 = r2304183 * r2304186;
return r2304187;
}



Bits error versus J



Bits error versus K



Bits error versus U
Results
Initial program 16.9
Simplified16.9
Final simplification16.9
herbie shell --seed 2019155
(FPCore (J K U)
:name "Maksimov and Kolovsky, Equation (3)"
(* (* (* -2 J) (cos (/ K 2))) (sqrt (+ 1 (pow (/ U (* (* 2 J) (cos (/ K 2)))) 2)))))