\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 r21699 = t1;
double r21700 = -r21699;
double r21701 = v;
double r21702 = r21700 * r21701;
double r21703 = u;
double r21704 = r21699 + r21703;
double r21705 = r21704 * r21704;
double r21706 = r21702 / r21705;
return r21706;
}
double f(double u, double v, double t1) {
double r21707 = t1;
double r21708 = -r21707;
double r21709 = u;
double r21710 = r21707 + r21709;
double r21711 = r21708 / r21710;
double r21712 = v;
double r21713 = r21711 * r21712;
double r21714 = r21713 / r21710;
return r21714;
}



Bits error versus u



Bits error versus v



Bits error versus t1
Results
Initial program 18.1
rmApplied times-frac1.3
rmApplied associate-*r/1.2
Final simplification1.2
herbie shell --seed 2019235
(FPCore (u v t1)
:name "Rosa's DopplerBench"
:precision binary64
(/ (* (- t1) v) (* (+ t1 u) (+ t1 u))))