\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 \sqrt{1 - \log \left(e^{3 \cdot \left(v \cdot v\right)}\right)}\right) \cdot \left(1 - v \cdot v\right)double f(double v) {
double r286200 = 2.0;
double r286201 = sqrt(r286200);
double r286202 = 4.0;
double r286203 = r286201 / r286202;
double r286204 = 1.0;
double r286205 = 3.0;
double r286206 = v;
double r286207 = r286206 * r286206;
double r286208 = r286205 * r286207;
double r286209 = r286204 - r286208;
double r286210 = sqrt(r286209);
double r286211 = r286203 * r286210;
double r286212 = r286204 - r286207;
double r286213 = r286211 * r286212;
return r286213;
}
double f(double v) {
double r286214 = 2.0;
double r286215 = sqrt(r286214);
double r286216 = 4.0;
double r286217 = r286215 / r286216;
double r286218 = 1.0;
double r286219 = 3.0;
double r286220 = v;
double r286221 = r286220 * r286220;
double r286222 = r286219 * r286221;
double r286223 = exp(r286222);
double r286224 = log(r286223);
double r286225 = r286218 - r286224;
double r286226 = sqrt(r286225);
double r286227 = r286217 * r286226;
double r286228 = r286218 - r286221;
double r286229 = r286227 * r286228;
return r286229;
}



Bits error versus v
Results
Initial program 0.0
rmApplied add-log-exp0.0
Final simplification0.0
herbie shell --seed 2020042 +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))))