\left(\frac{\sqrt{2.0}}{4.0} \cdot \sqrt{1.0 - 3.0 \cdot \left(v \cdot v\right)}\right) \cdot \left(1.0 - v \cdot v\right)\frac{\left(1.0 - v \cdot v\right) \cdot \left(\sqrt{1.0 \cdot 1.0 - \left(3.0 \cdot \left(v \cdot v\right)\right) \cdot \left(3.0 \cdot \left(v \cdot v\right)\right)} \cdot \frac{\sqrt{2.0}}{4.0}\right)}{\sqrt{1.0 + 3.0 \cdot \left(v \cdot v\right)}}double f(double v) {
double r4531211 = 2.0;
double r4531212 = sqrt(r4531211);
double r4531213 = 4.0;
double r4531214 = r4531212 / r4531213;
double r4531215 = 1.0;
double r4531216 = 3.0;
double r4531217 = v;
double r4531218 = r4531217 * r4531217;
double r4531219 = r4531216 * r4531218;
double r4531220 = r4531215 - r4531219;
double r4531221 = sqrt(r4531220);
double r4531222 = r4531214 * r4531221;
double r4531223 = r4531215 - r4531218;
double r4531224 = r4531222 * r4531223;
return r4531224;
}
double f(double v) {
double r4531225 = 1.0;
double r4531226 = v;
double r4531227 = r4531226 * r4531226;
double r4531228 = r4531225 - r4531227;
double r4531229 = r4531225 * r4531225;
double r4531230 = 3.0;
double r4531231 = r4531230 * r4531227;
double r4531232 = r4531231 * r4531231;
double r4531233 = r4531229 - r4531232;
double r4531234 = sqrt(r4531233);
double r4531235 = 2.0;
double r4531236 = sqrt(r4531235);
double r4531237 = 4.0;
double r4531238 = r4531236 / r4531237;
double r4531239 = r4531234 * r4531238;
double r4531240 = r4531228 * r4531239;
double r4531241 = r4531225 + r4531231;
double r4531242 = sqrt(r4531241);
double r4531243 = r4531240 / r4531242;
return r4531243;
}



Bits error versus v
Results
Initial program 0.0
rmApplied flip--0.0
Applied sqrt-div0.0
Applied associate-*r/0.0
Applied associate-*l/0.0
Final simplification0.0
herbie shell --seed 2019165 +o rules:numerics
(FPCore (v)
:name "Falkner and Boettcher, Appendix B, 2"
(* (* (/ (sqrt 2.0) 4.0) (sqrt (- 1.0 (* 3.0 (* v v))))) (- 1.0 (* v v))))