Average Error: 0.5 → 0.1
Time: 33.8s
Precision: 64
\[\frac{1 - 5 \cdot \left(v \cdot v\right)}{\left(\left(\pi \cdot t\right) \cdot \sqrt{2 \cdot \left(1 - 3 \cdot \left(v \cdot v\right)\right)}\right) \cdot \left(1 - v \cdot v\right)}\]
\[\frac{\frac{\frac{\mathsf{fma}\left(-5, v \cdot v, 1\right)}{\pi \cdot \left(1 - v \cdot v\right)}}{\sqrt{\mathsf{fma}\left(v \cdot -6, v, 2\right)}}}{t}\]
\frac{1 - 5 \cdot \left(v \cdot v\right)}{\left(\left(\pi \cdot t\right) \cdot \sqrt{2 \cdot \left(1 - 3 \cdot \left(v \cdot v\right)\right)}\right) \cdot \left(1 - v \cdot v\right)}
\frac{\frac{\frac{\mathsf{fma}\left(-5, v \cdot v, 1\right)}{\pi \cdot \left(1 - v \cdot v\right)}}{\sqrt{\mathsf{fma}\left(v \cdot -6, v, 2\right)}}}{t}
double f(double v, double t) {
        double r5654644 = 1.0;
        double r5654645 = 5.0;
        double r5654646 = v;
        double r5654647 = r5654646 * r5654646;
        double r5654648 = r5654645 * r5654647;
        double r5654649 = r5654644 - r5654648;
        double r5654650 = atan2(1.0, 0.0);
        double r5654651 = t;
        double r5654652 = r5654650 * r5654651;
        double r5654653 = 2.0;
        double r5654654 = 3.0;
        double r5654655 = r5654654 * r5654647;
        double r5654656 = r5654644 - r5654655;
        double r5654657 = r5654653 * r5654656;
        double r5654658 = sqrt(r5654657);
        double r5654659 = r5654652 * r5654658;
        double r5654660 = r5654644 - r5654647;
        double r5654661 = r5654659 * r5654660;
        double r5654662 = r5654649 / r5654661;
        return r5654662;
}

double f(double v, double t) {
        double r5654663 = -5.0;
        double r5654664 = v;
        double r5654665 = r5654664 * r5654664;
        double r5654666 = 1.0;
        double r5654667 = fma(r5654663, r5654665, r5654666);
        double r5654668 = atan2(1.0, 0.0);
        double r5654669 = r5654666 - r5654665;
        double r5654670 = r5654668 * r5654669;
        double r5654671 = r5654667 / r5654670;
        double r5654672 = -6.0;
        double r5654673 = r5654664 * r5654672;
        double r5654674 = 2.0;
        double r5654675 = fma(r5654673, r5654664, r5654674);
        double r5654676 = sqrt(r5654675);
        double r5654677 = r5654671 / r5654676;
        double r5654678 = t;
        double r5654679 = r5654677 / r5654678;
        return r5654679;
}

Error

Bits error versus v

Bits error versus t

Derivation

  1. Initial program 0.5

    \[\frac{1 - 5 \cdot \left(v \cdot v\right)}{\left(\left(\pi \cdot t\right) \cdot \sqrt{2 \cdot \left(1 - 3 \cdot \left(v \cdot v\right)\right)}\right) \cdot \left(1 - v \cdot v\right)}\]
  2. Simplified0.3

    \[\leadsto \color{blue}{\frac{\frac{\frac{\mathsf{fma}\left(-5, v \cdot v, 1\right)}{\pi \cdot \left(1 - v \cdot v\right)}}{t}}{\sqrt{\mathsf{fma}\left(-6 \cdot v, v, 2\right)}}}\]
  3. Using strategy rm
  4. Applied associate-/l/0.3

    \[\leadsto \color{blue}{\frac{\frac{\mathsf{fma}\left(-5, v \cdot v, 1\right)}{\pi \cdot \left(1 - v \cdot v\right)}}{\sqrt{\mathsf{fma}\left(-6 \cdot v, v, 2\right)} \cdot t}}\]
  5. Using strategy rm
  6. Applied associate-/r*0.1

    \[\leadsto \color{blue}{\frac{\frac{\frac{\mathsf{fma}\left(-5, v \cdot v, 1\right)}{\pi \cdot \left(1 - v \cdot v\right)}}{\sqrt{\mathsf{fma}\left(-6 \cdot v, v, 2\right)}}}{t}}\]
  7. Final simplification0.1

    \[\leadsto \frac{\frac{\frac{\mathsf{fma}\left(-5, v \cdot v, 1\right)}{\pi \cdot \left(1 - v \cdot v\right)}}{\sqrt{\mathsf{fma}\left(v \cdot -6, v, 2\right)}}}{t}\]

Reproduce

herbie shell --seed 2019135 +o rules:numerics
(FPCore (v t)
  :name "Falkner and Boettcher, Equation (20:1,3)"
  (/ (- 1 (* 5 (* v v))) (* (* (* PI t) (sqrt (* 2 (- 1 (* 3 (* v v)))))) (- 1 (* v v)))))