Average Error: 0.4 → 0.3
Time: 1.6m
Precision: 64
\[\frac{1}{\sqrt{k}} \cdot {\left(\left(2 \cdot \pi\right) \cdot n\right)}^{\left(\frac{1 - k}{2}\right)}\]
\[{\left(\left(2 \cdot \pi\right) \cdot n\right)}^{\left(\frac{1 - k}{2}\right)} \cdot {k}^{\frac{-1}{2}}\]
double f(double k, double n) {
        double r12193282 = 1.0;
        double r12193283 = k;
        double r12193284 = sqrt(r12193283);
        double r12193285 = r12193282 / r12193284;
        double r12193286 = 2.0;
        double r12193287 = atan2(1.0, 0.0);
        double r12193288 = r12193286 * r12193287;
        double r12193289 = n;
        double r12193290 = r12193288 * r12193289;
        double r12193291 = r12193282 - r12193283;
        double r12193292 = r12193291 / r12193286;
        double r12193293 = pow(r12193290, r12193292);
        double r12193294 = r12193285 * r12193293;
        return r12193294;
}

double f(double k, double n) {
        double r12193295 = 2.0;
        double r12193296 = atan2(1.0, 0.0);
        double r12193297 = r12193295 * r12193296;
        double r12193298 = n;
        double r12193299 = r12193297 * r12193298;
        double r12193300 = 1.0;
        double r12193301 = k;
        double r12193302 = r12193300 - r12193301;
        double r12193303 = r12193302 / r12193295;
        double r12193304 = pow(r12193299, r12193303);
        double r12193305 = -0.5;
        double r12193306 = pow(r12193301, r12193305);
        double r12193307 = r12193304 * r12193306;
        return r12193307;
}

\frac{1}{\sqrt{k}} \cdot {\left(\left(2 \cdot \pi\right) \cdot n\right)}^{\left(\frac{1 - k}{2}\right)}
{\left(\left(2 \cdot \pi\right) \cdot n\right)}^{\left(\frac{1 - k}{2}\right)} \cdot {k}^{\frac{-1}{2}}

Error

Bits error versus k

Bits error versus n

Derivation

  1. Initial program 0.4

    \[\frac{1}{\sqrt{k}} \cdot {\left(\left(2 \cdot \pi\right) \cdot n\right)}^{\left(\frac{1 - k}{2}\right)}\]
  2. Using strategy rm
  3. Applied pow1/20.4

    \[\leadsto \frac{1}{\color{blue}{{k}^{\frac{1}{2}}}} \cdot {\left(\left(2 \cdot \pi\right) \cdot n\right)}^{\left(\frac{1 - k}{2}\right)}\]
  4. Applied pow-flip0.3

    \[\leadsto \color{blue}{{k}^{\left(-\frac{1}{2}\right)}} \cdot {\left(\left(2 \cdot \pi\right) \cdot n\right)}^{\left(\frac{1 - k}{2}\right)}\]
  5. Simplified0.3

    \[\leadsto {k}^{\color{blue}{\frac{-1}{2}}} \cdot {\left(\left(2 \cdot \pi\right) \cdot n\right)}^{\left(\frac{1 - k}{2}\right)}\]
  6. Final simplification0.3

    \[\leadsto {\left(\left(2 \cdot \pi\right) \cdot n\right)}^{\left(\frac{1 - k}{2}\right)} \cdot {k}^{\frac{-1}{2}}\]

Reproduce

herbie shell --seed 2019101 
(FPCore (k n)
  :name "Migdal et al, Equation (51)"
  (* (/ 1 (sqrt k)) (pow (* (* 2 PI) n) (/ (- 1 k) 2))))