Average Error: 29.3 → 0
Time: 543.0ms
Precision: binary64
\[\left(a + 10^{3}\right) - a\]
\[10^{3}\]
\left(a + 10^{3}\right) - a
10^{3}
double code(double a) {
	return ((double) (((double) (a + 1000.0)) - a));
}
double code(double a) {
	return 1000.0;
}

Error

Bits error versus a

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 29.3

    \[\left(a + 10^{3}\right) - a\]
  2. Simplified0

    \[\leadsto \color{blue}{10^{3}}\]
  3. Final simplification0

    \[\leadsto 10^{3}\]

Reproduce

herbie shell --seed 2020153 
(FPCore (a)
  :name "(- (+ a 1000) a)"
  :precision binary64
  (- (+ a 1000.0) a))