\frac{1}{\sqrt{k}} \cdot {\left(\left(2 \cdot \pi\right) \cdot n\right)}^{\left(\frac{1 - k}{2}\right)}\frac{\frac{{\left(\left(\pi \cdot 2\right) \cdot n\right)}^{\left(\frac{1 - k}{2}\right)}}{\sqrt{\sqrt{k}}}}{\sqrt{\sqrt{k}}}double f(double k, double n) {
double r78743887 = 1.0;
double r78743888 = k;
double r78743889 = sqrt(r78743888);
double r78743890 = r78743887 / r78743889;
double r78743891 = 2.0;
double r78743892 = atan2(1.0, 0.0);
double r78743893 = r78743891 * r78743892;
double r78743894 = n;
double r78743895 = r78743893 * r78743894;
double r78743896 = r78743887 - r78743888;
double r78743897 = r78743896 / r78743891;
double r78743898 = pow(r78743895, r78743897);
double r78743899 = r78743890 * r78743898;
return r78743899;
}
double f(double k, double n) {
double r78743900 = atan2(1.0, 0.0);
double r78743901 = 2.0;
double r78743902 = r78743900 * r78743901;
double r78743903 = n;
double r78743904 = r78743902 * r78743903;
double r78743905 = 1.0;
double r78743906 = k;
double r78743907 = r78743905 - r78743906;
double r78743908 = r78743907 / r78743901;
double r78743909 = pow(r78743904, r78743908);
double r78743910 = sqrt(r78743906);
double r78743911 = sqrt(r78743910);
double r78743912 = r78743909 / r78743911;
double r78743913 = r78743912 / r78743911;
return r78743913;
}



Bits error versus k



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