Average Error: 4.0 → 5.3
Time: 14.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}\;t \le -4.33536139562560236 \cdot 10^{-281} \lor \neg \left(t \le 2.7731803138233924 \cdot 10^{-105}\right):\\ \;\;\;\;\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)}}\\ \mathbf{else}:\\ \;\;\;\;\frac{x}{x + y \cdot e^{2 \cdot \frac{\left(z \cdot \sqrt{t + a}\right) \cdot \left(\left(a - \frac{5}{6}\right) \cdot \left(t \cdot 3\right)\right) - t \cdot \left(\left(b - c\right) \cdot \left(\left(a \cdot a - \frac{5}{6} \cdot \frac{5}{6}\right) \cdot \left(t \cdot 3\right) - \left(a - \frac{5}{6}\right) \cdot 2\right)\right)}{t \cdot \left(\left(a - \frac{5}{6}\right) \cdot \left(t \cdot 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}\;t \le -4.33536139562560236 \cdot 10^{-281} \lor \neg \left(t \le 2.7731803138233924 \cdot 10^{-105}\right):\\
\;\;\;\;\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)}}\\

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

\end{array}
double f(double x, double y, double z, double t, double a, double b, double c) {
        double r425090 = x;
        double r425091 = y;
        double r425092 = 2.0;
        double r425093 = z;
        double r425094 = t;
        double r425095 = a;
        double r425096 = r425094 + r425095;
        double r425097 = sqrt(r425096);
        double r425098 = r425093 * r425097;
        double r425099 = r425098 / r425094;
        double r425100 = b;
        double r425101 = c;
        double r425102 = r425100 - r425101;
        double r425103 = 5.0;
        double r425104 = 6.0;
        double r425105 = r425103 / r425104;
        double r425106 = r425095 + r425105;
        double r425107 = 3.0;
        double r425108 = r425094 * r425107;
        double r425109 = r425092 / r425108;
        double r425110 = r425106 - r425109;
        double r425111 = r425102 * r425110;
        double r425112 = r425099 - r425111;
        double r425113 = r425092 * r425112;
        double r425114 = exp(r425113);
        double r425115 = r425091 * r425114;
        double r425116 = r425090 + r425115;
        double r425117 = r425090 / r425116;
        return r425117;
}

double f(double x, double y, double z, double t, double a, double b, double c) {
        double r425118 = t;
        double r425119 = -4.3353613956256024e-281;
        bool r425120 = r425118 <= r425119;
        double r425121 = 2.7731803138233924e-105;
        bool r425122 = r425118 <= r425121;
        double r425123 = !r425122;
        bool r425124 = r425120 || r425123;
        double r425125 = x;
        double r425126 = y;
        double r425127 = 2.0;
        double r425128 = z;
        double r425129 = a;
        double r425130 = r425118 + r425129;
        double r425131 = sqrt(r425130);
        double r425132 = r425128 * r425131;
        double r425133 = r425132 / r425118;
        double r425134 = b;
        double r425135 = c;
        double r425136 = r425134 - r425135;
        double r425137 = 5.0;
        double r425138 = 6.0;
        double r425139 = r425137 / r425138;
        double r425140 = r425129 + r425139;
        double r425141 = 3.0;
        double r425142 = r425118 * r425141;
        double r425143 = r425127 / r425142;
        double r425144 = 3.0;
        double r425145 = pow(r425143, r425144);
        double r425146 = cbrt(r425145);
        double r425147 = r425140 - r425146;
        double r425148 = r425136 * r425147;
        double r425149 = r425133 - r425148;
        double r425150 = r425127 * r425149;
        double r425151 = exp(r425150);
        double r425152 = r425126 * r425151;
        double r425153 = r425125 + r425152;
        double r425154 = r425125 / r425153;
        double r425155 = r425129 - r425139;
        double r425156 = r425155 * r425142;
        double r425157 = r425132 * r425156;
        double r425158 = r425129 * r425129;
        double r425159 = r425139 * r425139;
        double r425160 = r425158 - r425159;
        double r425161 = r425160 * r425142;
        double r425162 = r425155 * r425127;
        double r425163 = r425161 - r425162;
        double r425164 = r425136 * r425163;
        double r425165 = r425118 * r425164;
        double r425166 = r425157 - r425165;
        double r425167 = r425118 * r425156;
        double r425168 = r425166 / r425167;
        double r425169 = r425127 * r425168;
        double r425170 = exp(r425169);
        double r425171 = r425126 * r425170;
        double r425172 = r425125 + r425171;
        double r425173 = r425125 / r425172;
        double r425174 = r425124 ? r425154 : r425173;
        return r425174;
}

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

Target

Original4.0
Target3.1
Herbie5.3
\[\begin{array}{l} \mathbf{if}\;t \lt -2.1183266448915811 \cdot 10^{-50}:\\ \;\;\;\;\frac{x}{x + y \cdot e^{2 \cdot \left(\left(a \cdot c + 0.83333333333333337 \cdot c\right) - a \cdot b\right)}}\\ \mathbf{elif}\;t \lt 5.19658877065154709 \cdot 10^{-123}:\\ \;\;\;\;\frac{x}{x + y \cdot e^{2 \cdot \frac{\left(z \cdot \sqrt{t + a}\right) \cdot \left(\left(3 \cdot t\right) \cdot \left(a - \frac{5}{6}\right)\right) - \left(\left(\frac{5}{6} + a\right) \cdot \left(3 \cdot t\right) - 2\right) \cdot \left(\left(a - \frac{5}{6}\right) \cdot \left(\left(b - c\right) \cdot t\right)\right)}{\left(\left(t \cdot t\right) \cdot 3\right) \cdot \left(a - \frac{5}{6}\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) - \frac{2}{t \cdot 3}\right)\right)}}\\ \end{array}\]

Derivation

  1. Split input into 2 regimes
  2. if t < -4.3353613956256024e-281 or 2.7731803138233924e-105 < t

    1. Initial program 3.3

      \[\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-cube3.3

      \[\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-cube4.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-unprod4.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-cube4.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-undiv4.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. Simplified4.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)}}\]

    if -4.3353613956256024e-281 < t < 2.7731803138233924e-105

    1. Initial program 6.4

      \[\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 flip-+10.2

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

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

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

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

    \[\leadsto \begin{array}{l} \mathbf{if}\;t \le -4.33536139562560236 \cdot 10^{-281} \lor \neg \left(t \le 2.7731803138233924 \cdot 10^{-105}\right):\\ \;\;\;\;\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)}}\\ \mathbf{else}:\\ \;\;\;\;\frac{x}{x + y \cdot e^{2 \cdot \frac{\left(z \cdot \sqrt{t + a}\right) \cdot \left(\left(a - \frac{5}{6}\right) \cdot \left(t \cdot 3\right)\right) - t \cdot \left(\left(b - c\right) \cdot \left(\left(a \cdot a - \frac{5}{6} \cdot \frac{5}{6}\right) \cdot \left(t \cdot 3\right) - \left(a - \frac{5}{6}\right) \cdot 2\right)\right)}{t \cdot \left(\left(a - \frac{5}{6}\right) \cdot \left(t \cdot 3\right)\right)}}}\\ \end{array}\]

Reproduce

herbie shell --seed 2020062 
(FPCore (x y z t a b c)
  :name "Numeric.SpecFunctions:invIncompleteBetaWorker from math-functions-0.1.5.2, I"
  :precision binary64

  :herbie-target
  (if (< t -2.118326644891581e-50) (/ x (+ x (* y (exp (* 2 (- (+ (* a c) (* 0.8333333333333334 c)) (* a b))))))) (if (< t 5.196588770651547e-123) (/ x (+ x (* y (exp (* 2 (/ (- (* (* z (sqrt (+ t a))) (* (* 3 t) (- a (/ 5 6)))) (* (- (* (+ (/ 5 6) a) (* 3 t)) 2) (* (- a (/ 5 6)) (* (- b c) t)))) (* (* (* t t) 3) (- a (/ 5 6))))))))) (/ x (+ x (* y (exp (* 2 (- (/ (* z (sqrt (+ t a))) t) (* (- b c) (- (+ a (/ 5 6)) (/ 2 (* t 3))))))))))))

  (/ x (+ x (* y (exp (* 2 (- (/ (* z (sqrt (+ t a))) t) (* (- b c) (- (+ a (/ 5 6)) (/ 2 (* t 3)))))))))))