\left(\frac{\sqrt{2}}{4} \cdot \sqrt{1 - 3 \cdot \left(v \cdot v\right)}\right) \cdot \left(1 - v \cdot v\right)\sqrt[3]{{\left(\frac{\sqrt{2}}{4} \cdot \sqrt{1 - 3 \cdot \left(v \cdot v\right)}\right)}^{3}} \cdot \left(1 - v \cdot v\right)double f(double v) {
double r365707 = 2.0;
double r365708 = sqrt(r365707);
double r365709 = 4.0;
double r365710 = r365708 / r365709;
double r365711 = 1.0;
double r365712 = 3.0;
double r365713 = v;
double r365714 = r365713 * r365713;
double r365715 = r365712 * r365714;
double r365716 = r365711 - r365715;
double r365717 = sqrt(r365716);
double r365718 = r365710 * r365717;
double r365719 = r365711 - r365714;
double r365720 = r365718 * r365719;
return r365720;
}
double f(double v) {
double r365721 = 2.0;
double r365722 = sqrt(r365721);
double r365723 = 4.0;
double r365724 = r365722 / r365723;
double r365725 = 1.0;
double r365726 = 3.0;
double r365727 = v;
double r365728 = r365727 * r365727;
double r365729 = r365726 * r365728;
double r365730 = r365725 - r365729;
double r365731 = sqrt(r365730);
double r365732 = r365724 * r365731;
double r365733 = 3.0;
double r365734 = pow(r365732, r365733);
double r365735 = cbrt(r365734);
double r365736 = r365725 - r365728;
double r365737 = r365735 * r365736;
return r365737;
}



Bits error versus v
Results
Initial program 0.0
rmApplied add-cbrt-cube0.0
Applied add-cbrt-cube0.0
Applied add-cbrt-cube1.0
Applied cbrt-undiv0.0
Applied cbrt-unprod0.0
Simplified0.0
Final simplification0.0
herbie shell --seed 2020047 +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))))