Average Error: 4.1 → 7.5
Time: 1.4m
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 -3.196973635547550878216446115156055318506 \cdot 10^{-78}:\\ \;\;\;\;\frac{x}{x + y \cdot e^{\left(\frac{\sqrt{a + t}}{\log \left(e^{\sqrt[3]{t}}\right)} \cdot \frac{z}{\sqrt[3]{t} \cdot \sqrt[3]{t}} - \left(b - c\right) \cdot \left(\left(\frac{5}{6} + a\right) - \frac{2}{3 \cdot t}\right)\right) \cdot 2}}\\ \mathbf{elif}\;t \le 1.173812833066756579069591227745209838589 \cdot 10^{-103}:\\ \;\;\;\;\frac{x}{y \cdot e^{2 \cdot \frac{\left(\sqrt{a + t} \cdot z\right) \cdot \left(\left(a - \frac{5}{6}\right) \cdot \sqrt[3]{3 \cdot t}\right) - \left(\left(b - c\right) \cdot \left(\sqrt[3]{3 \cdot t} \cdot \left(a \cdot a - \frac{5}{6} \cdot \frac{5}{6}\right) - \left(a - \frac{5}{6}\right) \cdot \sqrt[3]{\left(\frac{2}{3 \cdot t} \cdot 2\right) \cdot \frac{2}{3 \cdot t}}\right)\right) \cdot t}{\left(\left(a - \frac{5}{6}\right) \cdot \sqrt[3]{3 \cdot t}\right) \cdot t}} + x}\\ \mathbf{else}:\\ \;\;\;\;\frac{x}{x + y \cdot e^{2 \cdot \left(\frac{\sqrt{a + t} \cdot z}{t} - \left(\left(\frac{5}{6} + a\right) - {\left(\frac{2}{3 \cdot t} \cdot \left(\frac{2}{3 \cdot t} \cdot \frac{2}{3 \cdot t}\right)\right)}^{\frac{1}{3}}\right) \cdot \left(b - c\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 -3.196973635547550878216446115156055318506 \cdot 10^{-78}:\\
\;\;\;\;\frac{x}{x + y \cdot e^{\left(\frac{\sqrt{a + t}}{\log \left(e^{\sqrt[3]{t}}\right)} \cdot \frac{z}{\sqrt[3]{t} \cdot \sqrt[3]{t}} - \left(b - c\right) \cdot \left(\left(\frac{5}{6} + a\right) - \frac{2}{3 \cdot t}\right)\right) \cdot 2}}\\

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

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

\end{array}
double f(double x, double y, double z, double t, double a, double b, double c) {
        double r22343413 = x;
        double r22343414 = y;
        double r22343415 = 2.0;
        double r22343416 = z;
        double r22343417 = t;
        double r22343418 = a;
        double r22343419 = r22343417 + r22343418;
        double r22343420 = sqrt(r22343419);
        double r22343421 = r22343416 * r22343420;
        double r22343422 = r22343421 / r22343417;
        double r22343423 = b;
        double r22343424 = c;
        double r22343425 = r22343423 - r22343424;
        double r22343426 = 5.0;
        double r22343427 = 6.0;
        double r22343428 = r22343426 / r22343427;
        double r22343429 = r22343418 + r22343428;
        double r22343430 = 3.0;
        double r22343431 = r22343417 * r22343430;
        double r22343432 = r22343415 / r22343431;
        double r22343433 = r22343429 - r22343432;
        double r22343434 = r22343425 * r22343433;
        double r22343435 = r22343422 - r22343434;
        double r22343436 = r22343415 * r22343435;
        double r22343437 = exp(r22343436);
        double r22343438 = r22343414 * r22343437;
        double r22343439 = r22343413 + r22343438;
        double r22343440 = r22343413 / r22343439;
        return r22343440;
}

double f(double x, double y, double z, double t, double a, double b, double c) {
        double r22343441 = t;
        double r22343442 = -3.196973635547551e-78;
        bool r22343443 = r22343441 <= r22343442;
        double r22343444 = x;
        double r22343445 = y;
        double r22343446 = a;
        double r22343447 = r22343446 + r22343441;
        double r22343448 = sqrt(r22343447);
        double r22343449 = cbrt(r22343441);
        double r22343450 = exp(r22343449);
        double r22343451 = log(r22343450);
        double r22343452 = r22343448 / r22343451;
        double r22343453 = z;
        double r22343454 = r22343449 * r22343449;
        double r22343455 = r22343453 / r22343454;
        double r22343456 = r22343452 * r22343455;
        double r22343457 = b;
        double r22343458 = c;
        double r22343459 = r22343457 - r22343458;
        double r22343460 = 5.0;
        double r22343461 = 6.0;
        double r22343462 = r22343460 / r22343461;
        double r22343463 = r22343462 + r22343446;
        double r22343464 = 2.0;
        double r22343465 = 3.0;
        double r22343466 = r22343465 * r22343441;
        double r22343467 = r22343464 / r22343466;
        double r22343468 = r22343463 - r22343467;
        double r22343469 = r22343459 * r22343468;
        double r22343470 = r22343456 - r22343469;
        double r22343471 = r22343470 * r22343464;
        double r22343472 = exp(r22343471);
        double r22343473 = r22343445 * r22343472;
        double r22343474 = r22343444 + r22343473;
        double r22343475 = r22343444 / r22343474;
        double r22343476 = 1.1738128330667566e-103;
        bool r22343477 = r22343441 <= r22343476;
        double r22343478 = r22343448 * r22343453;
        double r22343479 = r22343446 - r22343462;
        double r22343480 = cbrt(r22343466);
        double r22343481 = r22343479 * r22343480;
        double r22343482 = r22343478 * r22343481;
        double r22343483 = r22343446 * r22343446;
        double r22343484 = r22343462 * r22343462;
        double r22343485 = r22343483 - r22343484;
        double r22343486 = r22343480 * r22343485;
        double r22343487 = r22343467 * r22343464;
        double r22343488 = r22343487 * r22343467;
        double r22343489 = cbrt(r22343488);
        double r22343490 = r22343479 * r22343489;
        double r22343491 = r22343486 - r22343490;
        double r22343492 = r22343459 * r22343491;
        double r22343493 = r22343492 * r22343441;
        double r22343494 = r22343482 - r22343493;
        double r22343495 = r22343481 * r22343441;
        double r22343496 = r22343494 / r22343495;
        double r22343497 = r22343464 * r22343496;
        double r22343498 = exp(r22343497);
        double r22343499 = r22343445 * r22343498;
        double r22343500 = r22343499 + r22343444;
        double r22343501 = r22343444 / r22343500;
        double r22343502 = r22343478 / r22343441;
        double r22343503 = r22343467 * r22343467;
        double r22343504 = r22343467 * r22343503;
        double r22343505 = 0.3333333333333333;
        double r22343506 = pow(r22343504, r22343505);
        double r22343507 = r22343463 - r22343506;
        double r22343508 = r22343507 * r22343459;
        double r22343509 = r22343502 - r22343508;
        double r22343510 = r22343464 * r22343509;
        double r22343511 = exp(r22343510);
        double r22343512 = r22343445 * r22343511;
        double r22343513 = r22343444 + r22343512;
        double r22343514 = r22343444 / r22343513;
        double r22343515 = r22343477 ? r22343501 : r22343514;
        double r22343516 = r22343443 ? r22343475 : r22343515;
        return r22343516;
}

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.1
Target3.1
Herbie7.5
\[\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 3 regimes
  2. if t < -3.196973635547551e-78

    1. Initial program 3.9

      \[\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.9

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

      \[\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)}}\]
    5. Using strategy rm
    6. Applied add-log-exp7.8

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

    if -3.196973635547551e-78 < t < 1.1738128330667566e-103

    1. Initial program 6.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-cbrt-cube16.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]{\left(\frac{2}{t \cdot 3} \cdot \frac{2}{t \cdot 3}\right) \cdot \frac{2}{t \cdot 3}}}\right)\right)}}\]
    4. Using strategy rm
    5. Applied associate-*l/16.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{2 \cdot \frac{2}{t \cdot 3}}{t \cdot 3}} \cdot \frac{2}{t \cdot 3}}\right)\right)}}\]
    6. Applied associate-*l/16.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{\left(2 \cdot \frac{2}{t \cdot 3}\right) \cdot \frac{2}{t \cdot 3}}{t \cdot 3}}}\right)\right)}}\]
    7. Applied cbrt-div12.8

      \[\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}{\frac{\sqrt[3]{\left(2 \cdot \frac{2}{t \cdot 3}\right) \cdot \frac{2}{t \cdot 3}}}{\sqrt[3]{t \cdot 3}}}\right)\right)}}\]
    8. Applied flip-+16.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{\sqrt[3]{\left(2 \cdot \frac{2}{t \cdot 3}\right) \cdot \frac{2}{t \cdot 3}}}{\sqrt[3]{t \cdot 3}}\right)\right)}}\]
    9. Applied frac-sub17.1

      \[\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 \sqrt[3]{t \cdot 3} - \left(a - \frac{5}{6}\right) \cdot \sqrt[3]{\left(2 \cdot \frac{2}{t \cdot 3}\right) \cdot \frac{2}{t \cdot 3}}}{\left(a - \frac{5}{6}\right) \cdot \sqrt[3]{t \cdot 3}}}\right)}}\]
    10. Applied associate-*r/17.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 \sqrt[3]{t \cdot 3} - \left(a - \frac{5}{6}\right) \cdot \sqrt[3]{\left(2 \cdot \frac{2}{t \cdot 3}\right) \cdot \frac{2}{t \cdot 3}}\right)}{\left(a - \frac{5}{6}\right) \cdot \sqrt[3]{t \cdot 3}}}\right)}}\]
    11. Applied frac-sub14.9

      \[\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 \sqrt[3]{t \cdot 3}\right) - t \cdot \left(\left(b - c\right) \cdot \left(\left(a \cdot a - \frac{5}{6} \cdot \frac{5}{6}\right) \cdot \sqrt[3]{t \cdot 3} - \left(a - \frac{5}{6}\right) \cdot \sqrt[3]{\left(2 \cdot \frac{2}{t \cdot 3}\right) \cdot \frac{2}{t \cdot 3}}\right)\right)}{t \cdot \left(\left(a - \frac{5}{6}\right) \cdot \sqrt[3]{t \cdot 3}\right)}}}}\]

    if 1.1738128330667566e-103 < t

    1. Initial program 2.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-cube2.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]{\left(\frac{2}{t \cdot 3} \cdot \frac{2}{t \cdot 3}\right) \cdot \frac{2}{t \cdot 3}}}\right)\right)}}\]
    4. Using strategy rm
    5. Applied pow1/32.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}{{\left(\left(\frac{2}{t \cdot 3} \cdot \frac{2}{t \cdot 3}\right) \cdot \frac{2}{t \cdot 3}\right)}^{\frac{1}{3}}}\right)\right)}}\]
  3. Recombined 3 regimes into one program.
  4. Final simplification7.5

    \[\leadsto \begin{array}{l} \mathbf{if}\;t \le -3.196973635547550878216446115156055318506 \cdot 10^{-78}:\\ \;\;\;\;\frac{x}{x + y \cdot e^{\left(\frac{\sqrt{a + t}}{\log \left(e^{\sqrt[3]{t}}\right)} \cdot \frac{z}{\sqrt[3]{t} \cdot \sqrt[3]{t}} - \left(b - c\right) \cdot \left(\left(\frac{5}{6} + a\right) - \frac{2}{3 \cdot t}\right)\right) \cdot 2}}\\ \mathbf{elif}\;t \le 1.173812833066756579069591227745209838589 \cdot 10^{-103}:\\ \;\;\;\;\frac{x}{y \cdot e^{2 \cdot \frac{\left(\sqrt{a + t} \cdot z\right) \cdot \left(\left(a - \frac{5}{6}\right) \cdot \sqrt[3]{3 \cdot t}\right) - \left(\left(b - c\right) \cdot \left(\sqrt[3]{3 \cdot t} \cdot \left(a \cdot a - \frac{5}{6} \cdot \frac{5}{6}\right) - \left(a - \frac{5}{6}\right) \cdot \sqrt[3]{\left(\frac{2}{3 \cdot t} \cdot 2\right) \cdot \frac{2}{3 \cdot t}}\right)\right) \cdot t}{\left(\left(a - \frac{5}{6}\right) \cdot \sqrt[3]{3 \cdot t}\right) \cdot t}} + x}\\ \mathbf{else}:\\ \;\;\;\;\frac{x}{x + y \cdot e^{2 \cdot \left(\frac{\sqrt{a + t} \cdot z}{t} - \left(\left(\frac{5}{6} + a\right) - {\left(\frac{2}{3 \cdot t} \cdot \left(\frac{2}{3 \cdot t} \cdot \frac{2}{3 \cdot t}\right)\right)}^{\frac{1}{3}}\right) \cdot \left(b - c\right)\right)}}\\ \end{array}\]

Reproduce

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