\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)}\mathsf{fma}\left(\frac{{v}^{2}}{t \cdot \left(\sqrt{2} \cdot \left(\sqrt{1} \cdot \pi\right)\right)}, 1.5, 1 \cdot \frac{\sqrt{1}}{t \cdot \left(\sqrt{2} \cdot \pi\right)} - \mathsf{fma}\left(\frac{{v}^{4}}{t \cdot \left(\sqrt{2} \cdot \left(\sqrt{1} \cdot \pi\right)\right)}, 1.5, \mathsf{fma}\left(4, \frac{\sqrt{1}}{\sqrt{2} \cdot \pi} \cdot \left(\frac{v \cdot v}{t} + \frac{{v}^{4}}{t}\right), 1.125 \cdot \frac{{v}^{4}}{t \cdot \left(\sqrt{2} \cdot \left({\left(\sqrt{1}\right)}^{3} \cdot \pi\right)\right)}\right)\right)\right)double f(double v, double t) {
double r180501 = 1.0;
double r180502 = 5.0;
double r180503 = v;
double r180504 = r180503 * r180503;
double r180505 = r180502 * r180504;
double r180506 = r180501 - r180505;
double r180507 = atan2(1.0, 0.0);
double r180508 = t;
double r180509 = r180507 * r180508;
double r180510 = 2.0;
double r180511 = 3.0;
double r180512 = r180511 * r180504;
double r180513 = r180501 - r180512;
double r180514 = r180510 * r180513;
double r180515 = sqrt(r180514);
double r180516 = r180509 * r180515;
double r180517 = r180501 - r180504;
double r180518 = r180516 * r180517;
double r180519 = r180506 / r180518;
return r180519;
}
double f(double v, double t) {
double r180520 = v;
double r180521 = 2.0;
double r180522 = pow(r180520, r180521);
double r180523 = t;
double r180524 = 2.0;
double r180525 = sqrt(r180524);
double r180526 = 1.0;
double r180527 = sqrt(r180526);
double r180528 = atan2(1.0, 0.0);
double r180529 = r180527 * r180528;
double r180530 = r180525 * r180529;
double r180531 = r180523 * r180530;
double r180532 = r180522 / r180531;
double r180533 = 1.5;
double r180534 = r180525 * r180528;
double r180535 = r180523 * r180534;
double r180536 = r180527 / r180535;
double r180537 = r180526 * r180536;
double r180538 = 4.0;
double r180539 = pow(r180520, r180538);
double r180540 = r180539 / r180531;
double r180541 = 4.0;
double r180542 = r180527 / r180534;
double r180543 = r180520 * r180520;
double r180544 = r180543 / r180523;
double r180545 = r180539 / r180523;
double r180546 = r180544 + r180545;
double r180547 = r180542 * r180546;
double r180548 = 1.125;
double r180549 = 3.0;
double r180550 = pow(r180527, r180549);
double r180551 = r180550 * r180528;
double r180552 = r180525 * r180551;
double r180553 = r180523 * r180552;
double r180554 = r180539 / r180553;
double r180555 = r180548 * r180554;
double r180556 = fma(r180541, r180547, r180555);
double r180557 = fma(r180540, r180533, r180556);
double r180558 = r180537 - r180557;
double r180559 = fma(r180532, r180533, r180558);
return r180559;
}



Bits error versus v



Bits error versus t
Initial program 0.5
Taylor expanded around 0 0.6
Simplified0.6
Final simplification0.6
herbie shell --seed 2019235 +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)))))