Average Error: 0.4 → 0.1
Time: 36.6s
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(v \cdot v, -5, 1\right)}{\pi \cdot \left(1 - v \cdot v\right)}}{\sqrt{2 - \left(v \cdot v\right) \cdot 6}}}{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(v \cdot v, -5, 1\right)}{\pi \cdot \left(1 - v \cdot v\right)}}{\sqrt{2 - \left(v \cdot v\right) \cdot 6}}}{t}
double f(double v, double t) {
        double r6126934 = 1.0;
        double r6126935 = 5.0;
        double r6126936 = v;
        double r6126937 = r6126936 * r6126936;
        double r6126938 = r6126935 * r6126937;
        double r6126939 = r6126934 - r6126938;
        double r6126940 = atan2(1.0, 0.0);
        double r6126941 = t;
        double r6126942 = r6126940 * r6126941;
        double r6126943 = 2.0;
        double r6126944 = 3.0;
        double r6126945 = r6126944 * r6126937;
        double r6126946 = r6126934 - r6126945;
        double r6126947 = r6126943 * r6126946;
        double r6126948 = sqrt(r6126947);
        double r6126949 = r6126942 * r6126948;
        double r6126950 = r6126934 - r6126937;
        double r6126951 = r6126949 * r6126950;
        double r6126952 = r6126939 / r6126951;
        return r6126952;
}

double f(double v, double t) {
        double r6126953 = v;
        double r6126954 = r6126953 * r6126953;
        double r6126955 = -5.0;
        double r6126956 = 1.0;
        double r6126957 = fma(r6126954, r6126955, r6126956);
        double r6126958 = atan2(1.0, 0.0);
        double r6126959 = r6126956 - r6126954;
        double r6126960 = r6126958 * r6126959;
        double r6126961 = r6126957 / r6126960;
        double r6126962 = 2.0;
        double r6126963 = 6.0;
        double r6126964 = r6126954 * r6126963;
        double r6126965 = r6126962 - r6126964;
        double r6126966 = sqrt(r6126965);
        double r6126967 = r6126961 / r6126966;
        double r6126968 = t;
        double r6126969 = r6126967 / r6126968;
        return r6126969;
}

Error

Bits error versus v

Bits error versus t

Derivation

  1. Initial program 0.4

    \[\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{\mathsf{fma}\left(v \cdot v, -5, 1\right)}{\pi \cdot \left(1 - v \cdot v\right)}}{t \cdot \sqrt{2 - \left(v \cdot v\right) \cdot 6}}}\]
  3. Using strategy rm
  4. Applied *-un-lft-identity0.3

    \[\leadsto \frac{\color{blue}{1 \cdot \frac{\mathsf{fma}\left(v \cdot v, -5, 1\right)}{\pi \cdot \left(1 - v \cdot v\right)}}}{t \cdot \sqrt{2 - \left(v \cdot v\right) \cdot 6}}\]
  5. Applied times-frac0.3

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

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

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

Reproduce

herbie shell --seed 2019138 +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)))))