\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 \left(\left|\sqrt[3]{1 - 3 \cdot \left(v \cdot v\right)}\right| \cdot \sqrt{\sqrt[3]{1 - 3 \cdot \left(v \cdot v\right)}}\right)\right) \cdot \left(1 - v \cdot v\right)double f(double v) {
double r167194 = 2.0;
double r167195 = sqrt(r167194);
double r167196 = 4.0;
double r167197 = r167195 / r167196;
double r167198 = 1.0;
double r167199 = 3.0;
double r167200 = v;
double r167201 = r167200 * r167200;
double r167202 = r167199 * r167201;
double r167203 = r167198 - r167202;
double r167204 = sqrt(r167203);
double r167205 = r167197 * r167204;
double r167206 = r167198 - r167201;
double r167207 = r167205 * r167206;
return r167207;
}
double f(double v) {
double r167208 = 2.0;
double r167209 = sqrt(r167208);
double r167210 = 4.0;
double r167211 = r167209 / r167210;
double r167212 = 1.0;
double r167213 = 3.0;
double r167214 = v;
double r167215 = r167214 * r167214;
double r167216 = r167213 * r167215;
double r167217 = r167212 - r167216;
double r167218 = cbrt(r167217);
double r167219 = fabs(r167218);
double r167220 = sqrt(r167218);
double r167221 = r167219 * r167220;
double r167222 = r167211 * r167221;
double r167223 = r167212 - r167215;
double r167224 = r167222 * r167223;
return r167224;
}



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