\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} \cdot {\left(\left(2 \cdot \pi\right) \cdot n\right)}^{\left(\frac{k}{2}\right)}}{1 \cdot {\left(\left(2 \cdot \pi\right) \cdot n\right)}^{\left(\frac{1}{2}\right)}}}double f(double k, double n) {
double r167661 = 1.0;
double r167662 = k;
double r167663 = sqrt(r167662);
double r167664 = r167661 / r167663;
double r167665 = 2.0;
double r167666 = atan2(1.0, 0.0);
double r167667 = r167665 * r167666;
double r167668 = n;
double r167669 = r167667 * r167668;
double r167670 = r167661 - r167662;
double r167671 = r167670 / r167665;
double r167672 = pow(r167669, r167671);
double r167673 = r167664 * r167672;
return r167673;
}
double f(double k, double n) {
double r167674 = 1.0;
double r167675 = k;
double r167676 = sqrt(r167675);
double r167677 = 2.0;
double r167678 = atan2(1.0, 0.0);
double r167679 = r167677 * r167678;
double r167680 = n;
double r167681 = r167679 * r167680;
double r167682 = r167675 / r167677;
double r167683 = pow(r167681, r167682);
double r167684 = r167676 * r167683;
double r167685 = 1.0;
double r167686 = r167685 / r167677;
double r167687 = pow(r167681, r167686);
double r167688 = r167685 * r167687;
double r167689 = r167684 / r167688;
double r167690 = r167674 / r167689;
return r167690;
}



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 clear-num0.4
Final simplification0.4
herbie shell --seed 2020047 +o rules:numerics
(FPCore (k n)
:name "Migdal et al, Equation (51)"
:precision binary64
(* (/ 1 (sqrt k)) (pow (* (* 2 PI) n) (/ (- 1 k) 2))))