Average Error: 4.1 → 3.8
Time: 13.1s
Precision: 64
\[\frac{x}{x + y \cdot e^{2 \cdot \left(\frac{z \cdot \sqrt{t + a}}{t} - \left(b - c\right) \cdot \left(\left(a + \frac{5}{6}\right) - \frac{2}{t \cdot 3}\right)\right)}}\]
\[\begin{array}{l} \mathbf{if}\;b - c \le 1608536970973768318976 \lor \neg \left(b - c \le 1.382058873126280797586958176900250679305 \cdot 10^{250}\right):\\ \;\;\;\;\frac{x}{x + y \cdot e^{2 \cdot \left(\frac{z}{\sqrt[3]{t} \cdot \sqrt[3]{t}} \cdot \frac{\sqrt{t + a}}{\sqrt[3]{t}} - \left(b - c\right) \cdot \left(\left(a + \frac{5}{6}\right) - \frac{2}{t \cdot 3}\right)\right)}}\\ \mathbf{else}:\\ \;\;\;\;\frac{x}{x + y \cdot e^{2 \cdot \left(\frac{z \cdot \sqrt{t + a}}{t} - \left(b - c\right) \cdot \left(\left(a + \frac{5}{6}\right) - \sqrt[3]{{\left(\frac{2}{t \cdot 3}\right)}^{3}}\right)\right)}}\\ \end{array}\]
\frac{x}{x + y \cdot e^{2 \cdot \left(\frac{z \cdot \sqrt{t + a}}{t} - \left(b - c\right) \cdot \left(\left(a + \frac{5}{6}\right) - \frac{2}{t \cdot 3}\right)\right)}}
\begin{array}{l}
\mathbf{if}\;b - c \le 1608536970973768318976 \lor \neg \left(b - c \le 1.382058873126280797586958176900250679305 \cdot 10^{250}\right):\\
\;\;\;\;\frac{x}{x + y \cdot e^{2 \cdot \left(\frac{z}{\sqrt[3]{t} \cdot \sqrt[3]{t}} \cdot \frac{\sqrt{t + a}}{\sqrt[3]{t}} - \left(b - c\right) \cdot \left(\left(a + \frac{5}{6}\right) - \frac{2}{t \cdot 3}\right)\right)}}\\

\mathbf{else}:\\
\;\;\;\;\frac{x}{x + y \cdot e^{2 \cdot \left(\frac{z \cdot \sqrt{t + a}}{t} - \left(b - c\right) \cdot \left(\left(a + \frac{5}{6}\right) - \sqrt[3]{{\left(\frac{2}{t \cdot 3}\right)}^{3}}\right)\right)}}\\

\end{array}
double f(double x, double y, double z, double t, double a, double b, double c) {
        double r87641 = x;
        double r87642 = y;
        double r87643 = 2.0;
        double r87644 = z;
        double r87645 = t;
        double r87646 = a;
        double r87647 = r87645 + r87646;
        double r87648 = sqrt(r87647);
        double r87649 = r87644 * r87648;
        double r87650 = r87649 / r87645;
        double r87651 = b;
        double r87652 = c;
        double r87653 = r87651 - r87652;
        double r87654 = 5.0;
        double r87655 = 6.0;
        double r87656 = r87654 / r87655;
        double r87657 = r87646 + r87656;
        double r87658 = 3.0;
        double r87659 = r87645 * r87658;
        double r87660 = r87643 / r87659;
        double r87661 = r87657 - r87660;
        double r87662 = r87653 * r87661;
        double r87663 = r87650 - r87662;
        double r87664 = r87643 * r87663;
        double r87665 = exp(r87664);
        double r87666 = r87642 * r87665;
        double r87667 = r87641 + r87666;
        double r87668 = r87641 / r87667;
        return r87668;
}

double f(double x, double y, double z, double t, double a, double b, double c) {
        double r87669 = b;
        double r87670 = c;
        double r87671 = r87669 - r87670;
        double r87672 = 1.6085369709737683e+21;
        bool r87673 = r87671 <= r87672;
        double r87674 = 1.3820588731262808e+250;
        bool r87675 = r87671 <= r87674;
        double r87676 = !r87675;
        bool r87677 = r87673 || r87676;
        double r87678 = x;
        double r87679 = y;
        double r87680 = 2.0;
        double r87681 = z;
        double r87682 = t;
        double r87683 = cbrt(r87682);
        double r87684 = r87683 * r87683;
        double r87685 = r87681 / r87684;
        double r87686 = a;
        double r87687 = r87682 + r87686;
        double r87688 = sqrt(r87687);
        double r87689 = r87688 / r87683;
        double r87690 = r87685 * r87689;
        double r87691 = 5.0;
        double r87692 = 6.0;
        double r87693 = r87691 / r87692;
        double r87694 = r87686 + r87693;
        double r87695 = 3.0;
        double r87696 = r87682 * r87695;
        double r87697 = r87680 / r87696;
        double r87698 = r87694 - r87697;
        double r87699 = r87671 * r87698;
        double r87700 = r87690 - r87699;
        double r87701 = r87680 * r87700;
        double r87702 = exp(r87701);
        double r87703 = r87679 * r87702;
        double r87704 = r87678 + r87703;
        double r87705 = r87678 / r87704;
        double r87706 = r87681 * r87688;
        double r87707 = r87706 / r87682;
        double r87708 = 3.0;
        double r87709 = pow(r87697, r87708);
        double r87710 = cbrt(r87709);
        double r87711 = r87694 - r87710;
        double r87712 = r87671 * r87711;
        double r87713 = r87707 - r87712;
        double r87714 = r87680 * r87713;
        double r87715 = exp(r87714);
        double r87716 = r87679 * r87715;
        double r87717 = r87678 + r87716;
        double r87718 = r87678 / r87717;
        double r87719 = r87677 ? r87705 : r87718;
        return r87719;
}

Error

Bits error versus x

Bits error versus y

Bits error versus z

Bits error versus t

Bits error versus a

Bits error versus b

Bits error versus c

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Split input into 2 regimes
  2. if (- b c) < 1.6085369709737683e+21 or 1.3820588731262808e+250 < (- b c)

    1. Initial program 3.6

      \[\frac{x}{x + y \cdot e^{2 \cdot \left(\frac{z \cdot \sqrt{t + a}}{t} - \left(b - c\right) \cdot \left(\left(a + \frac{5}{6}\right) - \frac{2}{t \cdot 3}\right)\right)}}\]
    2. Using strategy rm
    3. Applied add-cube-cbrt3.6

      \[\leadsto \frac{x}{x + y \cdot e^{2 \cdot \left(\frac{z \cdot \sqrt{t + a}}{\color{blue}{\left(\sqrt[3]{t} \cdot \sqrt[3]{t}\right) \cdot \sqrt[3]{t}}} - \left(b - c\right) \cdot \left(\left(a + \frac{5}{6}\right) - \frac{2}{t \cdot 3}\right)\right)}}\]
    4. Applied times-frac2.5

      \[\leadsto \frac{x}{x + y \cdot e^{2 \cdot \left(\color{blue}{\frac{z}{\sqrt[3]{t} \cdot \sqrt[3]{t}} \cdot \frac{\sqrt{t + a}}{\sqrt[3]{t}}} - \left(b - c\right) \cdot \left(\left(a + \frac{5}{6}\right) - \frac{2}{t \cdot 3}\right)\right)}}\]

    if 1.6085369709737683e+21 < (- b c) < 1.3820588731262808e+250

    1. Initial program 5.5

      \[\frac{x}{x + y \cdot e^{2 \cdot \left(\frac{z \cdot \sqrt{t + a}}{t} - \left(b - c\right) \cdot \left(\left(a + \frac{5}{6}\right) - \frac{2}{t \cdot 3}\right)\right)}}\]
    2. Using strategy rm
    3. Applied add-cbrt-cube5.5

      \[\leadsto \frac{x}{x + y \cdot e^{2 \cdot \left(\frac{z \cdot \sqrt{t + a}}{t} - \left(b - c\right) \cdot \left(\left(a + \frac{5}{6}\right) - \frac{2}{t \cdot \color{blue}{\sqrt[3]{\left(3 \cdot 3\right) \cdot 3}}}\right)\right)}}\]
    4. Applied add-cbrt-cube7.4

      \[\leadsto \frac{x}{x + y \cdot e^{2 \cdot \left(\frac{z \cdot \sqrt{t + a}}{t} - \left(b - c\right) \cdot \left(\left(a + \frac{5}{6}\right) - \frac{2}{\color{blue}{\sqrt[3]{\left(t \cdot t\right) \cdot t}} \cdot \sqrt[3]{\left(3 \cdot 3\right) \cdot 3}}\right)\right)}}\]
    5. Applied cbrt-unprod7.4

      \[\leadsto \frac{x}{x + y \cdot e^{2 \cdot \left(\frac{z \cdot \sqrt{t + a}}{t} - \left(b - c\right) \cdot \left(\left(a + \frac{5}{6}\right) - \frac{2}{\color{blue}{\sqrt[3]{\left(\left(t \cdot t\right) \cdot t\right) \cdot \left(\left(3 \cdot 3\right) \cdot 3\right)}}}\right)\right)}}\]
    6. Applied add-cbrt-cube7.4

      \[\leadsto \frac{x}{x + y \cdot e^{2 \cdot \left(\frac{z \cdot \sqrt{t + a}}{t} - \left(b - c\right) \cdot \left(\left(a + \frac{5}{6}\right) - \frac{\color{blue}{\sqrt[3]{\left(2 \cdot 2\right) \cdot 2}}}{\sqrt[3]{\left(\left(t \cdot t\right) \cdot t\right) \cdot \left(\left(3 \cdot 3\right) \cdot 3\right)}}\right)\right)}}\]
    7. Applied cbrt-undiv7.5

      \[\leadsto \frac{x}{x + y \cdot e^{2 \cdot \left(\frac{z \cdot \sqrt{t + a}}{t} - \left(b - c\right) \cdot \left(\left(a + \frac{5}{6}\right) - \color{blue}{\sqrt[3]{\frac{\left(2 \cdot 2\right) \cdot 2}{\left(\left(t \cdot t\right) \cdot t\right) \cdot \left(\left(3 \cdot 3\right) \cdot 3\right)}}}\right)\right)}}\]
    8. Simplified7.5

      \[\leadsto \frac{x}{x + y \cdot e^{2 \cdot \left(\frac{z \cdot \sqrt{t + a}}{t} - \left(b - c\right) \cdot \left(\left(a + \frac{5}{6}\right) - \sqrt[3]{\color{blue}{{\left(\frac{2}{t \cdot 3}\right)}^{3}}}\right)\right)}}\]
  3. Recombined 2 regimes into one program.
  4. Final simplification3.8

    \[\leadsto \begin{array}{l} \mathbf{if}\;b - c \le 1608536970973768318976 \lor \neg \left(b - c \le 1.382058873126280797586958176900250679305 \cdot 10^{250}\right):\\ \;\;\;\;\frac{x}{x + y \cdot e^{2 \cdot \left(\frac{z}{\sqrt[3]{t} \cdot \sqrt[3]{t}} \cdot \frac{\sqrt{t + a}}{\sqrt[3]{t}} - \left(b - c\right) \cdot \left(\left(a + \frac{5}{6}\right) - \frac{2}{t \cdot 3}\right)\right)}}\\ \mathbf{else}:\\ \;\;\;\;\frac{x}{x + y \cdot e^{2 \cdot \left(\frac{z \cdot \sqrt{t + a}}{t} - \left(b - c\right) \cdot \left(\left(a + \frac{5}{6}\right) - \sqrt[3]{{\left(\frac{2}{t \cdot 3}\right)}^{3}}\right)\right)}}\\ \end{array}\]

Reproduce

herbie shell --seed 2019351 
(FPCore (x y z t a b c)
  :name "Numeric.SpecFunctions:invIncompleteBetaWorker from math-functions-0.1.5.2"
  :precision binary64
  (/ x (+ x (* y (exp (* 2 (- (/ (* z (sqrt (+ t a))) t) (* (- b c) (- (+ a (/ 5 6)) (/ 2 (* t 3)))))))))))