\frac{1}{\sqrt{k}} \cdot {\left(\left(2 \cdot \pi\right) \cdot n\right)}^{\left(\frac{1 - k}{2}\right)}\frac{{n}^{\left(\frac{1 - k}{2}\right)}}{\frac{\sqrt{k}}{{\pi}^{\left(\frac{1 - k}{2}\right)}}} \cdot {2}^{\left(\frac{1 - k}{2}\right)}double f(double k, double n) {
double r36593858 = 1.0;
double r36593859 = k;
double r36593860 = sqrt(r36593859);
double r36593861 = r36593858 / r36593860;
double r36593862 = 2.0;
double r36593863 = atan2(1.0, 0.0);
double r36593864 = r36593862 * r36593863;
double r36593865 = n;
double r36593866 = r36593864 * r36593865;
double r36593867 = r36593858 - r36593859;
double r36593868 = r36593867 / r36593862;
double r36593869 = pow(r36593866, r36593868);
double r36593870 = r36593861 * r36593869;
return r36593870;
}
double f(double k, double n) {
double r36593871 = n;
double r36593872 = 1.0;
double r36593873 = k;
double r36593874 = r36593872 - r36593873;
double r36593875 = 2.0;
double r36593876 = r36593874 / r36593875;
double r36593877 = pow(r36593871, r36593876);
double r36593878 = sqrt(r36593873);
double r36593879 = atan2(1.0, 0.0);
double r36593880 = pow(r36593879, r36593876);
double r36593881 = r36593878 / r36593880;
double r36593882 = r36593877 / r36593881;
double r36593883 = pow(r36593875, r36593876);
double r36593884 = r36593882 * r36593883;
return r36593884;
}



Bits error versus k



Bits error versus n
Results
Initial program 0.4
Simplified0.3
rmApplied unpow-prod-down0.5
Applied associate-/l*0.5
rmApplied unpow-prod-down0.5
Applied *-un-lft-identity0.5
Applied sqrt-prod0.5
Applied times-frac0.4
Applied *-un-lft-identity0.4
Applied times-frac0.4
Simplified0.4
Final simplification0.4
herbie shell --seed 2019121
(FPCore (k n)
:name "Migdal et al, Equation (51)"
(* (/ 1 (sqrt k)) (pow (* (* 2 PI) n) (/ (- 1 k) 2))))