\left(vect0 \cdot vect0 + vect1 \cdot vect1\right) + vect2 \cdot vect2
\left(vect0 \cdot vect0 + vect1 \cdot vect1\right) + vect2 \cdot vect2
double code(double vect0, double vect1, double vect2) {
return ((double) (((double) (((double) (vect0 * vect0)) + ((double) (vect1 * vect1)))) + ((double) (vect2 * vect2))));
}
double code(double vect0, double vect1, double vect2) {
return ((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 0.0
Final simplification0.0
herbie shell --seed 2020153
(FPCore (vect0 vect1 vect2)
:name "(+ (+ (* vect0 vect0) (* vect1 vect1)) (* vect2 vect2))"
:precision binary64
(+ (+ (* vect0 vect0) (* vect1 vect1)) (* vect2 vect2)))