Average Error: 30.5 → 30.5
Time: 2.0s
Precision: binary64
\[\sqrt{1 + {x}^{2}} - \sqrt{1 + {\left(x + 1\right)}^{2}}\]
\[\sqrt{1 + {x}^{2}} - \sqrt{1 + {\left(x + 1\right)}^{2}}\]
\sqrt{1 + {x}^{2}} - \sqrt{1 + {\left(x + 1\right)}^{2}}
\sqrt{1 + {x}^{2}} - \sqrt{1 + {\left(x + 1\right)}^{2}}
double code(double x) {
	return ((double) (((double) sqrt(((double) (1.0 + ((double) pow(x, 2.0)))))) - ((double) sqrt(((double) (1.0 + ((double) pow(((double) (x + 1.0)), 2.0))))))));
}
double code(double x) {
	return ((double) (((double) sqrt(((double) (1.0 + ((double) pow(x, 2.0)))))) - ((double) sqrt(((double) (1.0 + ((double) pow(((double) (x + 1.0)), 2.0))))))));
}

Error

Bits error versus x

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 30.5

    \[\sqrt{1 + {x}^{2}} - \sqrt{1 + {\left(x + 1\right)}^{2}}\]
  2. Final simplification30.5

    \[\leadsto \sqrt{1 + {x}^{2}} - \sqrt{1 + {\left(x + 1\right)}^{2}}\]

Reproduce

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