\frac{1}{\sqrt{k}} \cdot {\left(\left(2 \cdot \pi\right) \cdot n\right)}^{\left(\frac{1 - k}{2}\right)}\frac{{\pi}^{\left(\frac{1}{2} - \frac{k}{2}\right)}}{\sqrt{\sqrt{k}}} \cdot \frac{1}{\frac{\sqrt{\sqrt{k}}}{{\left(2 \cdot n\right)}^{\left(\frac{1}{2} - \frac{k}{2}\right)}}}double f(double k, double n) {
double r2870102 = 1.0;
double r2870103 = k;
double r2870104 = sqrt(r2870103);
double r2870105 = r2870102 / r2870104;
double r2870106 = 2.0;
double r2870107 = atan2(1.0, 0.0);
double r2870108 = r2870106 * r2870107;
double r2870109 = n;
double r2870110 = r2870108 * r2870109;
double r2870111 = r2870102 - r2870103;
double r2870112 = r2870111 / r2870106;
double r2870113 = pow(r2870110, r2870112);
double r2870114 = r2870105 * r2870113;
return r2870114;
}
double f(double k, double n) {
double r2870115 = atan2(1.0, 0.0);
double r2870116 = 0.5;
double r2870117 = k;
double r2870118 = 2.0;
double r2870119 = r2870117 / r2870118;
double r2870120 = r2870116 - r2870119;
double r2870121 = pow(r2870115, r2870120);
double r2870122 = sqrt(r2870117);
double r2870123 = sqrt(r2870122);
double r2870124 = r2870121 / r2870123;
double r2870125 = 1.0;
double r2870126 = n;
double r2870127 = r2870118 * r2870126;
double r2870128 = pow(r2870127, r2870120);
double r2870129 = r2870123 / r2870128;
double r2870130 = r2870125 / r2870129;
double r2870131 = r2870124 * r2870130;
return r2870131;
}



Bits error versus k



Bits error versus n
Results
Initial program 0.4
Simplified0.4
rmApplied add-sqr-sqrt0.4
Applied sqrt-prod0.5
Applied unpow-prod-down0.6
Applied times-frac0.6
rmApplied clear-num0.6
Final simplification0.6
herbie shell --seed 2019152 +o rules:numerics
(FPCore (k n)
:name "Migdal et al, Equation (51)"
(* (/ 1 (sqrt k)) (pow (* (* 2 PI) n) (/ (- 1 k) 2))))