Average Error: 8.0 → 8.0
Time: 1.3s
Precision: binary64
\[\frac{dr \cdot a + sr \cdot ma}{m}\]
\[\frac{dr \cdot a + sr \cdot ma}{m}\]
\frac{dr \cdot a + sr \cdot ma}{m}
\frac{dr \cdot a + sr \cdot ma}{m}
double code(double dr, double a, double sr, double ma, double m) {
	return ((double) (((double) (((double) (dr * a)) + ((double) (sr * ma)))) / m));
}
double code(double dr, double a, double sr, double ma, double m) {
	return ((double) (((double) (((double) (dr * a)) + ((double) (sr * ma)))) / m));
}

Error

Bits error versus dr

Bits error versus a

Bits error versus sr

Bits error versus ma

Bits error versus m

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 8.0

    \[\frac{dr \cdot a + sr \cdot ma}{m}\]
  2. Final simplification8.0

    \[\leadsto \frac{dr \cdot a + sr \cdot ma}{m}\]

Reproduce

herbie shell --seed 2020153 
(FPCore (dr a sr ma m)
  :name "(/ (+ (* dr a) (* sr ma)) m)"
  :precision binary64
  (/ (+ (* dr a) (* sr ma)) m))