\frac{1}{\sqrt{k}} \cdot {\left(\left(2 \cdot \pi\right) \cdot n\right)}^{\left(\frac{1 - k}{2}\right)}\frac{\frac{{\left(\left(2 \cdot \pi\right) \cdot n\right)}^{\left(2 \cdot \frac{\frac{1}{2}}{2}\right)}}{\frac{\sqrt{k}}{1}}}{{\left(\left(2 \cdot \pi\right) \cdot n\right)}^{\left(\frac{k}{2}\right)}}double f(double k, double n) {
double r142676 = 1.0;
double r142677 = k;
double r142678 = sqrt(r142677);
double r142679 = r142676 / r142678;
double r142680 = 2.0;
double r142681 = atan2(1.0, 0.0);
double r142682 = r142680 * r142681;
double r142683 = n;
double r142684 = r142682 * r142683;
double r142685 = r142676 - r142677;
double r142686 = r142685 / r142680;
double r142687 = pow(r142684, r142686);
double r142688 = r142679 * r142687;
return r142688;
}
double f(double k, double n) {
double r142689 = 2.0;
double r142690 = atan2(1.0, 0.0);
double r142691 = r142689 * r142690;
double r142692 = n;
double r142693 = r142691 * r142692;
double r142694 = 2.0;
double r142695 = 1.0;
double r142696 = r142695 / r142689;
double r142697 = r142696 / r142694;
double r142698 = r142694 * r142697;
double r142699 = pow(r142693, r142698);
double r142700 = k;
double r142701 = sqrt(r142700);
double r142702 = r142701 / r142695;
double r142703 = r142699 / r142702;
double r142704 = r142700 / r142689;
double r142705 = pow(r142693, r142704);
double r142706 = r142703 / r142705;
return r142706;
}



Bits error versus k



Bits error versus n
Results
Initial program 0.5
rmApplied div-sub0.5
Applied pow-sub0.4
Applied frac-times0.4
rmApplied add-sqr-sqrt0.4
Applied associate-*r*0.4
rmApplied associate-/r*0.4
Simplified0.4
Final simplification0.4
herbie shell --seed 2020062
(FPCore (k n)
:name "Migdal et al, Equation (51)"
:precision binary64
(* (/ 1 (sqrt k)) (pow (* (* 2 PI) n) (/ (- 1 k) 2))))