\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(\left(\frac{\sqrt{2}}{4} \cdot \sqrt{1 - 3 \cdot \left(v \cdot v\right)}\right) \cdot \left(1 - v \cdot v\right)\right)}^{3}}double f(double v) {
double r362477 = 2.0;
double r362478 = sqrt(r362477);
double r362479 = 4.0;
double r362480 = r362478 / r362479;
double r362481 = 1.0;
double r362482 = 3.0;
double r362483 = v;
double r362484 = r362483 * r362483;
double r362485 = r362482 * r362484;
double r362486 = r362481 - r362485;
double r362487 = sqrt(r362486);
double r362488 = r362480 * r362487;
double r362489 = r362481 - r362484;
double r362490 = r362488 * r362489;
return r362490;
}
double f(double v) {
double r362491 = 2.0;
double r362492 = sqrt(r362491);
double r362493 = 4.0;
double r362494 = r362492 / r362493;
double r362495 = 1.0;
double r362496 = 3.0;
double r362497 = v;
double r362498 = r362497 * r362497;
double r362499 = r362496 * r362498;
double r362500 = r362495 - r362499;
double r362501 = sqrt(r362500);
double r362502 = r362494 * r362501;
double r362503 = r362495 - r362498;
double r362504 = r362502 * r362503;
double r362505 = 3.0;
double r362506 = pow(r362504, r362505);
double r362507 = cbrt(r362506);
return r362507;
}



Bits error versus v
Results
Initial program 0.0
rmApplied add-cbrt-cube0.0
Applied add-cbrt-cube0.0
Applied add-cbrt-cube0.0
Applied add-cbrt-cube1.0
Applied cbrt-undiv0.0
Applied cbrt-unprod0.0
Applied cbrt-unprod0.0
Simplified0.0
Final simplification0.0
herbie shell --seed 2020001
(FPCore (v)
:name "Falkner and Boettcher, Appendix B, 2"
:precision binary64
(* (* (/ (sqrt 2) 4) (sqrt (- 1 (* 3 (* v v))))) (- 1 (* v v))))