\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{\frac{\frac{\mathsf{fma}\left(v \cdot v, -5, 1\right)}{\pi}}{\left(-\sqrt{\mathsf{fma}\left(v \cdot v, -6, 2\right)} \cdot \left(v \cdot v\right)\right) + \sqrt{\mathsf{fma}\left(v \cdot v, -6, 2\right)}}}{t}double f(double v, double t) {
double r7194780 = 1.0;
double r7194781 = 5.0;
double r7194782 = v;
double r7194783 = r7194782 * r7194782;
double r7194784 = r7194781 * r7194783;
double r7194785 = r7194780 - r7194784;
double r7194786 = atan2(1.0, 0.0);
double r7194787 = t;
double r7194788 = r7194786 * r7194787;
double r7194789 = 2.0;
double r7194790 = 3.0;
double r7194791 = r7194790 * r7194783;
double r7194792 = r7194780 - r7194791;
double r7194793 = r7194789 * r7194792;
double r7194794 = sqrt(r7194793);
double r7194795 = r7194788 * r7194794;
double r7194796 = r7194780 - r7194783;
double r7194797 = r7194795 * r7194796;
double r7194798 = r7194785 / r7194797;
return r7194798;
}
double f(double v, double t) {
double r7194799 = v;
double r7194800 = r7194799 * r7194799;
double r7194801 = -5.0;
double r7194802 = 1.0;
double r7194803 = fma(r7194800, r7194801, r7194802);
double r7194804 = atan2(1.0, 0.0);
double r7194805 = r7194803 / r7194804;
double r7194806 = -6.0;
double r7194807 = 2.0;
double r7194808 = fma(r7194800, r7194806, r7194807);
double r7194809 = sqrt(r7194808);
double r7194810 = r7194809 * r7194800;
double r7194811 = -r7194810;
double r7194812 = r7194811 + r7194809;
double r7194813 = r7194805 / r7194812;
double r7194814 = t;
double r7194815 = r7194813 / r7194814;
return r7194815;
}



Bits error versus v



Bits error versus t
Initial program 0.5
Simplified0.3
rmApplied div-inv0.4
Applied associate-/l*0.4
Simplified0.3
rmApplied associate-/r*0.1
Final simplification0.1
herbie shell --seed 2019163 +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)))))