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 r250540 = 1.0;
        double r250541 = 5.0;
        double r250542 = v;
        double r250543 = r250542 * r250542;
        double r250544 = r250541 * r250543;
        double r250545 = r250540 - r250544;
        double r250546 = atan2(1.0, 0.0);
        double r250547 = t;
        double r250548 = r250546 * r250547;
        double r250549 = 2.0;
        double r250550 = 3.0;
        double r250551 = r250550 * r250543;
        double r250552 = r250540 - r250551;
        double r250553 = r250549 * r250552;
        double r250554 = sqrt(r250553);
        double r250555 = r250548 * r250554;
        double r250556 = r250540 - r250543;
        double r250557 = r250555 * r250556;
        double r250558 = r250545 / r250557;
        return r250558;
}

double f(double v, double t) {
        double r250559 = 1.0;
        double r250560 = 5.0;
        double r250561 = v;
        double r250562 = r250561 * r250561;
        double r250563 = r250560 * r250562;
        double r250564 = r250559 - r250563;
        double r250565 = atan2(1.0, 0.0);
        double r250566 = t;
        double r250567 = 2.0;
        double r250568 = 3.0;
        double r250569 = r250568 * r250562;
        double r250570 = r250559 - r250569;
        double r250571 = r250567 * r250570;
        double r250572 = sqrt(r250571);
        double r250573 = r250566 * r250572;
        double r250574 = r250565 * r250573;
        double r250575 = r250559 - r250562;
        double r250576 = r250574 * r250575;
        double r250577 = r250564 / r250576;
        return r250577;
}

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)))))