\frac{\left(-t1\right) \cdot v}{\left(t1 + u\right) \cdot \left(t1 + u\right)}\left(\frac{t1}{t1 + u} \cdot v\right) \cdot \frac{-1}{t1 + u}double f(double u, double v, double t1) {
double r667925 = t1;
double r667926 = -r667925;
double r667927 = v;
double r667928 = r667926 * r667927;
double r667929 = u;
double r667930 = r667925 + r667929;
double r667931 = r667930 * r667930;
double r667932 = r667928 / r667931;
return r667932;
}
double f(double u, double v, double t1) {
double r667933 = t1;
double r667934 = u;
double r667935 = r667933 + r667934;
double r667936 = r667933 / r667935;
double r667937 = v;
double r667938 = r667936 * r667937;
double r667939 = -1.0;
double r667940 = r667939 / r667935;
double r667941 = r667938 * r667940;
return r667941;
}



Bits error versus u



Bits error versus v



Bits error versus t1
Results
Initial program 17.7
rmApplied times-frac1.4
rmApplied div-inv1.5
Applied associate-*r*1.4
Final simplification1.4
herbie shell --seed 2019129
(FPCore (u v t1)
:name "Rosa's DopplerBench"
(/ (* (- t1) v) (* (+ t1 u) (+ t1 u))))