\frac{\left(-t1\right) \cdot v}{\left(t1 + u\right) \cdot \left(t1 + u\right)}\frac{\frac{-t1}{t1 + u} \cdot v}{t1 + u}double f(double u, double v, double t1) {
double r21579 = t1;
double r21580 = -r21579;
double r21581 = v;
double r21582 = r21580 * r21581;
double r21583 = u;
double r21584 = r21579 + r21583;
double r21585 = r21584 * r21584;
double r21586 = r21582 / r21585;
return r21586;
}
double f(double u, double v, double t1) {
double r21587 = t1;
double r21588 = -r21587;
double r21589 = u;
double r21590 = r21587 + r21589;
double r21591 = r21588 / r21590;
double r21592 = v;
double r21593 = r21591 * r21592;
double r21594 = r21593 / r21590;
return r21594;
}



Bits error versus u



Bits error versus v



Bits error versus t1
Results
Initial program 18.5
rmApplied times-frac1.4
rmApplied associate-*r/1.4
Final simplification1.4
herbie shell --seed 2019323 +o rules:numerics
(FPCore (u v t1)
:name "Rosa's DopplerBench"
:precision binary64
(/ (* (- t1) v) (* (+ t1 u) (+ t1 u))))