\frac{\left(-t1\right) \cdot v}{\left(t1 + u\right) \cdot \left(t1 + u\right)}\frac{\frac{\sqrt[3]{t1} \cdot \sqrt[3]{t1}}{\sqrt[3]{t1 + u} \cdot \sqrt[3]{t1 + u}}}{\frac{t1 + u}{\frac{-\sqrt[3]{t1}}{\frac{\sqrt[3]{t1 + u}}{v}}}}double f(double u, double v, double t1) {
double r27823 = t1;
double r27824 = -r27823;
double r27825 = v;
double r27826 = r27824 * r27825;
double r27827 = u;
double r27828 = r27823 + r27827;
double r27829 = r27828 * r27828;
double r27830 = r27826 / r27829;
return r27830;
}
double f(double u, double v, double t1) {
double r27831 = t1;
double r27832 = cbrt(r27831);
double r27833 = r27832 * r27832;
double r27834 = u;
double r27835 = r27831 + r27834;
double r27836 = cbrt(r27835);
double r27837 = r27836 * r27836;
double r27838 = r27833 / r27837;
double r27839 = -r27832;
double r27840 = v;
double r27841 = r27836 / r27840;
double r27842 = r27839 / r27841;
double r27843 = r27835 / r27842;
double r27844 = r27838 / r27843;
return r27844;
}



Bits error versus u



Bits error versus v



Bits error versus t1
Results
Initial program 18.4
rmApplied times-frac1.3
rmApplied clear-num1.7
rmApplied associate-*l/1.6
Simplified1.4
rmApplied *-un-lft-identity1.4
Applied add-cube-cbrt2.1
Applied times-frac2.1
Applied add-cube-cbrt1.8
Applied distribute-rgt-neg-in1.8
Applied times-frac1.0
Applied associate-/l*1.2
Final simplification1.2
herbie shell --seed 2019322
(FPCore (u v t1)
:name "Rosa's DopplerBench"
:precision binary64
(/ (* (- t1) v) (* (+ t1 u) (+ t1 u))))