Average Error: 25.5 → 25.5
Time: 988.0ms
Precision: binary64
\[\frac{1 - \left(b - r\right) \cdot \left(b - r\right)}{\left(4 \cdot b\right) \cdot r}\]
\[\frac{1 - \left(b - r\right) \cdot \left(b - r\right)}{\left(4 \cdot b\right) \cdot r}\]
\frac{1 - \left(b - r\right) \cdot \left(b - r\right)}{\left(4 \cdot b\right) \cdot r}
\frac{1 - \left(b - r\right) \cdot \left(b - r\right)}{\left(4 \cdot b\right) \cdot r}
double code(double b, double r) {
	return ((double) (((double) (1.0 - ((double) (((double) (b - r)) * ((double) (b - r)))))) / ((double) (((double) (4.0 * b)) * r))));
}
double code(double b, double r) {
	return ((double) (((double) (1.0 - ((double) (((double) (b - r)) * ((double) (b - r)))))) / ((double) (((double) (4.0 * b)) * r))));
}

Error

Bits error versus b

Bits error versus r

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 25.5

    \[\frac{1 - \left(b - r\right) \cdot \left(b - r\right)}{\left(4 \cdot b\right) \cdot r}\]
  2. Final simplification25.5

    \[\leadsto \frac{1 - \left(b - r\right) \cdot \left(b - r\right)}{\left(4 \cdot b\right) \cdot r}\]

Reproduce

herbie shell --seed 2020153 
(FPCore (b r)
  :name "(/ (- 1 (* (- b r) (- b r))) (* (* 4 b) r))"
  :precision binary64
  (/ (- 1.0 (* (- b r) (- b r))) (* (* 4.0 b) r)))