\left(\frac{\sqrt{2}}{4} \cdot \sqrt{1 - 3 \cdot \left(v \cdot v\right)}\right) \cdot \left(1 - v \cdot v\right)e^{\log \left(\frac{\sqrt{2}}{4} \cdot \sqrt{1 - \log \left(e^{3 \cdot \left(v \cdot v\right)}\right)}\right)} \cdot \left(1 - v \cdot v\right)double f(double v) {
double r221779 = 2.0;
double r221780 = sqrt(r221779);
double r221781 = 4.0;
double r221782 = r221780 / r221781;
double r221783 = 1.0;
double r221784 = 3.0;
double r221785 = v;
double r221786 = r221785 * r221785;
double r221787 = r221784 * r221786;
double r221788 = r221783 - r221787;
double r221789 = sqrt(r221788);
double r221790 = r221782 * r221789;
double r221791 = r221783 - r221786;
double r221792 = r221790 * r221791;
return r221792;
}
double f(double v) {
double r221793 = 2.0;
double r221794 = sqrt(r221793);
double r221795 = 4.0;
double r221796 = r221794 / r221795;
double r221797 = 1.0;
double r221798 = 3.0;
double r221799 = v;
double r221800 = r221799 * r221799;
double r221801 = r221798 * r221800;
double r221802 = exp(r221801);
double r221803 = log(r221802);
double r221804 = r221797 - r221803;
double r221805 = sqrt(r221804);
double r221806 = r221796 * r221805;
double r221807 = log(r221806);
double r221808 = exp(r221807);
double r221809 = r221797 - r221800;
double r221810 = r221808 * r221809;
return r221810;
}



Bits error versus v
Results
Initial program 0.0
rmApplied add-exp-log0.0
Applied add-exp-log0.0
Applied add-exp-log0.0
Applied div-exp0.0
Applied prod-exp0.0
Simplified0.0
rmApplied add-log-exp0.0
Final simplification0.0
herbie shell --seed 2020024
(FPCore (v)
:name "Falkner and Boettcher, Appendix B, 2"
:precision binary64
(* (* (/ (sqrt 2) 4) (sqrt (- 1 (* 3 (* v v))))) (- 1 (* v v))))