Average Error: 0.5 → 0.4
Time: 12.7s
Precision: 64
\[\frac{1}{\sqrt{k}} \cdot {\left(\left(2 \cdot \pi\right) \cdot n\right)}^{\left(\frac{1 - k}{2}\right)}\]
\[\frac{1}{\frac{\sqrt{k} \cdot {\left(\left(2 \cdot \pi\right) \cdot n\right)}^{\left(\frac{k}{2}\right)}}{1 \cdot {\left(\left(2 \cdot \pi\right) \cdot n\right)}^{\left(\frac{1}{2}\right)}}}\]
\frac{1}{\sqrt{k}} \cdot {\left(\left(2 \cdot \pi\right) \cdot n\right)}^{\left(\frac{1 - k}{2}\right)}
\frac{1}{\frac{\sqrt{k} \cdot {\left(\left(2 \cdot \pi\right) \cdot n\right)}^{\left(\frac{k}{2}\right)}}{1 \cdot {\left(\left(2 \cdot \pi\right) \cdot n\right)}^{\left(\frac{1}{2}\right)}}}
double f(double k, double n) {
        double r167661 = 1.0;
        double r167662 = k;
        double r167663 = sqrt(r167662);
        double r167664 = r167661 / r167663;
        double r167665 = 2.0;
        double r167666 = atan2(1.0, 0.0);
        double r167667 = r167665 * r167666;
        double r167668 = n;
        double r167669 = r167667 * r167668;
        double r167670 = r167661 - r167662;
        double r167671 = r167670 / r167665;
        double r167672 = pow(r167669, r167671);
        double r167673 = r167664 * r167672;
        return r167673;
}

double f(double k, double n) {
        double r167674 = 1.0;
        double r167675 = k;
        double r167676 = sqrt(r167675);
        double r167677 = 2.0;
        double r167678 = atan2(1.0, 0.0);
        double r167679 = r167677 * r167678;
        double r167680 = n;
        double r167681 = r167679 * r167680;
        double r167682 = r167675 / r167677;
        double r167683 = pow(r167681, r167682);
        double r167684 = r167676 * r167683;
        double r167685 = 1.0;
        double r167686 = r167685 / r167677;
        double r167687 = pow(r167681, r167686);
        double r167688 = r167685 * r167687;
        double r167689 = r167684 / r167688;
        double r167690 = r167674 / r167689;
        return r167690;
}

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.5

    \[\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 div-sub0.5

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

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

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

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

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

Reproduce

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