\frac{vect0}{\sqrt{\left(vect0 \cdot vect0 + vect1 \cdot vect1\right) + vect2 \cdot vect2}}\frac{vect0}{\sqrt{\left(vect0 \cdot vect0 + vect1 \cdot vect1\right) + vect2 \cdot vect2}}double code(double vect0, double vect1, double vect2) {
return ((double) (vect0 / ((double) sqrt(((double) (((double) (((double) (vect0 * vect0)) + ((double) (vect1 * vect1)))) + ((double) (vect2 * vect2))))))));
}
double code(double vect0, double vect1, double vect2) {
return ((double) (vect0 / ((double) sqrt(((double) (((double) (((double) (vect0 * vect0)) + ((double) (vect1 * vect1)))) + ((double) (vect2 * vect2))))))));
}



Bits error versus vect0



Bits error versus vect1



Bits error versus vect2
Results
Initial program 26.9
Final simplification26.9
herbie shell --seed 2020152
(FPCore (vect0 vect1 vect2)
:name "(/ vect0 (sqrt (+ (+ (* vect0 vect0) (* vect1 vect1)) (* vect2 vect2))))"
:precision binary64
(/ vect0 (sqrt (+ (+ (* vect0 vect0) (* vect1 vect1)) (* vect2 vect2)))))