Average Error: 0.1 → 0.1
Time: 906.0ms
Precision: binary64
\[1 - \frac{1}{r} \cdot \left|x\right|\]
\[1 - \frac{1}{r} \cdot \left|x\right|\]
1 - \frac{1}{r} \cdot \left|x\right|
1 - \frac{1}{r} \cdot \left|x\right|
double code(double r, double x) {
	return ((double) (1.0 - ((double) (((double) (1.0 / r)) * ((double) fabs(x))))));
}
double code(double r, double x) {
	return ((double) (1.0 - ((double) (((double) (1.0 / r)) * ((double) fabs(x))))));
}

Error

Bits error versus r

Bits error versus x

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 0.1

    \[1 - \frac{1}{r} \cdot \left|x\right|\]
  2. Final simplification0.1

    \[\leadsto 1 - \frac{1}{r} \cdot \left|x\right|\]

Reproduce

herbie shell --seed 2020152 
(FPCore (r x)
  :name "(- 1.0 (* (/ 1 r) (fabs x)))"
  :precision binary64
  (- 1.0 (* (/ 1.0 r) (fabs x))))