double code(double x) {
return ((double) sqrt(((double) (2.0 * ((double) pow(x, 2.0))))));
}
double code(double x) {
double VAR;
if ((x <= -8.4461583732341e-311)) {
VAR = ((double) (((double) sqrt(2.0)) * ((double) sqrt(((double) pow(x, 2.0))))));
} else {
VAR = ((double) (((double) (((double) cbrt(((double) sqrt(2.0)))) * ((double) cbrt(((double) sqrt(2.0)))))) * ((double) (((double) cbrt(((double) sqrt(2.0)))) * ((double) pow(x, 1.0))))));
}
return VAR;
}



Bits error versus x
Results
if x < -8.44615837323415e-311Initial program 30.8
rmApplied sqrt-prod30.9
if -8.44615837323415e-311 < x Initial program 30.7
Taylor expanded around 0 5.7
Simplified0.4
rmApplied add-cube-cbrt0.4
Applied associate-*l*0.4
Simplified0.4
Final simplification15.3
herbie shell --seed 2020180
(FPCore (x)
:name "sqrt D"
:precision binary64
(sqrt (* 2.0 (pow x 2.0))))