m1 + \frac{N \cdot \left(m2 - m\right)}{N + n1}m1 + \frac{N \cdot \left(m2 - m\right)}{N + n1}double code(double m1, double N, double m2, double m, double n1) {
return ((double) (m1 + ((double) (((double) (N * ((double) (m2 - m)))) / ((double) (N + n1))))));
}
double code(double m1, double N, double m2, double m, double n1) {
return ((double) (m1 + ((double) (((double) (N * ((double) (m2 - m)))) / ((double) (N + n1))))));
}



Bits error versus m1



Bits error versus N



Bits error versus m2



Bits error versus m



Bits error versus n1
Results
Initial program 13.0
Final simplification13.0
herbie shell --seed 2020153
(FPCore (m1 N m2 m n1)
:name "(+ m1 (/ (* N (- m2 m)) (+ N n1)))"
:precision binary64
(+ m1 (/ (* N (- m2 m)) (+ N n1))))