\frac{1}{\sqrt{k}} \cdot {\left(\left(2 \cdot \pi\right) \cdot n\right)}^{\left(\frac{1 - k}{2}\right)}\frac{{\left(\sqrt{\pi} \cdot \left(n \cdot 2\right)\right)}^{\left(\frac{1}{2} - \frac{k}{2}\right)}}{\frac{\sqrt{k}}{{\left(\sqrt{\pi}\right)}^{\left(\frac{1}{2} - \frac{k}{2}\right)}}}double f(double k, double n) {
double r4826448 = 1.0;
double r4826449 = k;
double r4826450 = sqrt(r4826449);
double r4826451 = r4826448 / r4826450;
double r4826452 = 2.0;
double r4826453 = atan2(1.0, 0.0);
double r4826454 = r4826452 * r4826453;
double r4826455 = n;
double r4826456 = r4826454 * r4826455;
double r4826457 = r4826448 - r4826449;
double r4826458 = r4826457 / r4826452;
double r4826459 = pow(r4826456, r4826458);
double r4826460 = r4826451 * r4826459;
return r4826460;
}
double f(double k, double n) {
double r4826461 = atan2(1.0, 0.0);
double r4826462 = sqrt(r4826461);
double r4826463 = n;
double r4826464 = 2.0;
double r4826465 = r4826463 * r4826464;
double r4826466 = r4826462 * r4826465;
double r4826467 = 0.5;
double r4826468 = k;
double r4826469 = r4826468 / r4826464;
double r4826470 = r4826467 - r4826469;
double r4826471 = pow(r4826466, r4826470);
double r4826472 = sqrt(r4826468);
double r4826473 = pow(r4826462, r4826470);
double r4826474 = r4826472 / r4826473;
double r4826475 = r4826471 / r4826474;
return r4826475;
}



Bits error versus k



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