Average Error: 0.4 → 0.5
Time: 9.2s
Precision: 64
\[\frac{1}{\sqrt{k}} \cdot {\left(\left(2 \cdot \pi\right) \cdot n\right)}^{\left(\frac{1 - k}{2}\right)}\]
\[\frac{1}{\sqrt{k}} \cdot \left(\left({\left(\left(2 \cdot \pi\right) \cdot n\right)}^{\left(\frac{\frac{\frac{1 - k}{2}}{2}}{2}\right)} \cdot {\left(\left(2 \cdot \pi\right) \cdot n\right)}^{\left(\frac{\frac{\frac{1 - k}{2}}{2}}{2}\right)}\right) \cdot {\left(\left(2 \cdot \pi\right) \cdot n\right)}^{\left(\frac{\frac{1 - k}{2}}{2}\right)}\right)\]
\frac{1}{\sqrt{k}} \cdot {\left(\left(2 \cdot \pi\right) \cdot n\right)}^{\left(\frac{1 - k}{2}\right)}
\frac{1}{\sqrt{k}} \cdot \left(\left({\left(\left(2 \cdot \pi\right) \cdot n\right)}^{\left(\frac{\frac{\frac{1 - k}{2}}{2}}{2}\right)} \cdot {\left(\left(2 \cdot \pi\right) \cdot n\right)}^{\left(\frac{\frac{\frac{1 - k}{2}}{2}}{2}\right)}\right) \cdot {\left(\left(2 \cdot \pi\right) \cdot n\right)}^{\left(\frac{\frac{1 - k}{2}}{2}\right)}\right)
double f(double k, double n) {
        double r184797 = 1.0;
        double r184798 = k;
        double r184799 = sqrt(r184798);
        double r184800 = r184797 / r184799;
        double r184801 = 2.0;
        double r184802 = atan2(1.0, 0.0);
        double r184803 = r184801 * r184802;
        double r184804 = n;
        double r184805 = r184803 * r184804;
        double r184806 = r184797 - r184798;
        double r184807 = r184806 / r184801;
        double r184808 = pow(r184805, r184807);
        double r184809 = r184800 * r184808;
        return r184809;
}

double f(double k, double n) {
        double r184810 = 1.0;
        double r184811 = k;
        double r184812 = sqrt(r184811);
        double r184813 = r184810 / r184812;
        double r184814 = 2.0;
        double r184815 = atan2(1.0, 0.0);
        double r184816 = r184814 * r184815;
        double r184817 = n;
        double r184818 = r184816 * r184817;
        double r184819 = r184810 - r184811;
        double r184820 = r184819 / r184814;
        double r184821 = 2.0;
        double r184822 = r184820 / r184821;
        double r184823 = r184822 / r184821;
        double r184824 = pow(r184818, r184823);
        double r184825 = r184824 * r184824;
        double r184826 = pow(r184818, r184822);
        double r184827 = r184825 * r184826;
        double r184828 = r184813 * r184827;
        return r184828;
}

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 sqr-pow0.4

    \[\leadsto \frac{1}{\sqrt{k}} \cdot \color{blue}{\left({\left(\left(2 \cdot \pi\right) \cdot n\right)}^{\left(\frac{\frac{1 - k}{2}}{2}\right)} \cdot {\left(\left(2 \cdot \pi\right) \cdot n\right)}^{\left(\frac{\frac{1 - k}{2}}{2}\right)}\right)}\]
  4. Using strategy rm
  5. Applied sqr-pow0.5

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

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

Reproduce

herbie shell --seed 2020036 +o rules:numerics
(FPCore (k n)
  :name "Migdal et al, Equation (51)"
  :precision binary64
  (* (/ 1 (sqrt k)) (pow (* (* 2 PI) n) (/ (- 1 k) 2))))