Average Error: 31.8 → 31.8
Time: 688.0ms
Precision: binary64
\[\sqrt{xre \cdot xre + xim \cdot xim}\]
\[\sqrt{xre \cdot xre + xim \cdot xim}\]
\sqrt{xre \cdot xre + xim \cdot xim}
\sqrt{xre \cdot xre + xim \cdot xim}
double code(double xre, double xim) {
	return ((double) sqrt(((double) (((double) (xre * xre)) + ((double) (xim * xim))))));
}
double code(double xre, double xim) {
	return ((double) sqrt(((double) (((double) (xre * xre)) + ((double) (xim * xim))))));
}

Error

Bits error versus xre

Bits error versus xim

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 31.8

    \[\sqrt{xre \cdot xre + xim \cdot xim}\]
  2. Final simplification31.8

    \[\leadsto \sqrt{xre \cdot xre + xim \cdot xim}\]

Reproduce

herbie shell --seed 2020152 
(FPCore (xre xim)
  :name "(sqrt (+ (* xre xre) (* xim xim)))"
  :precision binary64
  (sqrt (+ (* xre xre) (* xim xim))))