Average Error: 12.7 → 0.5
Time: 17.7s
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\]
\[\begin{array}{l} \mathbf{if}\;w \cdot w \le 7.974423119306558207376816144501589409833 \cdot 10^{94}:\\ \;\;\;\;\left(\left(3 + \frac{2}{r \cdot r}\right) - \left(\frac{0.125 \cdot \left(3 - 2 \cdot v\right)}{\sqrt[3]{1 - v} \cdot \sqrt[3]{1 - v}} \cdot \frac{w \cdot \left(w \cdot r\right)}{\sqrt[3]{\sqrt[3]{1 - v} \cdot \sqrt[3]{1 - v}}}\right) \cdot \frac{r}{\sqrt[3]{\sqrt[3]{1 - v}}}\right) - 4.5\\ \mathbf{else}:\\ \;\;\;\;\left(\left(3 + \frac{2}{r \cdot r}\right) - \frac{0.125 \cdot \left(3 - 2 \cdot v\right)}{\sqrt[3]{1 - v} \cdot \sqrt[3]{1 - v}} \cdot \frac{w \cdot \left(\left(w \cdot r\right) \cdot r\right)}{\sqrt[3]{1 - v}}\right) - 4.5\\ \end{array}\]
\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
\begin{array}{l}
\mathbf{if}\;w \cdot w \le 7.974423119306558207376816144501589409833 \cdot 10^{94}:\\
\;\;\;\;\left(\left(3 + \frac{2}{r \cdot r}\right) - \left(\frac{0.125 \cdot \left(3 - 2 \cdot v\right)}{\sqrt[3]{1 - v} \cdot \sqrt[3]{1 - v}} \cdot \frac{w \cdot \left(w \cdot r\right)}{\sqrt[3]{\sqrt[3]{1 - v} \cdot \sqrt[3]{1 - v}}}\right) \cdot \frac{r}{\sqrt[3]{\sqrt[3]{1 - v}}}\right) - 4.5\\

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

\end{array}
double f(double v, double w, double r) {
        double r27772 = 3.0;
        double r27773 = 2.0;
        double r27774 = r;
        double r27775 = r27774 * r27774;
        double r27776 = r27773 / r27775;
        double r27777 = r27772 + r27776;
        double r27778 = 0.125;
        double r27779 = v;
        double r27780 = r27773 * r27779;
        double r27781 = r27772 - r27780;
        double r27782 = r27778 * r27781;
        double r27783 = w;
        double r27784 = r27783 * r27783;
        double r27785 = r27784 * r27774;
        double r27786 = r27785 * r27774;
        double r27787 = r27782 * r27786;
        double r27788 = 1.0;
        double r27789 = r27788 - r27779;
        double r27790 = r27787 / r27789;
        double r27791 = r27777 - r27790;
        double r27792 = 4.5;
        double r27793 = r27791 - r27792;
        return r27793;
}

double f(double v, double w, double r) {
        double r27794 = w;
        double r27795 = r27794 * r27794;
        double r27796 = 7.974423119306558e+94;
        bool r27797 = r27795 <= r27796;
        double r27798 = 3.0;
        double r27799 = 2.0;
        double r27800 = r;
        double r27801 = r27800 * r27800;
        double r27802 = r27799 / r27801;
        double r27803 = r27798 + r27802;
        double r27804 = 0.125;
        double r27805 = v;
        double r27806 = r27799 * r27805;
        double r27807 = r27798 - r27806;
        double r27808 = r27804 * r27807;
        double r27809 = 1.0;
        double r27810 = r27809 - r27805;
        double r27811 = cbrt(r27810);
        double r27812 = r27811 * r27811;
        double r27813 = r27808 / r27812;
        double r27814 = r27794 * r27800;
        double r27815 = r27794 * r27814;
        double r27816 = cbrt(r27812);
        double r27817 = r27815 / r27816;
        double r27818 = r27813 * r27817;
        double r27819 = cbrt(r27811);
        double r27820 = r27800 / r27819;
        double r27821 = r27818 * r27820;
        double r27822 = r27803 - r27821;
        double r27823 = 4.5;
        double r27824 = r27822 - r27823;
        double r27825 = r27814 * r27800;
        double r27826 = r27794 * r27825;
        double r27827 = r27826 / r27811;
        double r27828 = r27813 * r27827;
        double r27829 = r27803 - r27828;
        double r27830 = r27829 - r27823;
        double r27831 = r27797 ? r27824 : r27830;
        return r27831;
}

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. Split input into 2 regimes
  2. if (* w w) < 7.974423119306558e+94

    1. Initial program 8.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. Using strategy rm
    3. Applied associate-*l*4.4

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

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

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

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

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

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

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

    if 7.974423119306558e+94 < (* w w)

    1. Initial program 30.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. Using strategy rm
    3. Applied associate-*l*22.8

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

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

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

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

    \[\leadsto \begin{array}{l} \mathbf{if}\;w \cdot w \le 7.974423119306558207376816144501589409833 \cdot 10^{94}:\\ \;\;\;\;\left(\left(3 + \frac{2}{r \cdot r}\right) - \left(\frac{0.125 \cdot \left(3 - 2 \cdot v\right)}{\sqrt[3]{1 - v} \cdot \sqrt[3]{1 - v}} \cdot \frac{w \cdot \left(w \cdot r\right)}{\sqrt[3]{\sqrt[3]{1 - v} \cdot \sqrt[3]{1 - v}}}\right) \cdot \frac{r}{\sqrt[3]{\sqrt[3]{1 - v}}}\right) - 4.5\\ \mathbf{else}:\\ \;\;\;\;\left(\left(3 + \frac{2}{r \cdot r}\right) - \frac{0.125 \cdot \left(3 - 2 \cdot v\right)}{\sqrt[3]{1 - v} \cdot \sqrt[3]{1 - v}} \cdot \frac{w \cdot \left(\left(w \cdot r\right) \cdot r\right)}{\sqrt[3]{1 - v}}\right) - 4.5\\ \end{array}\]

Reproduce

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