\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{\sqrt{1 - v \cdot \left(v \cdot 5\right)}}{1 - v \cdot v} \cdot \frac{\frac{\frac{\sqrt{1 - v \cdot \left(v \cdot 5\right)}}{\pi}}{\sqrt{2 \cdot \mathsf{fma}\left(v \cdot v, -3, 1\right)}}}{t}double f(double v, double t) {
double r318437 = 1.0;
double r318438 = 5.0;
double r318439 = v;
double r318440 = r318439 * r318439;
double r318441 = r318438 * r318440;
double r318442 = r318437 - r318441;
double r318443 = atan2(1.0, 0.0);
double r318444 = t;
double r318445 = r318443 * r318444;
double r318446 = 2.0;
double r318447 = 3.0;
double r318448 = r318447 * r318440;
double r318449 = r318437 - r318448;
double r318450 = r318446 * r318449;
double r318451 = sqrt(r318450);
double r318452 = r318445 * r318451;
double r318453 = r318437 - r318440;
double r318454 = r318452 * r318453;
double r318455 = r318442 / r318454;
return r318455;
}
double f(double v, double t) {
double r318456 = 1.0;
double r318457 = v;
double r318458 = 5.0;
double r318459 = r318457 * r318458;
double r318460 = r318457 * r318459;
double r318461 = r318456 - r318460;
double r318462 = sqrt(r318461);
double r318463 = r318457 * r318457;
double r318464 = r318456 - r318463;
double r318465 = r318462 / r318464;
double r318466 = atan2(1.0, 0.0);
double r318467 = r318462 / r318466;
double r318468 = 2.0;
double r318469 = 3.0;
double r318470 = -r318469;
double r318471 = fma(r318463, r318470, r318456);
double r318472 = r318468 * r318471;
double r318473 = sqrt(r318472);
double r318474 = r318467 / r318473;
double r318475 = t;
double r318476 = r318474 / r318475;
double r318477 = r318465 * r318476;
return r318477;
}



Bits error versus v



Bits error versus t
Initial program 0.4
rmApplied add-sqr-sqrt0.5
Applied times-frac0.5
Simplified0.3
Simplified0.3
rmApplied div-inv0.4
Applied associate-/l*0.4
Simplified0.3
rmApplied div-inv0.4
Simplified0.3
rmApplied *-un-lft-identity0.3
Applied *-un-lft-identity0.3
Applied times-frac0.3
Applied associate-*l*0.3
Simplified0.1
Final simplification0.1
herbie shell --seed 2019174 +o rules:numerics
(FPCore (v t)
:name "Falkner and Boettcher, Equation (20:1,3)"
(/ (- 1.0 (* 5.0 (* v v))) (* (* (* PI t) (sqrt (* 2.0 (- 1.0 (* 3.0 (* v v)))))) (- 1.0 (* v v)))))