\frac{\left(-t1\right) \cdot v}{\left(t1 + u\right) \cdot \left(t1 + u\right)}\frac{\left(-t1\right) \cdot \frac{1}{\frac{t1 + u}{v}}}{t1 + u}double f(double u, double v, double t1) {
double r22134 = t1;
double r22135 = -r22134;
double r22136 = v;
double r22137 = r22135 * r22136;
double r22138 = u;
double r22139 = r22134 + r22138;
double r22140 = r22139 * r22139;
double r22141 = r22137 / r22140;
return r22141;
}
double f(double u, double v, double t1) {
double r22142 = t1;
double r22143 = -r22142;
double r22144 = 1.0;
double r22145 = u;
double r22146 = r22142 + r22145;
double r22147 = v;
double r22148 = r22146 / r22147;
double r22149 = r22144 / r22148;
double r22150 = r22143 * r22149;
double r22151 = r22150 / r22146;
return r22151;
}



Bits error versus u



Bits error versus v



Bits error versus t1
Results
Initial program 18.4
rmApplied times-frac1.5
rmApplied associate-*r/1.3
Simplified1.4
rmApplied clear-num1.7
Final simplification1.7
herbie shell --seed 2020034
(FPCore (u v t1)
:name "Rosa's DopplerBench"
:precision binary64
(/ (* (- t1) v) (* (+ t1 u) (+ t1 u))))