\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 r20364 = t1;
double r20365 = -r20364;
double r20366 = v;
double r20367 = r20365 * r20366;
double r20368 = u;
double r20369 = r20364 + r20368;
double r20370 = r20369 * r20369;
double r20371 = r20367 / r20370;
return r20371;
}
double f(double u, double v, double t1) {
double r20372 = t1;
double r20373 = -r20372;
double r20374 = v;
double r20375 = u;
double r20376 = r20372 + r20375;
double r20377 = r20374 / r20376;
double r20378 = r20373 * r20377;
double r20379 = r20378 / r20376;
return r20379;
}



Bits error versus u



Bits error versus v



Bits error versus t1
Results
Initial program 18.0
rmApplied times-frac1.6
rmApplied associate-*l/1.6
Final simplification1.6
herbie shell --seed 2019208 +o rules:numerics
(FPCore (u v t1)
:name "Rosa's DopplerBench"
:precision binary64
(/ (* (- t1) v) (* (+ t1 u) (+ t1 u))))