\frac{1}{\sqrt{k}} \cdot {\left(\left(2 \cdot \pi\right) \cdot n\right)}^{\left(\frac{1 - k}{2}\right)}\frac{\frac{\left(\sqrt{2} \cdot \sqrt{\pi}\right) \cdot \sqrt{n}}{{\left(2 \cdot \pi\right)}^{\left(\frac{k}{2}\right)} \cdot {n}^{\left(\frac{k}{2}\right)}}}{\sqrt{k}}(FPCore (k n) :precision binary64 (* (/ 1.0 (sqrt k)) (pow (* (* 2.0 PI) n) (/ (- 1.0 k) 2.0))))
(FPCore (k n) :precision binary64 (/ (/ (* (* (sqrt 2.0) (sqrt PI)) (sqrt n)) (* (pow (* 2.0 PI) (/ k 2.0)) (pow n (/ k 2.0)))) (sqrt k)))
double code(double k, double n) {
return (1.0 / sqrt(k)) * pow(((2.0 * ((double) M_PI)) * n), ((1.0 - k) / 2.0));
}
double code(double k, double n) {
return (((sqrt(2.0) * sqrt((double) M_PI)) * sqrt(n)) / (pow((2.0 * ((double) M_PI)), (k / 2.0)) * pow(n, (k / 2.0)))) / sqrt(k);
}



Bits error versus k



Bits error versus n
Results
Initial program 0.5
Simplified0.5
rmApplied unpow-prod-down_binary64_8390.6
rmApplied div-sub_binary64_7650.6
Applied pow-sub_binary64_8360.5
Applied div-sub_binary64_7650.5
Applied pow-sub_binary64_8360.5
Applied frac-times_binary64_7700.5
Simplified0.5
rmApplied sqrt-prod_binary64_7760.4
Final simplification0.4
herbie shell --seed 2020346
(FPCore (k n)
:name "Migdal et al, Equation (51)"
:precision binary64
(* (/ 1.0 (sqrt k)) (pow (* (* 2.0 PI) n) (/ (- 1.0 k) 2.0))))