\frac{1}{\sqrt{k}} \cdot {\left(\left(2 \cdot \pi\right) \cdot n\right)}^{\left(\frac{1 - k}{2}\right)}\frac{\frac{1}{\sqrt{\sqrt{k}}}}{\frac{\sqrt{\sqrt{k}}}{{\left(\left(2 \cdot \pi\right) \cdot n\right)}^{\left(\frac{1 - k}{2}\right)}}}double f(double k, double n) {
double r154324 = 1.0;
double r154325 = k;
double r154326 = sqrt(r154325);
double r154327 = r154324 / r154326;
double r154328 = 2.0;
double r154329 = atan2(1.0, 0.0);
double r154330 = r154328 * r154329;
double r154331 = n;
double r154332 = r154330 * r154331;
double r154333 = r154324 - r154325;
double r154334 = r154333 / r154328;
double r154335 = pow(r154332, r154334);
double r154336 = r154327 * r154335;
return r154336;
}
double f(double k, double n) {
double r154337 = 1.0;
double r154338 = k;
double r154339 = sqrt(r154338);
double r154340 = sqrt(r154339);
double r154341 = r154337 / r154340;
double r154342 = 2.0;
double r154343 = atan2(1.0, 0.0);
double r154344 = r154342 * r154343;
double r154345 = n;
double r154346 = r154344 * r154345;
double r154347 = r154337 - r154338;
double r154348 = r154347 / r154342;
double r154349 = pow(r154346, r154348);
double r154350 = r154340 / r154349;
double r154351 = r154341 / r154350;
return r154351;
}



Bits error versus k



Bits error versus n
Results
Initial program 0.4
rmApplied associate-*l/0.3
rmApplied clear-num0.4
rmApplied add-sqr-sqrt0.4
Applied sqrt-prod0.5
Applied times-frac0.5
Applied associate-/r*0.5
Simplified0.5
Final simplification0.5
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))))