\frac{\left(-t1\right) \cdot v}{\left(t1 + u\right) \cdot \left(t1 + u\right)}\frac{\frac{-v}{t1 + u}}{\frac{t1 + u}{t1}}double f(double u, double v, double t1) {
double r26831 = t1;
double r26832 = -r26831;
double r26833 = v;
double r26834 = r26832 * r26833;
double r26835 = u;
double r26836 = r26831 + r26835;
double r26837 = r26836 * r26836;
double r26838 = r26834 / r26837;
return r26838;
}
double f(double u, double v, double t1) {
double r26839 = v;
double r26840 = -r26839;
double r26841 = t1;
double r26842 = u;
double r26843 = r26841 + r26842;
double r26844 = r26840 / r26843;
double r26845 = r26843 / r26841;
double r26846 = r26844 / r26845;
return r26846;
}



Bits error versus u



Bits error versus v



Bits error versus t1
Results
Initial program 18.5
rmApplied times-frac1.3
rmApplied neg-mul-11.3
Applied associate-/l*1.4
rmApplied *-un-lft-identity1.4
Applied *-un-lft-identity1.4
Applied times-frac1.4
Applied *-un-lft-identity1.4
Applied times-frac1.4
Applied associate-*l*1.4
Simplified1.4
Final simplification1.4
herbie shell --seed 2019326 +o rules:numerics
(FPCore (u v t1)
:name "Rosa's DopplerBench"
:precision binary64
(/ (* (- t1) v) (* (+ t1 u) (+ t1 u))))