\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{\frac{\frac{1 - \left(v \cdot v\right) \cdot 5}{\sqrt{\pi}}}{\sqrt{2 \cdot \left(1 \cdot 1 - \left(\left(v \cdot v\right) \cdot 3\right) \cdot \left(\left(v \cdot v\right) \cdot 3\right)\right)}}}{\sqrt{\pi}}}{t}}{\left(1 \cdot 1\right) \cdot 1 - \left(v \cdot v\right) \cdot \left(\left(v \cdot v\right) \cdot \left(v \cdot v\right)\right)} \cdot \left(\left(\left(\left(v \cdot v\right) \cdot \left(v \cdot v\right) + 1 \cdot \left(v \cdot v\right)\right) + 1 \cdot 1\right) \cdot \sqrt{1 + \left(v \cdot v\right) \cdot 3}\right)double f(double v, double t) {
double r7283711 = 1.0;
double r7283712 = 5.0;
double r7283713 = v;
double r7283714 = r7283713 * r7283713;
double r7283715 = r7283712 * r7283714;
double r7283716 = r7283711 - r7283715;
double r7283717 = atan2(1.0, 0.0);
double r7283718 = t;
double r7283719 = r7283717 * r7283718;
double r7283720 = 2.0;
double r7283721 = 3.0;
double r7283722 = r7283721 * r7283714;
double r7283723 = r7283711 - r7283722;
double r7283724 = r7283720 * r7283723;
double r7283725 = sqrt(r7283724);
double r7283726 = r7283719 * r7283725;
double r7283727 = r7283711 - r7283714;
double r7283728 = r7283726 * r7283727;
double r7283729 = r7283716 / r7283728;
return r7283729;
}
double f(double v, double t) {
double r7283730 = 1.0;
double r7283731 = v;
double r7283732 = r7283731 * r7283731;
double r7283733 = 5.0;
double r7283734 = r7283732 * r7283733;
double r7283735 = r7283730 - r7283734;
double r7283736 = atan2(1.0, 0.0);
double r7283737 = sqrt(r7283736);
double r7283738 = r7283735 / r7283737;
double r7283739 = 2.0;
double r7283740 = r7283730 * r7283730;
double r7283741 = 3.0;
double r7283742 = r7283732 * r7283741;
double r7283743 = r7283742 * r7283742;
double r7283744 = r7283740 - r7283743;
double r7283745 = r7283739 * r7283744;
double r7283746 = sqrt(r7283745);
double r7283747 = r7283738 / r7283746;
double r7283748 = r7283747 / r7283737;
double r7283749 = t;
double r7283750 = r7283748 / r7283749;
double r7283751 = r7283740 * r7283730;
double r7283752 = r7283732 * r7283732;
double r7283753 = r7283732 * r7283752;
double r7283754 = r7283751 - r7283753;
double r7283755 = r7283750 / r7283754;
double r7283756 = r7283730 * r7283732;
double r7283757 = r7283752 + r7283756;
double r7283758 = r7283757 + r7283740;
double r7283759 = r7283730 + r7283742;
double r7283760 = sqrt(r7283759);
double r7283761 = r7283758 * r7283760;
double r7283762 = r7283755 * r7283761;
return r7283762;
}



Bits error versus v



Bits error versus t
Results
Initial program 0.4
rmApplied flip3--0.4
Applied flip--0.4
Applied associate-*r/0.4
Applied sqrt-div0.4
Applied associate-*r/0.4
Applied frac-times0.4
Applied associate-/r/0.4
Simplified0.4
rmApplied associate-/r*0.1
rmApplied add-sqr-sqrt0.7
Applied associate-/r*0.7
Simplified0.1
Final simplification0.1
herbie shell --seed 2019169 +o rules:numerics
(FPCore (v t)
:name "Falkner and Boettcher, Equation (20:1,3)"
(/ (- 1.0 (* 5.0 (* v v))) (* (* (* PI t) (sqrt (* 2.0 (- 1.0 (* 3.0 (* v v)))))) (- 1.0 (* v v)))))