Average Error: 4.0 → 2.8
Time: 53.0s
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 -6.235874327363358100249014052036578048109 \cdot 10^{-226}:\\ \;\;\;\;\frac{x}{x + e^{\log \left(e^{\frac{z}{\frac{t}{\sqrt{t + a}}} - \left(b - c\right) \cdot \left(\frac{5}{6} + \left(a - \frac{2}{t \cdot 3}\right)\right)}\right) \cdot 2} \cdot y}\\ \mathbf{elif}\;t \le 3.340725403067544451185955686851105101177 \cdot 10^{-267}:\\ \;\;\;\;\frac{x}{x + e^{2 \cdot \frac{\left(\left(a - \frac{5}{6}\right) \cdot \left(t \cdot 3\right)\right) \cdot \left(\sqrt{t + a} \cdot z\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)}{\left(\left(a - \frac{5}{6}\right) \cdot \left(t \cdot 3\right)\right) \cdot t}} \cdot y}\\ \mathbf{else}:\\ \;\;\;\;\frac{x}{x + e^{\log \left(e^{\frac{z}{\frac{t}{\sqrt{t + a}}} - \left(b - c\right) \cdot \left(\frac{5}{6} + \left(a - \frac{2}{t \cdot 3}\right)\right)}\right) \cdot 2} \cdot y}\\ \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 -6.235874327363358100249014052036578048109 \cdot 10^{-226}:\\
\;\;\;\;\frac{x}{x + e^{\log \left(e^{\frac{z}{\frac{t}{\sqrt{t + a}}} - \left(b - c\right) \cdot \left(\frac{5}{6} + \left(a - \frac{2}{t \cdot 3}\right)\right)}\right) \cdot 2} \cdot y}\\

\mathbf{elif}\;t \le 3.340725403067544451185955686851105101177 \cdot 10^{-267}:\\
\;\;\;\;\frac{x}{x + e^{2 \cdot \frac{\left(\left(a - \frac{5}{6}\right) \cdot \left(t \cdot 3\right)\right) \cdot \left(\sqrt{t + a} \cdot z\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)}{\left(\left(a - \frac{5}{6}\right) \cdot \left(t \cdot 3\right)\right) \cdot t}} \cdot y}\\

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

\end{array}
double f(double x, double y, double z, double t, double a, double b, double c) {
        double r20991114 = x;
        double r20991115 = y;
        double r20991116 = 2.0;
        double r20991117 = z;
        double r20991118 = t;
        double r20991119 = a;
        double r20991120 = r20991118 + r20991119;
        double r20991121 = sqrt(r20991120);
        double r20991122 = r20991117 * r20991121;
        double r20991123 = r20991122 / r20991118;
        double r20991124 = b;
        double r20991125 = c;
        double r20991126 = r20991124 - r20991125;
        double r20991127 = 5.0;
        double r20991128 = 6.0;
        double r20991129 = r20991127 / r20991128;
        double r20991130 = r20991119 + r20991129;
        double r20991131 = 3.0;
        double r20991132 = r20991118 * r20991131;
        double r20991133 = r20991116 / r20991132;
        double r20991134 = r20991130 - r20991133;
        double r20991135 = r20991126 * r20991134;
        double r20991136 = r20991123 - r20991135;
        double r20991137 = r20991116 * r20991136;
        double r20991138 = exp(r20991137);
        double r20991139 = r20991115 * r20991138;
        double r20991140 = r20991114 + r20991139;
        double r20991141 = r20991114 / r20991140;
        return r20991141;
}

double f(double x, double y, double z, double t, double a, double b, double c) {
        double r20991142 = t;
        double r20991143 = -6.235874327363358e-226;
        bool r20991144 = r20991142 <= r20991143;
        double r20991145 = x;
        double r20991146 = z;
        double r20991147 = a;
        double r20991148 = r20991142 + r20991147;
        double r20991149 = sqrt(r20991148);
        double r20991150 = r20991142 / r20991149;
        double r20991151 = r20991146 / r20991150;
        double r20991152 = b;
        double r20991153 = c;
        double r20991154 = r20991152 - r20991153;
        double r20991155 = 5.0;
        double r20991156 = 6.0;
        double r20991157 = r20991155 / r20991156;
        double r20991158 = 2.0;
        double r20991159 = 3.0;
        double r20991160 = r20991142 * r20991159;
        double r20991161 = r20991158 / r20991160;
        double r20991162 = r20991147 - r20991161;
        double r20991163 = r20991157 + r20991162;
        double r20991164 = r20991154 * r20991163;
        double r20991165 = r20991151 - r20991164;
        double r20991166 = exp(r20991165);
        double r20991167 = log(r20991166);
        double r20991168 = r20991167 * r20991158;
        double r20991169 = exp(r20991168);
        double r20991170 = y;
        double r20991171 = r20991169 * r20991170;
        double r20991172 = r20991145 + r20991171;
        double r20991173 = r20991145 / r20991172;
        double r20991174 = 3.3407254030675445e-267;
        bool r20991175 = r20991142 <= r20991174;
        double r20991176 = r20991147 - r20991157;
        double r20991177 = r20991176 * r20991160;
        double r20991178 = r20991149 * r20991146;
        double r20991179 = r20991177 * r20991178;
        double r20991180 = r20991147 * r20991147;
        double r20991181 = r20991157 * r20991157;
        double r20991182 = r20991180 - r20991181;
        double r20991183 = r20991182 * r20991160;
        double r20991184 = r20991176 * r20991158;
        double r20991185 = r20991183 - r20991184;
        double r20991186 = r20991154 * r20991185;
        double r20991187 = r20991142 * r20991186;
        double r20991188 = r20991179 - r20991187;
        double r20991189 = r20991177 * r20991142;
        double r20991190 = r20991188 / r20991189;
        double r20991191 = r20991158 * r20991190;
        double r20991192 = exp(r20991191);
        double r20991193 = r20991192 * r20991170;
        double r20991194 = r20991145 + r20991193;
        double r20991195 = r20991145 / r20991194;
        double r20991196 = r20991175 ? r20991195 : r20991173;
        double r20991197 = r20991144 ? r20991173 : r20991196;
        return r20991197;
}

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.3
Herbie2.8
\[\begin{array}{l} \mathbf{if}\;t \lt -2.118326644891581057561884576920117070548 \cdot 10^{-50}:\\ \;\;\;\;\frac{x}{x + y \cdot e^{2 \cdot \left(\left(a \cdot c + 0.8333333333333333703407674875052180141211 \cdot c\right) - a \cdot b\right)}}\\ \mathbf{elif}\;t \lt 5.196588770651547088010424937268931048836 \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 < -6.235874327363358e-226 or 3.3407254030675445e-267 < 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-cube6.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}{\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-unprod6.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}{\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-cube6.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{\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-undiv6.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) - \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. Simplified6.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) - \sqrt[3]{\color{blue}{\frac{\frac{2}{t}}{3} \cdot \left(\frac{\frac{2}{t}}{3} \cdot \frac{\frac{2}{t}}{3}\right)}}\right)\right)}}\]
    9. Using strategy rm
    10. Applied add-log-exp8.9

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

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

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

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

    if -6.235874327363358e-226 < t < 3.3407254030675445e-267

    1. Initial program 10.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 flip-+14.0

      \[\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-sub14.0

      \[\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/14.0

      \[\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-sub10.2

      \[\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 simplification2.8

    \[\leadsto \begin{array}{l} \mathbf{if}\;t \le -6.235874327363358100249014052036578048109 \cdot 10^{-226}:\\ \;\;\;\;\frac{x}{x + e^{\log \left(e^{\frac{z}{\frac{t}{\sqrt{t + a}}} - \left(b - c\right) \cdot \left(\frac{5}{6} + \left(a - \frac{2}{t \cdot 3}\right)\right)}\right) \cdot 2} \cdot y}\\ \mathbf{elif}\;t \le 3.340725403067544451185955686851105101177 \cdot 10^{-267}:\\ \;\;\;\;\frac{x}{x + e^{2 \cdot \frac{\left(\left(a - \frac{5}{6}\right) \cdot \left(t \cdot 3\right)\right) \cdot \left(\sqrt{t + a} \cdot z\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)}{\left(\left(a - \frac{5}{6}\right) \cdot \left(t \cdot 3\right)\right) \cdot t}} \cdot y}\\ \mathbf{else}:\\ \;\;\;\;\frac{x}{x + e^{\log \left(e^{\frac{z}{\frac{t}{\sqrt{t + a}}} - \left(b - c\right) \cdot \left(\frac{5}{6} + \left(a - \frac{2}{t \cdot 3}\right)\right)}\right) \cdot 2} \cdot y}\\ \end{array}\]

Reproduce

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

  :herbie-target
  (if (< t -2.118326644891581e-50) (/ x (+ x (* y (exp (* 2.0 (- (+ (* a c) (* 0.8333333333333334 c)) (* a b))))))) (if (< t 5.196588770651547e-123) (/ x (+ x (* y (exp (* 2.0 (/ (- (* (* z (sqrt (+ t a))) (* (* 3.0 t) (- a (/ 5.0 6.0)))) (* (- (* (+ (/ 5.0 6.0) a) (* 3.0 t)) 2.0) (* (- a (/ 5.0 6.0)) (* (- b c) t)))) (* (* (* t t) 3.0) (- a (/ 5.0 6.0))))))))) (/ x (+ x (* y (exp (* 2.0 (- (/ (* z (sqrt (+ t a))) t) (* (- b c) (- (+ a (/ 5.0 6.0)) (/ 2.0 (* t 3.0))))))))))))

  (/ x (+ x (* y (exp (* 2.0 (- (/ (* z (sqrt (+ t a))) t) (* (- b c) (- (+ a (/ 5.0 6.0)) (/ 2.0 (* t 3.0)))))))))))