Average Error: 12.5 → 0.3
Time: 29.1s
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{2}{r \cdot r} - \left(w \cdot \left(r \cdot \left(\left(3 - v \cdot 2\right) \cdot \frac{0.125}{1 - v}\right)\right)\right) \cdot \left(r \cdot w\right)\right) - \left(4.5 - 3\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
\left(\frac{2}{r \cdot r} - \left(w \cdot \left(r \cdot \left(\left(3 - v \cdot 2\right) \cdot \frac{0.125}{1 - v}\right)\right)\right) \cdot \left(r \cdot w\right)\right) - \left(4.5 - 3\right)
double f(double v, double w, double r) {
        double r1265640 = 3.0;
        double r1265641 = 2.0;
        double r1265642 = r;
        double r1265643 = r1265642 * r1265642;
        double r1265644 = r1265641 / r1265643;
        double r1265645 = r1265640 + r1265644;
        double r1265646 = 0.125;
        double r1265647 = v;
        double r1265648 = r1265641 * r1265647;
        double r1265649 = r1265640 - r1265648;
        double r1265650 = r1265646 * r1265649;
        double r1265651 = w;
        double r1265652 = r1265651 * r1265651;
        double r1265653 = r1265652 * r1265642;
        double r1265654 = r1265653 * r1265642;
        double r1265655 = r1265650 * r1265654;
        double r1265656 = 1.0;
        double r1265657 = r1265656 - r1265647;
        double r1265658 = r1265655 / r1265657;
        double r1265659 = r1265645 - r1265658;
        double r1265660 = 4.5;
        double r1265661 = r1265659 - r1265660;
        return r1265661;
}

double f(double v, double w, double r) {
        double r1265662 = 2.0;
        double r1265663 = r;
        double r1265664 = r1265663 * r1265663;
        double r1265665 = r1265662 / r1265664;
        double r1265666 = w;
        double r1265667 = 3.0;
        double r1265668 = v;
        double r1265669 = r1265668 * r1265662;
        double r1265670 = r1265667 - r1265669;
        double r1265671 = 0.125;
        double r1265672 = 1.0;
        double r1265673 = r1265672 - r1265668;
        double r1265674 = r1265671 / r1265673;
        double r1265675 = r1265670 * r1265674;
        double r1265676 = r1265663 * r1265675;
        double r1265677 = r1265666 * r1265676;
        double r1265678 = r1265663 * r1265666;
        double r1265679 = r1265677 * r1265678;
        double r1265680 = r1265665 - r1265679;
        double r1265681 = 4.5;
        double r1265682 = r1265681 - r1265667;
        double r1265683 = r1265680 - r1265682;
        return r1265683;
}

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.5

    \[\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}{\left(\frac{2}{r \cdot r} - \frac{\left(3 - 2 \cdot v\right) \cdot 0.125}{\frac{1 - v}{\left(w \cdot r\right) \cdot \left(w \cdot r\right)}}\right) - \left(4.5 - 3\right)}\]
  3. Using strategy rm
  4. Applied div-inv0.4

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

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

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

    \[\leadsto \left(\frac{2}{r \cdot r} - \frac{\frac{\left(3 - 2 \cdot v\right) \cdot 0.125}{1 - v}}{\color{blue}{\frac{\sqrt[3]{1} \cdot \sqrt[3]{1}}{w \cdot r} \cdot \frac{\sqrt[3]{1}}{w \cdot r}}}\right) - \left(4.5 - 3\right)\]
  10. Applied *-un-lft-identity0.4

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

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

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

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

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

Reproduce

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