\frac{1}{\sqrt{k}} \cdot {\left(\left(2 \cdot \pi\right) \cdot n\right)}^{\left(\frac{1 - k}{2}\right)}\left(\frac{1}{\sqrt{k}} \cdot {\left(\left(2 \cdot \pi\right) \cdot n\right)}^{\left(\frac{\frac{1 - k}{2}}{2}\right)}\right) \cdot {\left(\left(2 \cdot \pi\right) \cdot n\right)}^{\left(\frac{\frac{1 - k}{2}}{2}\right)}double f(double k, double n) {
double r110854 = 1.0;
double r110855 = k;
double r110856 = sqrt(r110855);
double r110857 = r110854 / r110856;
double r110858 = 2.0;
double r110859 = atan2(1.0, 0.0);
double r110860 = r110858 * r110859;
double r110861 = n;
double r110862 = r110860 * r110861;
double r110863 = r110854 - r110855;
double r110864 = r110863 / r110858;
double r110865 = pow(r110862, r110864);
double r110866 = r110857 * r110865;
return r110866;
}
double f(double k, double n) {
double r110867 = 1.0;
double r110868 = k;
double r110869 = sqrt(r110868);
double r110870 = r110867 / r110869;
double r110871 = 2.0;
double r110872 = atan2(1.0, 0.0);
double r110873 = r110871 * r110872;
double r110874 = n;
double r110875 = r110873 * r110874;
double r110876 = r110867 - r110868;
double r110877 = r110876 / r110871;
double r110878 = 2.0;
double r110879 = r110877 / r110878;
double r110880 = pow(r110875, r110879);
double r110881 = r110870 * r110880;
double r110882 = r110881 * r110880;
return r110882;
}



Bits error versus k



Bits error versus n
Results
Initial program 0.4
rmApplied sqr-pow0.5
Applied associate-*r*0.5
Final simplification0.5
herbie shell --seed 2019209 +o rules:numerics
(FPCore (k n)
:name "Migdal et al, Equation (51)"
:precision binary64
(* (/ 1 (sqrt k)) (pow (* (* 2 PI) n) (/ (- 1 k) 2))))