Average Error: 18.0 → 1.3
Time: 17.1s
Precision: 64
\[\frac{\left(-t1\right) \cdot v}{\left(t1 + u\right) \cdot \left(t1 + u\right)}\]
\[\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 \frac{v}{t1 + u}\right)\]
\frac{\left(-t1\right) \cdot v}{\left(t1 + u\right) \cdot \left(t1 + u\right)}
\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 \frac{v}{t1 + u}\right)
double f(double u, double v, double t1) {
        double r24982 = t1;
        double r24983 = -r24982;
        double r24984 = v;
        double r24985 = r24983 * r24984;
        double r24986 = u;
        double r24987 = r24982 + r24986;
        double r24988 = r24987 * r24987;
        double r24989 = r24985 / r24988;
        return r24989;
}

double f(double u, double v, double t1) {
        double r24990 = t1;
        double r24991 = -r24990;
        double r24992 = cbrt(r24991);
        double r24993 = r24992 * r24992;
        double r24994 = u;
        double r24995 = r24990 + r24994;
        double r24996 = cbrt(r24995);
        double r24997 = r24996 * r24996;
        double r24998 = r24993 / r24997;
        double r24999 = r24992 / r24996;
        double r25000 = v;
        double r25001 = r25000 / r24995;
        double r25002 = r24999 * r25001;
        double r25003 = r24998 * r25002;
        return r25003;
}

Error

Bits error versus u

Bits error versus v

Bits error versus t1

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 18.0

    \[\frac{\left(-t1\right) \cdot v}{\left(t1 + u\right) \cdot \left(t1 + u\right)}\]
  2. Using strategy rm
  3. Applied times-frac1.5

    \[\leadsto \color{blue}{\frac{-t1}{t1 + u} \cdot \frac{v}{t1 + u}}\]
  4. Using strategy rm
  5. Applied add-cube-cbrt2.3

    \[\leadsto \frac{-t1}{\color{blue}{\left(\sqrt[3]{t1 + u} \cdot \sqrt[3]{t1 + u}\right) \cdot \sqrt[3]{t1 + u}}} \cdot \frac{v}{t1 + u}\]
  6. Applied add-cube-cbrt1.8

    \[\leadsto \frac{\color{blue}{\left(\sqrt[3]{-t1} \cdot \sqrt[3]{-t1}\right) \cdot \sqrt[3]{-t1}}}{\left(\sqrt[3]{t1 + u} \cdot \sqrt[3]{t1 + u}\right) \cdot \sqrt[3]{t1 + u}} \cdot \frac{v}{t1 + u}\]
  7. Applied times-frac1.8

    \[\leadsto \color{blue}{\left(\frac{\sqrt[3]{-t1} \cdot \sqrt[3]{-t1}}{\sqrt[3]{t1 + u} \cdot \sqrt[3]{t1 + u}} \cdot \frac{\sqrt[3]{-t1}}{\sqrt[3]{t1 + u}}\right)} \cdot \frac{v}{t1 + u}\]
  8. Applied associate-*l*1.3

    \[\leadsto \color{blue}{\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 \frac{v}{t1 + u}\right)}\]
  9. Final simplification1.3

    \[\leadsto \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 \frac{v}{t1 + u}\right)\]

Reproduce

herbie shell --seed 2019212 +o rules:numerics
(FPCore (u v t1)
  :name "Rosa's DopplerBench"
  :precision binary64
  (/ (* (- t1) v) (* (+ t1 u) (+ t1 u))))