\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 r20323 = t1;
double r20324 = -r20323;
double r20325 = v;
double r20326 = r20324 * r20325;
double r20327 = u;
double r20328 = r20323 + r20327;
double r20329 = r20328 * r20328;
double r20330 = r20326 / r20329;
return r20330;
}
double f(double u, double v, double t1) {
double r20331 = t1;
double r20332 = -r20331;
double r20333 = v;
double r20334 = u;
double r20335 = r20331 + r20334;
double r20336 = r20333 / r20335;
double r20337 = r20332 * r20336;
double r20338 = r20337 / r20335;
return r20338;
}



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 +o rules:numerics
(FPCore (u v t1)
:name "Rosa's DopplerBench"
:precision binary64
(/ (* (- t1) v) (* (+ t1 u) (+ t1 u))))