Average Error: 31.8 → 31.8
Time: 1.1s
Precision: binary64
\[\left|\sqrt{{x}^{2} + {y}^{2}}\right|\]
\[\left|\sqrt{{x}^{2} + {y}^{2}}\right|\]
\left|\sqrt{{x}^{2} + {y}^{2}}\right|
\left|\sqrt{{x}^{2} + {y}^{2}}\right|
double code(double x, double y) {
	return ((double) fabs(((double) sqrt(((double) (((double) pow(x, 2.0)) + ((double) pow(y, 2.0))))))));
}
double code(double x, double y) {
	return ((double) fabs(((double) sqrt(((double) (((double) pow(x, 2.0)) + ((double) pow(y, 2.0))))))));
}

Error

Bits error versus x

Bits error versus y

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 31.8

    \[\left|\sqrt{{x}^{2} + {y}^{2}}\right|\]
  2. Final simplification31.8

    \[\leadsto \left|\sqrt{{x}^{2} + {y}^{2}}\right|\]

Reproduce

herbie shell --seed 2020152 
(FPCore (x y)
  :name "(fabs (sqrt (+ (pow x 2) (pow y 2))))"
  :precision binary64
  (fabs (sqrt (+ (pow x 2.0) (pow y 2.0)))))