Average Error: 0.4 → 0.4
Time: 2.3m
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}}\]
\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 r5820791 = 1.0;
        double r5820792 = k;
        double r5820793 = sqrt(r5820792);
        double r5820794 = r5820791 / r5820793;
        double r5820795 = 2.0;
        double r5820796 = atan2(1.0, 0.0);
        double r5820797 = r5820795 * r5820796;
        double r5820798 = n;
        double r5820799 = r5820797 * r5820798;
        double r5820800 = r5820791 - r5820792;
        double r5820801 = r5820800 / r5820795;
        double r5820802 = pow(r5820799, r5820801);
        double r5820803 = r5820794 * r5820802;
        return r5820803;
}

double f(double k, double n) {
        double r5820804 = 2.0;
        double r5820805 = atan2(1.0, 0.0);
        double r5820806 = r5820804 * r5820805;
        double r5820807 = n;
        double r5820808 = r5820806 * r5820807;
        double r5820809 = 1.0;
        double r5820810 = k;
        double r5820811 = r5820809 - r5820810;
        double r5820812 = r5820811 / r5820804;
        double r5820813 = pow(r5820808, r5820812);
        double r5820814 = -0.5;
        double r5820815 = pow(r5820810, r5820814);
        double r5820816 = r5820813 * r5820815;
        return r5820816;
}

Error

Bits error versus k

Bits error versus n

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

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 pow10.4

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

    \[\leadsto \frac{1}{\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. Applied pow-flip0.4

    \[\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)}\]
  6. Simplified0.4

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

    \[\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 2019152 +o rules:numerics
(FPCore (k n)
  :name "Migdal et al, Equation (51)"
  (* (/ 1 (sqrt k)) (pow (* (* 2 PI) n) (/ (- 1 k) 2))))