\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)}\sqrt{4 + \left(2 \cdot \left(6 \cdot \left(v \cdot v\right)\right) + \left(6 \cdot \left(v \cdot v\right)\right) \cdot \left(6 \cdot \left(v \cdot v\right)\right)\right)} \cdot \frac{\frac{\frac{\mathsf{fma}\left(v \cdot v, -5, 1\right)}{\sqrt{8 - \left(216 \cdot \left(\left(v \cdot v\right) \cdot \left(v \cdot v\right)\right)\right) \cdot \left(v \cdot v\right)} \cdot \left(1 - v \cdot v\right)}}{\pi}}{t}double f(double v, double t) {
double r6626819 = 1.0;
double r6626820 = 5.0;
double r6626821 = v;
double r6626822 = r6626821 * r6626821;
double r6626823 = r6626820 * r6626822;
double r6626824 = r6626819 - r6626823;
double r6626825 = atan2(1.0, 0.0);
double r6626826 = t;
double r6626827 = r6626825 * r6626826;
double r6626828 = 2.0;
double r6626829 = 3.0;
double r6626830 = r6626829 * r6626822;
double r6626831 = r6626819 - r6626830;
double r6626832 = r6626828 * r6626831;
double r6626833 = sqrt(r6626832);
double r6626834 = r6626827 * r6626833;
double r6626835 = r6626819 - r6626822;
double r6626836 = r6626834 * r6626835;
double r6626837 = r6626824 / r6626836;
return r6626837;
}
double f(double v, double t) {
double r6626838 = 4.0;
double r6626839 = 2.0;
double r6626840 = 6.0;
double r6626841 = v;
double r6626842 = r6626841 * r6626841;
double r6626843 = r6626840 * r6626842;
double r6626844 = r6626839 * r6626843;
double r6626845 = r6626843 * r6626843;
double r6626846 = r6626844 + r6626845;
double r6626847 = r6626838 + r6626846;
double r6626848 = sqrt(r6626847);
double r6626849 = -5.0;
double r6626850 = 1.0;
double r6626851 = fma(r6626842, r6626849, r6626850);
double r6626852 = 8.0;
double r6626853 = 216.0;
double r6626854 = r6626842 * r6626842;
double r6626855 = r6626853 * r6626854;
double r6626856 = r6626855 * r6626842;
double r6626857 = r6626852 - r6626856;
double r6626858 = sqrt(r6626857);
double r6626859 = r6626850 - r6626842;
double r6626860 = r6626858 * r6626859;
double r6626861 = r6626851 / r6626860;
double r6626862 = atan2(1.0, 0.0);
double r6626863 = r6626861 / r6626862;
double r6626864 = t;
double r6626865 = r6626863 / r6626864;
double r6626866 = r6626848 * r6626865;
return r6626866;
}



Bits error versus v



Bits error versus t
Initial program 0.4
Simplified0.3
rmApplied associate-/r*0.3
rmApplied *-un-lft-identity0.3
Applied div-inv0.3
Applied times-frac0.3
Applied associate-/l*0.4
Simplified0.4
rmApplied flip3--0.4
Applied sqrt-div0.4
Applied associate-*l/0.4
Applied associate-*l/0.4
Applied associate-/r/0.4
Simplified0.1
Final simplification0.1
herbie shell --seed 2019141 +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)))))