Average Error: 11.6 → 0.4
Time: 27.5s
Precision: 64
\[\left(\left(3 + \frac{2}{r \cdot r}\right) - \frac{\left(0.125 \cdot \left(3 - 2 \cdot v\right)\right) \cdot \left(\left(\left(w \cdot w\right) \cdot r\right) \cdot r\right)}{1 - v}\right) - 4.5\]
\[\left(\frac{\frac{2}{r}}{r} + \left(3 - 4.5\right)\right) - \frac{\frac{\left(w \cdot r\right) \cdot \left(w \cdot r\right)}{1 - v}}{\frac{1}{\left(3 - v \cdot 2\right) \cdot 0.125}}\]
\left(\left(3 + \frac{2}{r \cdot r}\right) - \frac{\left(0.125 \cdot \left(3 - 2 \cdot v\right)\right) \cdot \left(\left(\left(w \cdot w\right) \cdot r\right) \cdot r\right)}{1 - v}\right) - 4.5
\left(\frac{\frac{2}{r}}{r} + \left(3 - 4.5\right)\right) - \frac{\frac{\left(w \cdot r\right) \cdot \left(w \cdot r\right)}{1 - v}}{\frac{1}{\left(3 - v \cdot 2\right) \cdot 0.125}}
double f(double v, double w, double r) {
        double r757940 = 3.0;
        double r757941 = 2.0;
        double r757942 = r;
        double r757943 = r757942 * r757942;
        double r757944 = r757941 / r757943;
        double r757945 = r757940 + r757944;
        double r757946 = 0.125;
        double r757947 = v;
        double r757948 = r757941 * r757947;
        double r757949 = r757940 - r757948;
        double r757950 = r757946 * r757949;
        double r757951 = w;
        double r757952 = r757951 * r757951;
        double r757953 = r757952 * r757942;
        double r757954 = r757953 * r757942;
        double r757955 = r757950 * r757954;
        double r757956 = 1.0;
        double r757957 = r757956 - r757947;
        double r757958 = r757955 / r757957;
        double r757959 = r757945 - r757958;
        double r757960 = 4.5;
        double r757961 = r757959 - r757960;
        return r757961;
}

double f(double v, double w, double r) {
        double r757962 = 2.0;
        double r757963 = r;
        double r757964 = r757962 / r757963;
        double r757965 = r757964 / r757963;
        double r757966 = 3.0;
        double r757967 = 4.5;
        double r757968 = r757966 - r757967;
        double r757969 = r757965 + r757968;
        double r757970 = w;
        double r757971 = r757970 * r757963;
        double r757972 = r757971 * r757971;
        double r757973 = 1.0;
        double r757974 = v;
        double r757975 = r757973 - r757974;
        double r757976 = r757972 / r757975;
        double r757977 = r757974 * r757962;
        double r757978 = r757966 - r757977;
        double r757979 = 0.125;
        double r757980 = r757978 * r757979;
        double r757981 = r757973 / r757980;
        double r757982 = r757976 / r757981;
        double r757983 = r757969 - r757982;
        return r757983;
}

Error

Bits error versus v

Bits error versus w

Bits error versus r

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 11.6

    \[\left(\left(3 + \frac{2}{r \cdot r}\right) - \frac{\left(0.125 \cdot \left(3 - 2 \cdot v\right)\right) \cdot \left(\left(\left(w \cdot w\right) \cdot r\right) \cdot r\right)}{1 - v}\right) - 4.5\]
  2. Simplified5.9

    \[\leadsto \color{blue}{\left(\frac{2}{r \cdot r} + \left(3 - 4.5\right)\right) - \frac{\left(\left(w \cdot r\right) \cdot \left(w \cdot r\right)\right) \cdot \left(\left(3 - 2 \cdot v\right) \cdot 0.125\right)}{1 - v}}\]
  3. Using strategy rm
  4. Applied associate-/l*0.4

    \[\leadsto \left(\frac{2}{r \cdot r} + \left(3 - 4.5\right)\right) - \color{blue}{\frac{\left(w \cdot r\right) \cdot \left(w \cdot r\right)}{\frac{1 - v}{\left(3 - 2 \cdot v\right) \cdot 0.125}}}\]
  5. Taylor expanded around inf 0.4

    \[\leadsto \left(\color{blue}{\frac{2}{{r}^{2}}} + \left(3 - 4.5\right)\right) - \frac{\left(w \cdot r\right) \cdot \left(w \cdot r\right)}{\frac{1 - v}{\left(3 - 2 \cdot v\right) \cdot 0.125}}\]
  6. Simplified0.4

    \[\leadsto \left(\color{blue}{\frac{\frac{2}{r}}{r}} + \left(3 - 4.5\right)\right) - \frac{\left(w \cdot r\right) \cdot \left(w \cdot r\right)}{\frac{1 - v}{\left(3 - 2 \cdot v\right) \cdot 0.125}}\]
  7. Using strategy rm
  8. Applied div-inv0.4

    \[\leadsto \left(\frac{\frac{2}{r}}{r} + \left(3 - 4.5\right)\right) - \frac{\left(w \cdot r\right) \cdot \left(w \cdot r\right)}{\color{blue}{\left(1 - v\right) \cdot \frac{1}{\left(3 - 2 \cdot v\right) \cdot 0.125}}}\]
  9. Applied associate-/r*0.4

    \[\leadsto \left(\frac{\frac{2}{r}}{r} + \left(3 - 4.5\right)\right) - \color{blue}{\frac{\frac{\left(w \cdot r\right) \cdot \left(w \cdot r\right)}{1 - v}}{\frac{1}{\left(3 - 2 \cdot v\right) \cdot 0.125}}}\]
  10. Final simplification0.4

    \[\leadsto \left(\frac{\frac{2}{r}}{r} + \left(3 - 4.5\right)\right) - \frac{\frac{\left(w \cdot r\right) \cdot \left(w \cdot r\right)}{1 - v}}{\frac{1}{\left(3 - v \cdot 2\right) \cdot 0.125}}\]

Reproduce

herbie shell --seed 2019151 
(FPCore (v w r)
  :name "Rosa's TurbineBenchmark"
  (- (- (+ 3 (/ 2 (* r r))) (/ (* (* 0.125 (- 3 (* 2 v))) (* (* (* w w) r) r)) (- 1 v))) 4.5))