\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{\mathsf{fma}\left(-5, v \cdot v, 1\right)}{\pi}}{\left(1 - v \cdot v\right) \cdot \left(\sqrt{-6 \cdot \left(v \cdot v\right) + 2} \cdot t\right)}double f(double v, double t) {
double r6532943 = 1.0;
double r6532944 = 5.0;
double r6532945 = v;
double r6532946 = r6532945 * r6532945;
double r6532947 = r6532944 * r6532946;
double r6532948 = r6532943 - r6532947;
double r6532949 = atan2(1.0, 0.0);
double r6532950 = t;
double r6532951 = r6532949 * r6532950;
double r6532952 = 2.0;
double r6532953 = 3.0;
double r6532954 = r6532953 * r6532946;
double r6532955 = r6532943 - r6532954;
double r6532956 = r6532952 * r6532955;
double r6532957 = sqrt(r6532956);
double r6532958 = r6532951 * r6532957;
double r6532959 = r6532943 - r6532946;
double r6532960 = r6532958 * r6532959;
double r6532961 = r6532948 / r6532960;
return r6532961;
}
double f(double v, double t) {
double r6532962 = -5.0;
double r6532963 = v;
double r6532964 = r6532963 * r6532963;
double r6532965 = 1.0;
double r6532966 = fma(r6532962, r6532964, r6532965);
double r6532967 = atan2(1.0, 0.0);
double r6532968 = r6532966 / r6532967;
double r6532969 = r6532965 - r6532964;
double r6532970 = -6.0;
double r6532971 = r6532970 * r6532964;
double r6532972 = 2.0;
double r6532973 = r6532971 + r6532972;
double r6532974 = sqrt(r6532973);
double r6532975 = t;
double r6532976 = r6532974 * r6532975;
double r6532977 = r6532969 * r6532976;
double r6532978 = r6532968 / r6532977;
return r6532978;
}



Bits error versus v



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