\frac{1}{\sqrt{k}} \cdot {\left(\left(2 \cdot \pi\right) \cdot n\right)}^{\left(\frac{1 - k}{2}\right)}\left(\frac{1}{\sqrt{\sqrt{k}}} \cdot \frac{1}{\sqrt{\sqrt{k}}}\right) \cdot {\left(\left(2 \cdot \pi\right) \cdot n\right)}^{\left(\frac{1 - k}{2}\right)}double f(double k, double n) {
double r128949 = 1.0;
double r128950 = k;
double r128951 = sqrt(r128950);
double r128952 = r128949 / r128951;
double r128953 = 2.0;
double r128954 = atan2(1.0, 0.0);
double r128955 = r128953 * r128954;
double r128956 = n;
double r128957 = r128955 * r128956;
double r128958 = r128949 - r128950;
double r128959 = r128958 / r128953;
double r128960 = pow(r128957, r128959);
double r128961 = r128952 * r128960;
return r128961;
}
double f(double k, double n) {
double r128962 = 1.0;
double r128963 = k;
double r128964 = sqrt(r128963);
double r128965 = sqrt(r128964);
double r128966 = r128962 / r128965;
double r128967 = 1.0;
double r128968 = r128967 / r128965;
double r128969 = r128966 * r128968;
double r128970 = 2.0;
double r128971 = atan2(1.0, 0.0);
double r128972 = r128970 * r128971;
double r128973 = n;
double r128974 = r128972 * r128973;
double r128975 = r128967 - r128963;
double r128976 = r128975 / r128970;
double r128977 = pow(r128974, r128976);
double r128978 = r128969 * r128977;
return r128978;
}



Bits error versus k



Bits error versus n
Results
Initial program 0.4
rmApplied add-sqr-sqrt0.4
Applied sqrt-prod0.5
Applied *-un-lft-identity0.5
Applied times-frac0.5
Final simplification0.5
herbie shell --seed 2019351 +o rules:numerics
(FPCore (k n)
:name "Migdal et al, Equation (51)"
:precision binary64
(* (/ 1 (sqrt k)) (pow (* (* 2 PI) n) (/ (- 1 k) 2))))