\frac{\left(-t1\right) \cdot v}{\left(t1 + u\right) \cdot \left(t1 + u\right)}\left(\frac{t1}{t1 + u} \cdot v\right) \cdot \frac{-1}{t1 + u}double f(double u, double v, double t1) {
double r1459470 = t1;
double r1459471 = -r1459470;
double r1459472 = v;
double r1459473 = r1459471 * r1459472;
double r1459474 = u;
double r1459475 = r1459470 + r1459474;
double r1459476 = r1459475 * r1459475;
double r1459477 = r1459473 / r1459476;
return r1459477;
}
double f(double u, double v, double t1) {
double r1459478 = t1;
double r1459479 = u;
double r1459480 = r1459478 + r1459479;
double r1459481 = r1459478 / r1459480;
double r1459482 = v;
double r1459483 = r1459481 * r1459482;
double r1459484 = -1.0;
double r1459485 = r1459484 / r1459480;
double r1459486 = r1459483 * r1459485;
return r1459486;
}



Bits error versus u



Bits error versus v



Bits error versus t1
Results
Initial program 18.3
rmApplied times-frac1.2
rmApplied div-inv1.3
Applied associate-*r*1.4
Final simplification1.4
herbie shell --seed 2019138
(FPCore (u v t1)
:name "Rosa's DopplerBench"
(/ (* (- t1) v) (* (+ t1 u) (+ t1 u))))