\frac{\left(-t1\right) \cdot v}{\left(t1 + u\right) \cdot \left(t1 + u\right)}\frac{\frac{t1}{\frac{u + t1}{-v}}}{u + t1}double f(double u, double v, double t1) {
double r1488870 = t1;
double r1488871 = -r1488870;
double r1488872 = v;
double r1488873 = r1488871 * r1488872;
double r1488874 = u;
double r1488875 = r1488870 + r1488874;
double r1488876 = r1488875 * r1488875;
double r1488877 = r1488873 / r1488876;
return r1488877;
}
double f(double u, double v, double t1) {
double r1488878 = t1;
double r1488879 = u;
double r1488880 = r1488879 + r1488878;
double r1488881 = v;
double r1488882 = -r1488881;
double r1488883 = r1488880 / r1488882;
double r1488884 = r1488878 / r1488883;
double r1488885 = r1488884 / r1488880;
return r1488885;
}



Bits error versus u



Bits error versus v



Bits error versus t1
Results
Initial program 18.0
rmApplied times-frac1.4
rmApplied associate-*l/1.3
rmApplied *-un-lft-identity1.3
Applied *-un-lft-identity1.3
Applied distribute-lft-out1.3
Applied associate-/r*1.3
Simplified1.5
Final simplification1.5
herbie shell --seed 2019141
(FPCore (u v t1)
:name "Rosa's DopplerBench"
(/ (* (- t1) v) (* (+ t1 u) (+ t1 u))))