\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 r1081588 = t1;
double r1081589 = -r1081588;
double r1081590 = v;
double r1081591 = r1081589 * r1081590;
double r1081592 = u;
double r1081593 = r1081588 + r1081592;
double r1081594 = r1081593 * r1081593;
double r1081595 = r1081591 / r1081594;
return r1081595;
}
double f(double u, double v, double t1) {
double r1081596 = t1;
double r1081597 = u;
double r1081598 = r1081596 + r1081597;
double r1081599 = r1081596 / r1081598;
double r1081600 = v;
double r1081601 = r1081599 * r1081600;
double r1081602 = r1081601 / r1081598;
double r1081603 = -r1081602;
return r1081603;
}



Bits error versus u



Bits error versus v



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