Average Error: 3.8 → 2.9
Time: 24.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}\;a \le 2.108535095172928346218613549125577993008 \cdot 10^{241}:\\ \;\;\;\;\frac{x}{x + e^{\left(\left(\left(a - \frac{0.6666666666666666296592325124947819858789}{t}\right) + \frac{5}{6}\right) \cdot \left(c - b\right) + \left(\frac{z}{\sqrt[3]{t}} \cdot \frac{\left|\sqrt[3]{a + t}\right|}{\sqrt[3]{t}}\right) \cdot \frac{\sqrt{\sqrt[3]{a + t}}}{\sqrt[3]{t}}\right) \cdot 2} \cdot y}\\ \mathbf{else}:\\ \;\;\;\;\frac{x}{x + e^{2 \cdot \left(a \cdot \left(c - b\right) - b \cdot 0.8333333333333333703407674875052180141211\right)} \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}\;a \le 2.108535095172928346218613549125577993008 \cdot 10^{241}:\\
\;\;\;\;\frac{x}{x + e^{\left(\left(\left(a - \frac{0.6666666666666666296592325124947819858789}{t}\right) + \frac{5}{6}\right) \cdot \left(c - b\right) + \left(\frac{z}{\sqrt[3]{t}} \cdot \frac{\left|\sqrt[3]{a + t}\right|}{\sqrt[3]{t}}\right) \cdot \frac{\sqrt{\sqrt[3]{a + t}}}{\sqrt[3]{t}}\right) \cdot 2} \cdot y}\\

\mathbf{else}:\\
\;\;\;\;\frac{x}{x + e^{2 \cdot \left(a \cdot \left(c - b\right) - b \cdot 0.8333333333333333703407674875052180141211\right)} \cdot y}\\

\end{array}
double f(double x, double y, double z, double t, double a, double b, double c) {
        double r391212 = x;
        double r391213 = y;
        double r391214 = 2.0;
        double r391215 = z;
        double r391216 = t;
        double r391217 = a;
        double r391218 = r391216 + r391217;
        double r391219 = sqrt(r391218);
        double r391220 = r391215 * r391219;
        double r391221 = r391220 / r391216;
        double r391222 = b;
        double r391223 = c;
        double r391224 = r391222 - r391223;
        double r391225 = 5.0;
        double r391226 = 6.0;
        double r391227 = r391225 / r391226;
        double r391228 = r391217 + r391227;
        double r391229 = 3.0;
        double r391230 = r391216 * r391229;
        double r391231 = r391214 / r391230;
        double r391232 = r391228 - r391231;
        double r391233 = r391224 * r391232;
        double r391234 = r391221 - r391233;
        double r391235 = r391214 * r391234;
        double r391236 = exp(r391235);
        double r391237 = r391213 * r391236;
        double r391238 = r391212 + r391237;
        double r391239 = r391212 / r391238;
        return r391239;
}

double f(double x, double y, double z, double t, double a, double b, double c) {
        double r391240 = a;
        double r391241 = 2.1085350951729283e+241;
        bool r391242 = r391240 <= r391241;
        double r391243 = x;
        double r391244 = 0.6666666666666666;
        double r391245 = t;
        double r391246 = r391244 / r391245;
        double r391247 = r391240 - r391246;
        double r391248 = 5.0;
        double r391249 = 6.0;
        double r391250 = r391248 / r391249;
        double r391251 = r391247 + r391250;
        double r391252 = c;
        double r391253 = b;
        double r391254 = r391252 - r391253;
        double r391255 = r391251 * r391254;
        double r391256 = z;
        double r391257 = cbrt(r391245);
        double r391258 = r391256 / r391257;
        double r391259 = r391240 + r391245;
        double r391260 = cbrt(r391259);
        double r391261 = fabs(r391260);
        double r391262 = r391261 / r391257;
        double r391263 = r391258 * r391262;
        double r391264 = sqrt(r391260);
        double r391265 = r391264 / r391257;
        double r391266 = r391263 * r391265;
        double r391267 = r391255 + r391266;
        double r391268 = 2.0;
        double r391269 = r391267 * r391268;
        double r391270 = exp(r391269);
        double r391271 = y;
        double r391272 = r391270 * r391271;
        double r391273 = r391243 + r391272;
        double r391274 = r391243 / r391273;
        double r391275 = r391240 * r391254;
        double r391276 = 0.8333333333333334;
        double r391277 = r391253 * r391276;
        double r391278 = r391275 - r391277;
        double r391279 = r391268 * r391278;
        double r391280 = exp(r391279);
        double r391281 = r391280 * r391271;
        double r391282 = r391243 + r391281;
        double r391283 = r391243 / r391282;
        double r391284 = r391242 ? r391274 : r391283;
        return r391284;
}

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

Original3.8
Target2.8
Herbie2.9
\[\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 a < 2.1085350951729283e+241

    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. Simplified2.9

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

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

      \[\leadsto \frac{x}{y \cdot e^{2 \cdot \left(z \cdot \frac{\sqrt{a + t}}{t} + \left(c - b\right) \cdot \left(\left(a - \color{blue}{\frac{0.6666666666666666296592325124947819858789}{t}}\right) + \frac{5}{6}\right)\right)} + x}\]
    6. Using strategy rm
    7. Applied add-cube-cbrt2.9

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

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

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

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

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

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

    if 2.1085350951729283e+241 < a

    1. Initial program 8.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. Simplified8.5

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

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

      \[\leadsto \frac{x}{y \cdot e^{2 \cdot \color{blue}{\left(a \cdot c - \left(a \cdot b + 0.8333333333333333703407674875052180141211 \cdot b\right)\right)}} + x}\]
    6. Simplified7.1

      \[\leadsto \frac{x}{y \cdot e^{2 \cdot \color{blue}{\left(a \cdot \left(c - b\right) - 0.8333333333333333703407674875052180141211 \cdot b\right)}} + x}\]
  3. Recombined 2 regimes into one program.
  4. Final simplification2.9

    \[\leadsto \begin{array}{l} \mathbf{if}\;a \le 2.108535095172928346218613549125577993008 \cdot 10^{241}:\\ \;\;\;\;\frac{x}{x + e^{\left(\left(\left(a - \frac{0.6666666666666666296592325124947819858789}{t}\right) + \frac{5}{6}\right) \cdot \left(c - b\right) + \left(\frac{z}{\sqrt[3]{t}} \cdot \frac{\left|\sqrt[3]{a + t}\right|}{\sqrt[3]{t}}\right) \cdot \frac{\sqrt{\sqrt[3]{a + t}}}{\sqrt[3]{t}}\right) \cdot 2} \cdot y}\\ \mathbf{else}:\\ \;\;\;\;\frac{x}{x + e^{2 \cdot \left(a \cdot \left(c - b\right) - b \cdot 0.8333333333333333703407674875052180141211\right)} \cdot y}\\ \end{array}\]

Reproduce

herbie shell --seed 2019194 
(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)))))))))))