Average Error: 0.5 → 0.4
Time: 20.2s
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{1}{\sqrt{2 \cdot \left(1 - 3 \cdot \left(v \cdot v\right)\right)}}}{\pi \cdot t} \cdot \frac{1 - 5 \cdot \left(v \cdot v\right)}{1 - v \cdot v}\]
\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{1}{\sqrt{2 \cdot \left(1 - 3 \cdot \left(v \cdot v\right)\right)}}}{\pi \cdot t} \cdot \frac{1 - 5 \cdot \left(v \cdot v\right)}{1 - v \cdot v}
double f(double v, double t) {
        double r236476 = 1.0;
        double r236477 = 5.0;
        double r236478 = v;
        double r236479 = r236478 * r236478;
        double r236480 = r236477 * r236479;
        double r236481 = r236476 - r236480;
        double r236482 = atan2(1.0, 0.0);
        double r236483 = t;
        double r236484 = r236482 * r236483;
        double r236485 = 2.0;
        double r236486 = 3.0;
        double r236487 = r236486 * r236479;
        double r236488 = r236476 - r236487;
        double r236489 = r236485 * r236488;
        double r236490 = sqrt(r236489);
        double r236491 = r236484 * r236490;
        double r236492 = r236476 - r236479;
        double r236493 = r236491 * r236492;
        double r236494 = r236481 / r236493;
        return r236494;
}

double f(double v, double t) {
        double r236495 = 1.0;
        double r236496 = 2.0;
        double r236497 = 1.0;
        double r236498 = 3.0;
        double r236499 = v;
        double r236500 = r236499 * r236499;
        double r236501 = r236498 * r236500;
        double r236502 = r236497 - r236501;
        double r236503 = r236496 * r236502;
        double r236504 = sqrt(r236503);
        double r236505 = r236495 / r236504;
        double r236506 = atan2(1.0, 0.0);
        double r236507 = t;
        double r236508 = r236506 * r236507;
        double r236509 = r236505 / r236508;
        double r236510 = 5.0;
        double r236511 = r236510 * r236500;
        double r236512 = r236497 - r236511;
        double r236513 = r236497 - r236500;
        double r236514 = r236512 / r236513;
        double r236515 = r236509 * r236514;
        return r236515;
}

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 *-un-lft-identity0.5

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

    \[\leadsto \color{blue}{\frac{1}{\left(\pi \cdot t\right) \cdot \sqrt{2 \cdot \left(1 - 3 \cdot \left(v \cdot v\right)\right)}} \cdot \frac{1 - 5 \cdot \left(v \cdot v\right)}{1 - v \cdot v}}\]
  5. Using strategy rm
  6. Applied div-inv0.5

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

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

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

Reproduce

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