\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 r2171791 = t1;
double r2171792 = -r2171791;
double r2171793 = v;
double r2171794 = r2171792 * r2171793;
double r2171795 = u;
double r2171796 = r2171791 + r2171795;
double r2171797 = r2171796 * r2171796;
double r2171798 = r2171794 / r2171797;
return r2171798;
}
double f(double u, double v, double t1) {
double r2171799 = t1;
double r2171800 = u;
double r2171801 = r2171799 + r2171800;
double r2171802 = r2171799 / r2171801;
double r2171803 = v;
double r2171804 = r2171802 * r2171803;
double r2171805 = r2171804 / r2171801;
double r2171806 = -r2171805;
return r2171806;
}



Bits error versus u



Bits error versus v



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