Average Error: 29.7 → 29.7
Time: 1.1s
Precision: binary64
\[a + \sqrt{a \cdot a - k}\]
\[a + \sqrt{a \cdot a - k}\]
a + \sqrt{a \cdot a - k}
a + \sqrt{a \cdot a - k}
double code(double a, double k) {
	return ((double) (a + ((double) sqrt(((double) (((double) (a * a)) - k))))));
}
double code(double a, double k) {
	return ((double) (a + ((double) sqrt(((double) (((double) (a * a)) - k))))));
}

Error

Bits error versus a

Bits error versus k

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 29.7

    \[a + \sqrt{a \cdot a - k}\]
  2. Final simplification29.7

    \[\leadsto a + \sqrt{a \cdot a - k}\]

Reproduce

herbie shell --seed 2020153 
(FPCore (a k)
  :name "(+ a (sqrt (- (* a a) k)))"
  :precision binary64
  (+ a (sqrt (- (* a a) k))))