\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 \sqrt{1 - 3 \cdot \left(v \cdot v\right)}\right) \cdot \left(1 - v \cdot v\right)double f(double v) {
double r364491 = 2.0;
double r364492 = sqrt(r364491);
double r364493 = 4.0;
double r364494 = r364492 / r364493;
double r364495 = 1.0;
double r364496 = 3.0;
double r364497 = v;
double r364498 = r364497 * r364497;
double r364499 = r364496 * r364498;
double r364500 = r364495 - r364499;
double r364501 = sqrt(r364500);
double r364502 = r364494 * r364501;
double r364503 = r364495 - r364498;
double r364504 = r364502 * r364503;
return r364504;
}
double f(double v) {
double r364505 = 2.0;
double r364506 = sqrt(r364505);
double r364507 = 4.0;
double r364508 = r364506 / r364507;
double r364509 = 1.0;
double r364510 = 3.0;
double r364511 = v;
double r364512 = r364511 * r364511;
double r364513 = r364510 * r364512;
double r364514 = r364509 - r364513;
double r364515 = sqrt(r364514);
double r364516 = r364508 * r364515;
double r364517 = r364509 - r364512;
double r364518 = r364516 * r364517;
return r364518;
}



Bits error versus v
Results
Initial program 0.0
Final simplification0.0
herbie shell --seed 2019347 +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))))