Average Error: 12.8 → 0.5
Time: 25.6s
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\]
\[\frac{2}{r \cdot r} + \left(3 - \left(4.5 + \frac{\sqrt[3]{3 - v \cdot 2} \cdot \sqrt[3]{3 - v \cdot 2}}{\frac{\frac{\sqrt[3]{1 - v} \cdot \sqrt[3]{1 - v}}{r \cdot w}}{\sqrt[3]{3 - v \cdot 2}}} \cdot \frac{0.125}{\frac{\sqrt[3]{1 - v}}{r \cdot w}}\right)\right)\]
\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
\frac{2}{r \cdot r} + \left(3 - \left(4.5 + \frac{\sqrt[3]{3 - v \cdot 2} \cdot \sqrt[3]{3 - v \cdot 2}}{\frac{\frac{\sqrt[3]{1 - v} \cdot \sqrt[3]{1 - v}}{r \cdot w}}{\sqrt[3]{3 - v \cdot 2}}} \cdot \frac{0.125}{\frac{\sqrt[3]{1 - v}}{r \cdot w}}\right)\right)
double f(double v, double w, double r) {
        double r1972580 = 3.0;
        double r1972581 = 2.0;
        double r1972582 = r;
        double r1972583 = r1972582 * r1972582;
        double r1972584 = r1972581 / r1972583;
        double r1972585 = r1972580 + r1972584;
        double r1972586 = 0.125;
        double r1972587 = v;
        double r1972588 = r1972581 * r1972587;
        double r1972589 = r1972580 - r1972588;
        double r1972590 = r1972586 * r1972589;
        double r1972591 = w;
        double r1972592 = r1972591 * r1972591;
        double r1972593 = r1972592 * r1972582;
        double r1972594 = r1972593 * r1972582;
        double r1972595 = r1972590 * r1972594;
        double r1972596 = 1.0;
        double r1972597 = r1972596 - r1972587;
        double r1972598 = r1972595 / r1972597;
        double r1972599 = r1972585 - r1972598;
        double r1972600 = 4.5;
        double r1972601 = r1972599 - r1972600;
        return r1972601;
}

double f(double v, double w, double r) {
        double r1972602 = 2.0;
        double r1972603 = r;
        double r1972604 = r1972603 * r1972603;
        double r1972605 = r1972602 / r1972604;
        double r1972606 = 3.0;
        double r1972607 = 4.5;
        double r1972608 = v;
        double r1972609 = r1972608 * r1972602;
        double r1972610 = r1972606 - r1972609;
        double r1972611 = cbrt(r1972610);
        double r1972612 = r1972611 * r1972611;
        double r1972613 = 1.0;
        double r1972614 = r1972613 - r1972608;
        double r1972615 = cbrt(r1972614);
        double r1972616 = r1972615 * r1972615;
        double r1972617 = w;
        double r1972618 = r1972603 * r1972617;
        double r1972619 = r1972616 / r1972618;
        double r1972620 = r1972619 / r1972611;
        double r1972621 = r1972612 / r1972620;
        double r1972622 = 0.125;
        double r1972623 = r1972615 / r1972618;
        double r1972624 = r1972622 / r1972623;
        double r1972625 = r1972621 * r1972624;
        double r1972626 = r1972607 + r1972625;
        double r1972627 = r1972606 - r1972626;
        double r1972628 = r1972605 + r1972627;
        return r1972628;
}

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 12.8

    \[\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. Simplified0.4

    \[\leadsto \color{blue}{\frac{2}{r \cdot r} + \left(3 - \left(\frac{\left(3 - 2 \cdot v\right) \cdot 0.125}{\frac{1 - v}{\left(w \cdot r\right) \cdot \left(w \cdot r\right)}} + 4.5\right)\right)}\]
  3. Using strategy rm
  4. Applied add-cube-cbrt0.5

    \[\leadsto \frac{2}{r \cdot r} + \left(3 - \left(\frac{\left(3 - 2 \cdot v\right) \cdot 0.125}{\frac{\color{blue}{\left(\sqrt[3]{1 - v} \cdot \sqrt[3]{1 - v}\right) \cdot \sqrt[3]{1 - v}}}{\left(w \cdot r\right) \cdot \left(w \cdot r\right)}} + 4.5\right)\right)\]
  5. Applied times-frac0.5

    \[\leadsto \frac{2}{r \cdot r} + \left(3 - \left(\frac{\left(3 - 2 \cdot v\right) \cdot 0.125}{\color{blue}{\frac{\sqrt[3]{1 - v} \cdot \sqrt[3]{1 - v}}{w \cdot r} \cdot \frac{\sqrt[3]{1 - v}}{w \cdot r}}} + 4.5\right)\right)\]
  6. Applied times-frac0.5

    \[\leadsto \frac{2}{r \cdot r} + \left(3 - \left(\color{blue}{\frac{3 - 2 \cdot v}{\frac{\sqrt[3]{1 - v} \cdot \sqrt[3]{1 - v}}{w \cdot r}} \cdot \frac{0.125}{\frac{\sqrt[3]{1 - v}}{w \cdot r}}} + 4.5\right)\right)\]
  7. Using strategy rm
  8. Applied add-cube-cbrt0.5

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

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

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

Reproduce

herbie shell --seed 2019165 
(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))