\frac{1}{\sqrt{k}} \cdot {\left(\left(2 \cdot \pi\right) \cdot n\right)}^{\left(\frac{1 - k}{2}\right)}\frac{{\pi}^{\left(\frac{\frac{1}{2} - \frac{k}{2}}{2}\right)} \cdot \left({\left(\left(n \cdot 2\right) \cdot \pi\right)}^{\left(\frac{\frac{1}{2} - \frac{k}{2}}{2}\right)} \cdot {\left(n \cdot 2\right)}^{\left(\frac{\frac{1}{2} - \frac{k}{2}}{2}\right)}\right)}{\sqrt{k}}double f(double k, double n) {
double r7637681 = 1.0;
double r7637682 = k;
double r7637683 = sqrt(r7637682);
double r7637684 = r7637681 / r7637683;
double r7637685 = 2.0;
double r7637686 = atan2(1.0, 0.0);
double r7637687 = r7637685 * r7637686;
double r7637688 = n;
double r7637689 = r7637687 * r7637688;
double r7637690 = r7637681 - r7637682;
double r7637691 = r7637690 / r7637685;
double r7637692 = pow(r7637689, r7637691);
double r7637693 = r7637684 * r7637692;
return r7637693;
}
double f(double k, double n) {
double r7637694 = atan2(1.0, 0.0);
double r7637695 = 0.5;
double r7637696 = k;
double r7637697 = 2.0;
double r7637698 = r7637696 / r7637697;
double r7637699 = r7637695 - r7637698;
double r7637700 = r7637699 / r7637697;
double r7637701 = pow(r7637694, r7637700);
double r7637702 = n;
double r7637703 = r7637702 * r7637697;
double r7637704 = r7637703 * r7637694;
double r7637705 = pow(r7637704, r7637700);
double r7637706 = pow(r7637703, r7637700);
double r7637707 = r7637705 * r7637706;
double r7637708 = r7637701 * r7637707;
double r7637709 = sqrt(r7637696);
double r7637710 = r7637708 / r7637709;
return r7637710;
}



Bits error versus k



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