Average Error: 31.7 → 31.7
Time: 935.0ms
Precision: binary64
\[\sqrt{{p}^{2} + {s}^{2}}\]
\[\sqrt{{p}^{2} + {s}^{2}}\]
\sqrt{{p}^{2} + {s}^{2}}
\sqrt{{p}^{2} + {s}^{2}}
double code(double p, double s) {
	return ((double) sqrt(((double) (((double) pow(p, 2.0)) + ((double) pow(s, 2.0))))));
}
double code(double p, double s) {
	return ((double) sqrt(((double) (((double) pow(p, 2.0)) + ((double) pow(s, 2.0))))));
}

Error

Bits error versus p

Bits error versus s

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 31.7

    \[\sqrt{{p}^{2} + {s}^{2}}\]
  2. Final simplification31.7

    \[\leadsto \sqrt{{p}^{2} + {s}^{2}}\]

Reproduce

herbie shell --seed 2020153 
(FPCore (p s)
  :name "(sqrt (+ (pow p 2) (pow s 2)))"
  :precision binary64
  (sqrt (+ (pow p 2.0) (pow s 2.0))))