\frac{1}{\sqrt{k}} \cdot {\left(\left(2 \cdot \pi\right) \cdot n\right)}^{\left(\frac{1 - k}{2}\right)}\frac{1}{\frac{\sqrt{k}}{{\left({\left(n \cdot \left(2 \cdot \pi\right)\right)}^{\left(1 + \sqrt{k}\right)}\right)}^{\left(\frac{1 - \sqrt{k}}{2}\right)}}}double f(double k, double n) {
double r25674629 = 1.0;
double r25674630 = k;
double r25674631 = sqrt(r25674630);
double r25674632 = r25674629 / r25674631;
double r25674633 = 2.0;
double r25674634 = atan2(1.0, 0.0);
double r25674635 = r25674633 * r25674634;
double r25674636 = n;
double r25674637 = r25674635 * r25674636;
double r25674638 = r25674629 - r25674630;
double r25674639 = r25674638 / r25674633;
double r25674640 = pow(r25674637, r25674639);
double r25674641 = r25674632 * r25674640;
return r25674641;
}
double f(double k, double n) {
double r25674642 = 1.0;
double r25674643 = k;
double r25674644 = sqrt(r25674643);
double r25674645 = n;
double r25674646 = 2.0;
double r25674647 = atan2(1.0, 0.0);
double r25674648 = r25674646 * r25674647;
double r25674649 = r25674645 * r25674648;
double r25674650 = r25674642 + r25674644;
double r25674651 = pow(r25674649, r25674650);
double r25674652 = r25674642 - r25674644;
double r25674653 = r25674652 / r25674646;
double r25674654 = pow(r25674651, r25674653);
double r25674655 = r25674644 / r25674654;
double r25674656 = r25674642 / r25674655;
return r25674656;
}



Bits error versus k



Bits error versus n
Results
Initial program 0.4
Simplified0.4
rmApplied *-un-lft-identity0.4
Applied add-sqr-sqrt0.4
Applied *-un-lft-identity0.4
Applied difference-of-squares0.5
Applied times-frac0.5
Applied pow-unpow0.9
rmApplied *-un-lft-identity0.9
Applied unpow-prod-down0.9
Applied associate-/l*1.0
Simplified1.0
Final simplification1.0
herbie shell --seed 2019107
(FPCore (k n)
:name "Migdal et al, Equation (51)"
(* (/ 1 (sqrt k)) (pow (* (* 2 PI) n) (/ (- 1 k) 2))))