\frac{\left(-t1\right) \cdot v}{\left(t1 + u\right) \cdot \left(t1 + u\right)}\begin{array}{l}
\mathbf{if}\;v \le -7.006044139584501918827799616430904568798 \cdot 10^{175} \lor \neg \left(v \le 3.148071444587039770004522793389817806585 \cdot 10^{252}\right):\\
\;\;\;\;\left(\frac{\sqrt[3]{-t1} \cdot \sqrt[3]{-t1}}{\sqrt[3]{t1 + u} \cdot \sqrt[3]{t1 + u}} \cdot \left(\frac{\sqrt[3]{-t1}}{\sqrt[3]{t1 + u}} \cdot v\right)\right) \cdot \frac{1}{t1 + u}\\
\mathbf{else}:\\
\;\;\;\;\frac{-t1}{t1 + u} \cdot \frac{v}{t1 + u}\\
\end{array}double f(double u, double v, double t1) {
double r28973 = t1;
double r28974 = -r28973;
double r28975 = v;
double r28976 = r28974 * r28975;
double r28977 = u;
double r28978 = r28973 + r28977;
double r28979 = r28978 * r28978;
double r28980 = r28976 / r28979;
return r28980;
}
double f(double u, double v, double t1) {
double r28981 = v;
double r28982 = -7.006044139584502e+175;
bool r28983 = r28981 <= r28982;
double r28984 = 3.1480714445870398e+252;
bool r28985 = r28981 <= r28984;
double r28986 = !r28985;
bool r28987 = r28983 || r28986;
double r28988 = t1;
double r28989 = -r28988;
double r28990 = cbrt(r28989);
double r28991 = r28990 * r28990;
double r28992 = u;
double r28993 = r28988 + r28992;
double r28994 = cbrt(r28993);
double r28995 = r28994 * r28994;
double r28996 = r28991 / r28995;
double r28997 = r28990 / r28994;
double r28998 = r28997 * r28981;
double r28999 = r28996 * r28998;
double r29000 = 1.0;
double r29001 = r29000 / r28993;
double r29002 = r28999 * r29001;
double r29003 = r28989 / r28993;
double r29004 = r28981 / r28993;
double r29005 = r29003 * r29004;
double r29006 = r28987 ? r29002 : r29005;
return r29006;
}



Bits error versus u



Bits error versus v



Bits error versus t1
Results
if v < -7.006044139584502e+175 or 3.1480714445870398e+252 < v Initial program 34.5
rmApplied times-frac5.7
rmApplied div-inv5.8
Applied associate-*r*3.4
rmApplied add-cube-cbrt4.3
Applied add-cube-cbrt3.9
Applied times-frac3.8
Applied associate-*l*0.8
if -7.006044139584502e+175 < v < 3.1480714445870398e+252Initial program 15.9
rmApplied times-frac0.6
Final simplification0.6
herbie shell --seed 2019351
(FPCore (u v t1)
:name "Rosa's DopplerBench"
:precision binary64
(/ (* (- t1) v) (* (+ t1 u) (+ t1 u))))