Average Error: 0.5 → 0.4
Time: 12.5s
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(\left(t \cdot \left(\sqrt{2} \cdot \pi\right)\right) \cdot \sqrt{1 - 3 \cdot \left(v \cdot v\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(\left(t \cdot \left(\sqrt{2} \cdot \pi\right)\right) \cdot \sqrt{1 - 3 \cdot \left(v \cdot v\right)}\right) \cdot \left(1 - v \cdot v\right)}
double f(double v, double t) {
        double r387316 = 1.0;
        double r387317 = 5.0;
        double r387318 = v;
        double r387319 = r387318 * r387318;
        double r387320 = r387317 * r387319;
        double r387321 = r387316 - r387320;
        double r387322 = atan2(1.0, 0.0);
        double r387323 = t;
        double r387324 = r387322 * r387323;
        double r387325 = 2.0;
        double r387326 = 3.0;
        double r387327 = r387326 * r387319;
        double r387328 = r387316 - r387327;
        double r387329 = r387325 * r387328;
        double r387330 = sqrt(r387329);
        double r387331 = r387324 * r387330;
        double r387332 = r387316 - r387319;
        double r387333 = r387331 * r387332;
        double r387334 = r387321 / r387333;
        return r387334;
}

double f(double v, double t) {
        double r387335 = 1.0;
        double r387336 = 5.0;
        double r387337 = v;
        double r387338 = r387337 * r387337;
        double r387339 = r387336 * r387338;
        double r387340 = r387335 - r387339;
        double r387341 = t;
        double r387342 = 2.0;
        double r387343 = sqrt(r387342);
        double r387344 = atan2(1.0, 0.0);
        double r387345 = r387343 * r387344;
        double r387346 = r387341 * r387345;
        double r387347 = 3.0;
        double r387348 = r387347 * r387338;
        double r387349 = r387335 - r387348;
        double r387350 = sqrt(r387349);
        double r387351 = r387346 * r387350;
        double r387352 = r387335 - r387338;
        double r387353 = r387351 * r387352;
        double r387354 = r387340 / r387353;
        return r387354;
}

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 sqrt-prod0.5

    \[\leadsto \frac{1 - 5 \cdot \left(v \cdot v\right)}{\left(\left(\pi \cdot t\right) \cdot \color{blue}{\left(\sqrt{2} \cdot \sqrt{1 - 3 \cdot \left(v \cdot v\right)}\right)}\right) \cdot \left(1 - v \cdot v\right)}\]
  4. Applied associate-*r*0.5

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

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

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

Reproduce

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