Average Error: 0.4 → 0.4
Time: 8.3s
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{1}{\frac{\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)}{1 - 5 \cdot \left(v \cdot v\right)}}\]
\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{1}{\frac{\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)}{1 - 5 \cdot \left(v \cdot v\right)}}
double f(double v, double t) {
        double r213019 = 1.0;
        double r213020 = 5.0;
        double r213021 = v;
        double r213022 = r213021 * r213021;
        double r213023 = r213020 * r213022;
        double r213024 = r213019 - r213023;
        double r213025 = atan2(1.0, 0.0);
        double r213026 = t;
        double r213027 = r213025 * r213026;
        double r213028 = 2.0;
        double r213029 = 3.0;
        double r213030 = r213029 * r213022;
        double r213031 = r213019 - r213030;
        double r213032 = r213028 * r213031;
        double r213033 = sqrt(r213032);
        double r213034 = r213027 * r213033;
        double r213035 = r213019 - r213022;
        double r213036 = r213034 * r213035;
        double r213037 = r213024 / r213036;
        return r213037;
}

double f(double v, double t) {
        double r213038 = 1.0;
        double r213039 = atan2(1.0, 0.0);
        double r213040 = t;
        double r213041 = r213039 * r213040;
        double r213042 = 2.0;
        double r213043 = 1.0;
        double r213044 = 3.0;
        double r213045 = v;
        double r213046 = r213045 * r213045;
        double r213047 = r213044 * r213046;
        double r213048 = r213043 - r213047;
        double r213049 = r213042 * r213048;
        double r213050 = sqrt(r213049);
        double r213051 = r213041 * r213050;
        double r213052 = r213043 - r213046;
        double r213053 = r213051 * r213052;
        double r213054 = 5.0;
        double r213055 = r213054 * r213046;
        double r213056 = r213043 - r213055;
        double r213057 = r213053 / r213056;
        double r213058 = r213038 / r213057;
        return r213058;
}

Error

Bits error versus v

Bits error versus t

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

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. Using strategy rm
  3. Applied clear-num0.4

    \[\leadsto \color{blue}{\frac{1}{\frac{\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)}{1 - 5 \cdot \left(v \cdot v\right)}}}\]
  4. Final simplification0.4

    \[\leadsto \frac{1}{\frac{\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)}{1 - 5 \cdot \left(v \cdot v\right)}}\]

Reproduce

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