Average Error: 12.5 → 0.5
Time: 31.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(3 + \sqrt{\sqrt{2}} \cdot \left(\frac{\sqrt{\sqrt{2}}}{r} \cdot \frac{\sqrt{2}}{r}\right)\right) - \mathsf{fma}\left(\left(\left(r \cdot w\right) \cdot \left(r \cdot w\right)\right), \left(\frac{\mathsf{fma}\left(v, -2, 3\right)}{\frac{1 - v}{0.125}}\right), 4.5\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(3 + \sqrt{\sqrt{2}} \cdot \left(\frac{\sqrt{\sqrt{2}}}{r} \cdot \frac{\sqrt{2}}{r}\right)\right) - \mathsf{fma}\left(\left(\left(r \cdot w\right) \cdot \left(r \cdot w\right)\right), \left(\frac{\mathsf{fma}\left(v, -2, 3\right)}{\frac{1 - v}{0.125}}\right), 4.5\right)
double f(double v, double w, double r) {
        double r1200676 = 3.0;
        double r1200677 = 2.0;
        double r1200678 = r;
        double r1200679 = r1200678 * r1200678;
        double r1200680 = r1200677 / r1200679;
        double r1200681 = r1200676 + r1200680;
        double r1200682 = 0.125;
        double r1200683 = v;
        double r1200684 = r1200677 * r1200683;
        double r1200685 = r1200676 - r1200684;
        double r1200686 = r1200682 * r1200685;
        double r1200687 = w;
        double r1200688 = r1200687 * r1200687;
        double r1200689 = r1200688 * r1200678;
        double r1200690 = r1200689 * r1200678;
        double r1200691 = r1200686 * r1200690;
        double r1200692 = 1.0;
        double r1200693 = r1200692 - r1200683;
        double r1200694 = r1200691 / r1200693;
        double r1200695 = r1200681 - r1200694;
        double r1200696 = 4.5;
        double r1200697 = r1200695 - r1200696;
        return r1200697;
}

double f(double v, double w, double r) {
        double r1200698 = 3.0;
        double r1200699 = 2.0;
        double r1200700 = sqrt(r1200699);
        double r1200701 = sqrt(r1200700);
        double r1200702 = r;
        double r1200703 = r1200701 / r1200702;
        double r1200704 = r1200700 / r1200702;
        double r1200705 = r1200703 * r1200704;
        double r1200706 = r1200701 * r1200705;
        double r1200707 = r1200698 + r1200706;
        double r1200708 = w;
        double r1200709 = r1200702 * r1200708;
        double r1200710 = r1200709 * r1200709;
        double r1200711 = v;
        double r1200712 = -2.0;
        double r1200713 = fma(r1200711, r1200712, r1200698);
        double r1200714 = 1.0;
        double r1200715 = r1200714 - r1200711;
        double r1200716 = 0.125;
        double r1200717 = r1200715 / r1200716;
        double r1200718 = r1200713 / r1200717;
        double r1200719 = 4.5;
        double r1200720 = fma(r1200710, r1200718, r1200719);
        double r1200721 = r1200707 - r1200720;
        return r1200721;
}

Error

Bits error versus v

Bits error versus w

Bits error versus r

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(3 + \frac{2}{r \cdot r}\right) - \mathsf{fma}\left(\left(\left(w \cdot r\right) \cdot \left(w \cdot r\right)\right), \left(\frac{\mathsf{fma}\left(v, -2, 3\right)}{\frac{1 - v}{0.125}}\right), 4.5\right)}\]
  3. Using strategy rm
  4. Applied add-sqr-sqrt0.8

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

    \[\leadsto \left(3 + \color{blue}{\frac{\sqrt{2}}{\frac{r \cdot r}{\sqrt{2}}}}\right) - \mathsf{fma}\left(\left(\left(w \cdot r\right) \cdot \left(w \cdot r\right)\right), \left(\frac{\mathsf{fma}\left(v, -2, 3\right)}{\frac{1 - v}{0.125}}\right), 4.5\right)\]
  6. Using strategy rm
  7. Applied *-un-lft-identity0.6

    \[\leadsto \left(3 + \frac{\sqrt{2}}{\color{blue}{1 \cdot \frac{r \cdot r}{\sqrt{2}}}}\right) - \mathsf{fma}\left(\left(\left(w \cdot r\right) \cdot \left(w \cdot r\right)\right), \left(\frac{\mathsf{fma}\left(v, -2, 3\right)}{\frac{1 - v}{0.125}}\right), 4.5\right)\]
  8. Applied add-sqr-sqrt0.4

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

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

    \[\leadsto \left(3 + \color{blue}{\sqrt{\sqrt{2}}} \cdot \frac{\sqrt{\sqrt{2}}}{\frac{r \cdot r}{\sqrt{2}}}\right) - \mathsf{fma}\left(\left(\left(w \cdot r\right) \cdot \left(w \cdot r\right)\right), \left(\frac{\mathsf{fma}\left(v, -2, 3\right)}{\frac{1 - v}{0.125}}\right), 4.5\right)\]
  11. Using strategy rm
  12. Applied add-sqr-sqrt0.7

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

    \[\leadsto \left(3 + \sqrt{\sqrt{2}} \cdot \frac{\sqrt{\sqrt{2}}}{\color{blue}{\frac{r}{\sqrt{\sqrt{2}}} \cdot \frac{r}{\sqrt{\sqrt{2}}}}}\right) - \mathsf{fma}\left(\left(\left(w \cdot r\right) \cdot \left(w \cdot r\right)\right), \left(\frac{\mathsf{fma}\left(v, -2, 3\right)}{\frac{1 - v}{0.125}}\right), 4.5\right)\]
  14. Applied *-un-lft-identity0.6

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

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

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

    \[\leadsto \left(3 + \sqrt{\sqrt{2}} \cdot \color{blue}{\left(\frac{\sqrt{\sqrt{1}}}{\frac{r}{\sqrt{\sqrt{2}}}} \cdot \frac{\sqrt{\sqrt{2}}}{\frac{r}{\sqrt{\sqrt{2}}}}\right)}\right) - \mathsf{fma}\left(\left(\left(w \cdot r\right) \cdot \left(w \cdot r\right)\right), \left(\frac{\mathsf{fma}\left(v, -2, 3\right)}{\frac{1 - v}{0.125}}\right), 4.5\right)\]
  18. Simplified0.6

    \[\leadsto \left(3 + \sqrt{\sqrt{2}} \cdot \left(\color{blue}{\frac{\sqrt{\sqrt{2}}}{r}} \cdot \frac{\sqrt{\sqrt{2}}}{\frac{r}{\sqrt{\sqrt{2}}}}\right)\right) - \mathsf{fma}\left(\left(\left(w \cdot r\right) \cdot \left(w \cdot r\right)\right), \left(\frac{\mathsf{fma}\left(v, -2, 3\right)}{\frac{1 - v}{0.125}}\right), 4.5\right)\]
  19. Simplified0.5

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

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

Reproduce

herbie shell --seed 2019133 +o rules:numerics
(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))