\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(\sqrt{1 + \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)}} \cdot \left(\cos \left(\frac{K}{2}\right) \cdot -2\right)\right) \cdot Jdouble f(double J, double K, double U) {
double r2213815 = -2.0;
double r2213816 = J;
double r2213817 = r2213815 * r2213816;
double r2213818 = K;
double r2213819 = 2.0;
double r2213820 = r2213818 / r2213819;
double r2213821 = cos(r2213820);
double r2213822 = r2213817 * r2213821;
double r2213823 = 1.0;
double r2213824 = U;
double r2213825 = r2213819 * r2213816;
double r2213826 = r2213825 * r2213821;
double r2213827 = r2213824 / r2213826;
double r2213828 = pow(r2213827, r2213819);
double r2213829 = r2213823 + r2213828;
double r2213830 = sqrt(r2213829);
double r2213831 = r2213822 * r2213830;
return r2213831;
}
double f(double J, double K, double U) {
double r2213832 = 1.0;
double r2213833 = U;
double r2213834 = 2.0;
double r2213835 = J;
double r2213836 = r2213834 * r2213835;
double r2213837 = K;
double r2213838 = r2213837 / r2213834;
double r2213839 = cos(r2213838);
double r2213840 = r2213836 * r2213839;
double r2213841 = r2213833 / r2213840;
double r2213842 = r2213841 * r2213841;
double r2213843 = r2213832 + r2213842;
double r2213844 = sqrt(r2213843);
double r2213845 = -2.0;
double r2213846 = r2213839 * r2213845;
double r2213847 = r2213844 * r2213846;
double r2213848 = r2213847 * r2213835;
return r2213848;
}



Bits error versus J



Bits error versus K



Bits error versus U
Results
Initial program 17.9
Simplified17.9
rmApplied associate-*l*17.9
Final simplification17.9
herbie shell --seed 2019153
(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)))))