\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}{\frac{\mathsf{fma}\left(\left(\sqrt{\mathsf{fma}\left(6, -v \cdot v, 2\right)} \cdot \pi\right) \cdot t, -v \cdot v, \left(\sqrt{\mathsf{fma}\left(6, -v \cdot v, 2\right)} \cdot \pi\right) \cdot t\right)}{\mathsf{fma}\left(v \cdot v, -5, 1\right)}}double f(double v, double t) {
double r4426308 = 1.0;
double r4426309 = 5.0;
double r4426310 = v;
double r4426311 = r4426310 * r4426310;
double r4426312 = r4426309 * r4426311;
double r4426313 = r4426308 - r4426312;
double r4426314 = atan2(1.0, 0.0);
double r4426315 = t;
double r4426316 = r4426314 * r4426315;
double r4426317 = 2.0;
double r4426318 = 3.0;
double r4426319 = r4426318 * r4426311;
double r4426320 = r4426308 - r4426319;
double r4426321 = r4426317 * r4426320;
double r4426322 = sqrt(r4426321);
double r4426323 = r4426316 * r4426322;
double r4426324 = r4426308 - r4426311;
double r4426325 = r4426323 * r4426324;
double r4426326 = r4426313 / r4426325;
return r4426326;
}
double f(double v, double t) {
double r4426327 = 1.0;
double r4426328 = 6.0;
double r4426329 = v;
double r4426330 = r4426329 * r4426329;
double r4426331 = -r4426330;
double r4426332 = 2.0;
double r4426333 = fma(r4426328, r4426331, r4426332);
double r4426334 = sqrt(r4426333);
double r4426335 = atan2(1.0, 0.0);
double r4426336 = r4426334 * r4426335;
double r4426337 = t;
double r4426338 = r4426336 * r4426337;
double r4426339 = fma(r4426338, r4426331, r4426338);
double r4426340 = -5.0;
double r4426341 = fma(r4426330, r4426340, r4426327);
double r4426342 = r4426339 / r4426341;
double r4426343 = r4426327 / r4426342;
return r4426343;
}



Bits error versus v



Bits error versus t
Initial program 0.4
Simplified0.4
rmApplied clear-num0.4
Final simplification0.4
herbie shell --seed 2019153 +o rules:numerics
(FPCore (v t)
:name "Falkner and Boettcher, Equation (20:1,3)"
(/ (- 1 (* 5 (* v v))) (* (* (* PI t) (sqrt (* 2 (- 1 (* 3 (* v v)))))) (- 1 (* v v)))))