Average Error: 17.5 → 1.6
Time: 17.8s
Precision: 64
\[\frac{\left(-t1\right) \cdot v}{\left(t1 + u\right) \cdot \left(t1 + u\right)}\]
\[\frac{t1}{-\left(u + t1\right)} \cdot \frac{\frac{1}{u + t1}}{\frac{1}{v}}\]
\frac{\left(-t1\right) \cdot v}{\left(t1 + u\right) \cdot \left(t1 + u\right)}
\frac{t1}{-\left(u + t1\right)} \cdot \frac{\frac{1}{u + t1}}{\frac{1}{v}}
double f(double u, double v, double t1) {
        double r477042 = t1;
        double r477043 = -r477042;
        double r477044 = v;
        double r477045 = r477043 * r477044;
        double r477046 = u;
        double r477047 = r477042 + r477046;
        double r477048 = r477047 * r477047;
        double r477049 = r477045 / r477048;
        return r477049;
}

double f(double u, double v, double t1) {
        double r477050 = t1;
        double r477051 = u;
        double r477052 = r477051 + r477050;
        double r477053 = -r477052;
        double r477054 = r477050 / r477053;
        double r477055 = 1.0;
        double r477056 = r477055 / r477052;
        double r477057 = v;
        double r477058 = r477055 / r477057;
        double r477059 = r477056 / r477058;
        double r477060 = r477054 * r477059;
        return r477060;
}

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 17.5

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

    \[\leadsto \color{blue}{\frac{-t1}{t1 + u} \cdot \frac{v}{t1 + u}}\]
  4. Using strategy rm
  5. Applied frac-2neg1.4

    \[\leadsto \color{blue}{\frac{-\left(-t1\right)}{-\left(t1 + u\right)}} \cdot \frac{v}{t1 + u}\]
  6. Simplified1.4

    \[\leadsto \frac{\color{blue}{t1}}{-\left(t1 + u\right)} \cdot \frac{v}{t1 + u}\]
  7. Using strategy rm
  8. Applied *-un-lft-identity1.4

    \[\leadsto \frac{t1}{-\left(t1 + u\right)} \cdot \frac{\color{blue}{1 \cdot v}}{t1 + u}\]
  9. Applied associate-/l*1.8

    \[\leadsto \frac{t1}{-\left(t1 + u\right)} \cdot \color{blue}{\frac{1}{\frac{t1 + u}{v}}}\]
  10. Using strategy rm
  11. Applied div-inv1.8

    \[\leadsto \frac{t1}{-\left(t1 + u\right)} \cdot \frac{1}{\color{blue}{\left(t1 + u\right) \cdot \frac{1}{v}}}\]
  12. Applied associate-/r*1.6

    \[\leadsto \frac{t1}{-\left(t1 + u\right)} \cdot \color{blue}{\frac{\frac{1}{t1 + u}}{\frac{1}{v}}}\]
  13. Final simplification1.6

    \[\leadsto \frac{t1}{-\left(u + t1\right)} \cdot \frac{\frac{1}{u + t1}}{\frac{1}{v}}\]

Reproduce

herbie shell --seed 2019152 
(FPCore (u v t1)
  :name "Rosa's DopplerBench"
  (/ (* (- t1) v) (* (+ t1 u) (+ t1 u))))