\frac{\left(-t1\right) \cdot v}{\left(t1 + u\right) \cdot \left(t1 + u\right)}\frac{\left(-t1\right) \cdot \frac{v}{t1 + u}}{t1 + u}double f(double u, double v, double t1) {
double r25235 = t1;
double r25236 = -r25235;
double r25237 = v;
double r25238 = r25236 * r25237;
double r25239 = u;
double r25240 = r25235 + r25239;
double r25241 = r25240 * r25240;
double r25242 = r25238 / r25241;
return r25242;
}
double f(double u, double v, double t1) {
double r25243 = t1;
double r25244 = -r25243;
double r25245 = v;
double r25246 = u;
double r25247 = r25243 + r25246;
double r25248 = r25245 / r25247;
double r25249 = r25244 * r25248;
double r25250 = r25249 / r25247;
return r25250;
}



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.2
Final simplification1.2
herbie shell --seed 2019209
(FPCore (u v t1)
:name "Rosa's DopplerBench"
:precision binary64
(/ (* (- t1) v) (* (+ t1 u) (+ t1 u))))