double f(double v) {
double r37162397 = 2.0;
double r37162398 = sqrt(r37162397);
double r37162399 = 4.0;
double r37162400 = r37162398 / r37162399;
double r37162401 = 1.0;
double r37162402 = 3.0;
double r37162403 = v;
double r37162404 = r37162403 * r37162403;
double r37162405 = r37162402 * r37162404;
double r37162406 = r37162401 - r37162405;
double r37162407 = sqrt(r37162406);
double r37162408 = r37162400 * r37162407;
double r37162409 = r37162401 - r37162404;
double r37162410 = r37162408 * r37162409;
return r37162410;
}
double f(double v) {
double r37162411 = 2.0;
double r37162412 = sqrt(r37162411);
double r37162413 = 0.03125;
double r37162414 = r37162412 * r37162413;
double r37162415 = -3.0;
double r37162416 = v;
double r37162417 = r37162415 * r37162416;
double r37162418 = 1.0;
double r37162419 = fma(r37162417, r37162416, r37162418);
double r37162420 = sqrt(r37162419);
double r37162421 = r37162419 * r37162420;
double r37162422 = r37162414 * r37162421;
double r37162423 = cbrt(r37162422);
double r37162424 = r37162416 * r37162416;
double r37162425 = r37162418 - r37162424;
double r37162426 = r37162423 * r37162425;
return r37162426;
}
\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(\sqrt{2} \cdot \frac{1}{32}\right) \cdot \left((\left(-3 \cdot v\right) \cdot v + 1)_* \cdot \sqrt{(\left(-3 \cdot v\right) \cdot v + 1)_*}\right)} \cdot \left(1 - v \cdot v\right)


Bits error versus v
Initial program 0.0
rmApplied add-cbrt-cube0.0
Applied add-cbrt-cube0.0
Applied cbrt-unprod0.0
Simplified0.0
Final simplification0.0
herbie shell --seed 2019102 +o rules:numerics
(FPCore (v)
:name "Falkner and Boettcher, Appendix B, 2"
(* (* (/ (sqrt 2) 4) (sqrt (- 1 (* 3 (* v v))))) (- 1 (* v v))))