\left(\frac{\sqrt{2}}{4} \cdot \sqrt{1 - 3 \cdot \left(v \cdot v\right)}\right) \cdot \left(1 - v \cdot v\right)\left(\frac{\sqrt{2}}{4} \cdot \log \left(e^{\sqrt{1 - 3 \cdot \left(v \cdot v\right)}}\right)\right) \cdot \left(1 - v \cdot v\right)double f(double v) {
double r245667 = 2.0;
double r245668 = sqrt(r245667);
double r245669 = 4.0;
double r245670 = r245668 / r245669;
double r245671 = 1.0;
double r245672 = 3.0;
double r245673 = v;
double r245674 = r245673 * r245673;
double r245675 = r245672 * r245674;
double r245676 = r245671 - r245675;
double r245677 = sqrt(r245676);
double r245678 = r245670 * r245677;
double r245679 = r245671 - r245674;
double r245680 = r245678 * r245679;
return r245680;
}
double f(double v) {
double r245681 = 2.0;
double r245682 = sqrt(r245681);
double r245683 = 4.0;
double r245684 = r245682 / r245683;
double r245685 = 1.0;
double r245686 = 3.0;
double r245687 = v;
double r245688 = r245687 * r245687;
double r245689 = r245686 * r245688;
double r245690 = r245685 - r245689;
double r245691 = sqrt(r245690);
double r245692 = exp(r245691);
double r245693 = log(r245692);
double r245694 = r245684 * r245693;
double r245695 = r245685 - r245688;
double r245696 = r245694 * r245695;
return r245696;
}



Bits error versus v
Results
Initial program 0.0
rmApplied add-log-exp0.0
Final simplification0.0
herbie shell --seed 2020065 +o rules:numerics
(FPCore (v)
:name "Falkner and Boettcher, Appendix B, 2"
:precision binary64
(* (* (/ (sqrt 2) 4) (sqrt (- 1 (* 3 (* v v))))) (- 1 (* v v))))