\sqrt{\left(x1 - x2\right) \cdot \left(x1 - x2\right) + \left(y1 - y2\right) \cdot \left(y1 - y2\right)}\sqrt{\left(x1 - x2\right) \cdot \left(x1 - x2\right) + \left(y1 - y2\right) \cdot \left(y1 - y2\right)}double code(double x1, double x2, double y1, double y2) {
return ((double) sqrt(((double) (((double) (((double) (x1 - x2)) * ((double) (x1 - x2)))) + ((double) (((double) (y1 - y2)) * ((double) (y1 - y2))))))));
}
double code(double x1, double x2, double y1, double y2) {
return ((double) sqrt(((double) (((double) (((double) (x1 - x2)) * ((double) (x1 - x2)))) + ((double) (((double) (y1 - y2)) * ((double) (y1 - y2))))))));
}



Bits error versus x1



Bits error versus x2



Bits error versus y1



Bits error versus y2
Results
Initial program 43.9
Final simplification43.9
herbie shell --seed 2020152
(FPCore (x1 x2 y1 y2)
:name "(sqrt (+ (* (- x1 x2) (- x1 x2)) (* (- y1 y2) (- y1 y2))))"
:precision binary64
(sqrt (+ (* (- x1 x2) (- x1 x2)) (* (- y1 y2) (- y1 y2)))))