double code(double x) {
return ((double) sqrt(((double) (((double) pow(x, 2.0)) + ((double) pow(x, 2.0))))));
}
double code(double x) {
double VAR;
if ((x <= -8.4461583732341e-311)) {
VAR = ((double) sqrt(((double) (((double) pow(x, 2.0)) * 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
Simplified30.8
if -8.44615837323415e-311 < x Initial program 30.7
Simplified30.7
Taylor expanded around 0 5.7
Simplified0.4
rmApplied add-cube-cbrt0.4
Applied associate-*l*0.4
Simplified0.4
Final simplification15.2
herbie shell --seed 2020180
(FPCore (x)
:name "sqrt E"
:precision binary64
(sqrt (+ (pow x 2.0) (pow x 2.0))))