\frac{\left(-t1\right) \cdot v}{\left(t1 + u\right) \cdot \left(t1 + u\right)}\frac{v \cdot \frac{-t1}{t1 + u}}{t1 + u}double f(double u, double v, double t1) {
double r27980 = t1;
double r27981 = -r27980;
double r27982 = v;
double r27983 = r27981 * r27982;
double r27984 = u;
double r27985 = r27980 + r27984;
double r27986 = r27985 * r27985;
double r27987 = r27983 / r27986;
return r27987;
}
double f(double u, double v, double t1) {
double r27988 = v;
double r27989 = t1;
double r27990 = -r27989;
double r27991 = u;
double r27992 = r27989 + r27991;
double r27993 = r27990 / r27992;
double r27994 = r27988 * r27993;
double r27995 = r27994 / r27992;
return r27995;
}



Bits error versus u



Bits error versus v



Bits error versus t1
Results
Initial program 18.4
rmApplied times-frac1.6
rmApplied add-cube-cbrt1.9
rmApplied associate-*r/1.6
Simplified1.3
Final simplification1.3
herbie shell --seed 2020020
(FPCore (u v t1)
:name "Rosa's DopplerBench"
:precision binary64
(/ (* (- t1) v) (* (+ t1 u) (+ t1 u))))