Average Error: 1.5 → 1.5
Time: 1.3s
Precision: binary64
\[2 \cdot \left(n \cdot r\right) - \left(d \cdot r\right) \cdot \left(n \cdot r\right)\]
\[2 \cdot \left(n \cdot r\right) - \left(d \cdot r\right) \cdot \left(n \cdot r\right)\]
2 \cdot \left(n \cdot r\right) - \left(d \cdot r\right) \cdot \left(n \cdot r\right)
2 \cdot \left(n \cdot r\right) - \left(d \cdot r\right) \cdot \left(n \cdot r\right)
double code(double n, double r, double d) {
	return ((double) (((double) (2.0 * ((double) (n * r)))) - ((double) (((double) (d * r)) * ((double) (n * r))))));
}
double code(double n, double r, double d) {
	return ((double) (((double) (2.0 * ((double) (n * r)))) - ((double) (((double) (d * r)) * ((double) (n * r))))));
}

Error

Bits error versus n

Bits error versus r

Bits error versus d

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 1.5

    \[2 \cdot \left(n \cdot r\right) - \left(d \cdot r\right) \cdot \left(n \cdot r\right)\]
  2. Final simplification1.5

    \[\leadsto 2 \cdot \left(n \cdot r\right) - \left(d \cdot r\right) \cdot \left(n \cdot r\right)\]

Reproduce

herbie shell --seed 2020152 
(FPCore (n r d)
  :name "(- (* 2 (* n r)) (* (* d r) (* n r)))"
  :precision binary64
  (- (* 2.0 (* n r)) (* (* d r) (* n r))))