Average Error: 0.5 → 0.5
Time: 10.0s
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 - 5 \cdot \left(v \cdot v\right)}{\left(\pi \cdot \left(t \cdot \sqrt{2 \cdot \left(1 - 3 \cdot \left(v \cdot v\right)\right)}\right)\right) \cdot \left(1 - 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 - 5 \cdot \left(v \cdot v\right)}{\left(\pi \cdot \left(t \cdot \sqrt{2 \cdot \left(1 - 3 \cdot \left(v \cdot v\right)\right)}\right)\right) \cdot \left(1 - v \cdot v\right)}
double f(double v, double t) {
        double r356450 = 1.0;
        double r356451 = 5.0;
        double r356452 = v;
        double r356453 = r356452 * r356452;
        double r356454 = r356451 * r356453;
        double r356455 = r356450 - r356454;
        double r356456 = atan2(1.0, 0.0);
        double r356457 = t;
        double r356458 = r356456 * r356457;
        double r356459 = 2.0;
        double r356460 = 3.0;
        double r356461 = r356460 * r356453;
        double r356462 = r356450 - r356461;
        double r356463 = r356459 * r356462;
        double r356464 = sqrt(r356463);
        double r356465 = r356458 * r356464;
        double r356466 = r356450 - r356453;
        double r356467 = r356465 * r356466;
        double r356468 = r356455 / r356467;
        return r356468;
}

double f(double v, double t) {
        double r356469 = 1.0;
        double r356470 = 5.0;
        double r356471 = v;
        double r356472 = r356471 * r356471;
        double r356473 = r356470 * r356472;
        double r356474 = r356469 - r356473;
        double r356475 = atan2(1.0, 0.0);
        double r356476 = t;
        double r356477 = 2.0;
        double r356478 = 3.0;
        double r356479 = r356478 * r356472;
        double r356480 = r356469 - r356479;
        double r356481 = r356477 * r356480;
        double r356482 = sqrt(r356481);
        double r356483 = r356476 * r356482;
        double r356484 = r356475 * r356483;
        double r356485 = r356469 - r356472;
        double r356486 = r356484 * r356485;
        double r356487 = r356474 / r356486;
        return r356487;
}

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.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. Using strategy rm
  3. Applied associate-*l*0.5

    \[\leadsto \frac{1 - 5 \cdot \left(v \cdot v\right)}{\color{blue}{\left(\pi \cdot \left(t \cdot \sqrt{2 \cdot \left(1 - 3 \cdot \left(v \cdot v\right)\right)}\right)\right)} \cdot \left(1 - v \cdot v\right)}\]
  4. Final simplification0.5

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

Reproduce

herbie shell --seed 2020001 
(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)))))