Average Error: 4.0 → 2.6
Time: 15.7s
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 -1.55791072317737 \cdot 10^{-173} \lor \neg \left(t \le 3.5881784849603215 \cdot 10^{-236}\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 \frac{\left(z \cdot \frac{\sqrt{t + a}}{\sqrt[3]{t}}\right) \cdot \left(\left(a - \frac{5}{6}\right) \cdot \left(t \cdot 3\right)\right) - \left(\sqrt[3]{t} \cdot \sqrt[3]{t}\right) \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(\sqrt[3]{t} \cdot \sqrt[3]{t}\right) \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 -1.55791072317737 \cdot 10^{-173} \lor \neg \left(t \le 3.5881784849603215 \cdot 10^{-236}\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 \frac{\left(z \cdot \frac{\sqrt{t + a}}{\sqrt[3]{t}}\right) \cdot \left(\left(a - \frac{5}{6}\right) \cdot \left(t \cdot 3\right)\right) - \left(\sqrt[3]{t} \cdot \sqrt[3]{t}\right) \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(\sqrt[3]{t} \cdot \sqrt[3]{t}\right) \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 r548308 = x;
        double r548309 = y;
        double r548310 = 2.0;
        double r548311 = z;
        double r548312 = t;
        double r548313 = a;
        double r548314 = r548312 + r548313;
        double r548315 = sqrt(r548314);
        double r548316 = r548311 * r548315;
        double r548317 = r548316 / r548312;
        double r548318 = b;
        double r548319 = c;
        double r548320 = r548318 - r548319;
        double r548321 = 5.0;
        double r548322 = 6.0;
        double r548323 = r548321 / r548322;
        double r548324 = r548313 + r548323;
        double r548325 = 3.0;
        double r548326 = r548312 * r548325;
        double r548327 = r548310 / r548326;
        double r548328 = r548324 - r548327;
        double r548329 = r548320 * r548328;
        double r548330 = r548317 - r548329;
        double r548331 = r548310 * r548330;
        double r548332 = exp(r548331);
        double r548333 = r548309 * r548332;
        double r548334 = r548308 + r548333;
        double r548335 = r548308 / r548334;
        return r548335;
}

double f(double x, double y, double z, double t, double a, double b, double c) {
        double r548336 = t;
        double r548337 = -1.55791072317737e-173;
        bool r548338 = r548336 <= r548337;
        double r548339 = 3.5881784849603215e-236;
        bool r548340 = r548336 <= r548339;
        double r548341 = !r548340;
        bool r548342 = r548338 || r548341;
        double r548343 = x;
        double r548344 = y;
        double r548345 = 2.0;
        double r548346 = z;
        double r548347 = cbrt(r548336);
        double r548348 = r548347 * r548347;
        double r548349 = r548346 / r548348;
        double r548350 = a;
        double r548351 = r548336 + r548350;
        double r548352 = sqrt(r548351);
        double r548353 = r548352 / r548347;
        double r548354 = r548349 * r548353;
        double r548355 = b;
        double r548356 = c;
        double r548357 = r548355 - r548356;
        double r548358 = 5.0;
        double r548359 = 6.0;
        double r548360 = r548358 / r548359;
        double r548361 = r548350 + r548360;
        double r548362 = 3.0;
        double r548363 = r548336 * r548362;
        double r548364 = r548345 / r548363;
        double r548365 = r548361 - r548364;
        double r548366 = r548357 * r548365;
        double r548367 = r548354 - r548366;
        double r548368 = r548345 * r548367;
        double r548369 = exp(r548368);
        double r548370 = r548344 * r548369;
        double r548371 = r548343 + r548370;
        double r548372 = r548343 / r548371;
        double r548373 = r548346 * r548353;
        double r548374 = r548350 - r548360;
        double r548375 = r548374 * r548363;
        double r548376 = r548373 * r548375;
        double r548377 = r548350 * r548350;
        double r548378 = r548360 * r548360;
        double r548379 = r548377 - r548378;
        double r548380 = r548379 * r548363;
        double r548381 = r548374 * r548345;
        double r548382 = r548380 - r548381;
        double r548383 = r548357 * r548382;
        double r548384 = r548348 * r548383;
        double r548385 = r548376 - r548384;
        double r548386 = r548348 * r548375;
        double r548387 = r548385 / r548386;
        double r548388 = r548345 * r548387;
        double r548389 = exp(r548388);
        double r548390 = r548344 * r548389;
        double r548391 = r548343 + r548390;
        double r548392 = r548343 / r548391;
        double r548393 = r548342 ? r548372 : r548392;
        return r548393;
}

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
Herbie2.6
\[\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 < -1.55791072317737e-173 or 3.5881784849603215e-236 < t

    1. Initial program 3.1

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

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

      \[\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.55791072317737e-173 < t < 3.5881784849603215e-236

    1. Initial program 8.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-cbrt8.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-frac9.1

      \[\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 flip-+12.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}}{\sqrt[3]{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)}}\]
    7. Applied frac-sub12.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}}{\sqrt[3]{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)}}\]
    8. Applied associate-*r/12.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}}{\sqrt[3]{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)}}\]
    9. Applied associate-*l/12.6

      \[\leadsto \frac{x}{x + y \cdot e^{2 \cdot \left(\color{blue}{\frac{z \cdot \frac{\sqrt{t + a}}{\sqrt[3]{t}}}{\sqrt[3]{t} \cdot \sqrt[3]{t}}} - \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)}}\]
    10. Applied frac-sub8.1

      \[\leadsto \frac{x}{x + y \cdot e^{2 \cdot \color{blue}{\frac{\left(z \cdot \frac{\sqrt{t + a}}{\sqrt[3]{t}}\right) \cdot \left(\left(a - \frac{5}{6}\right) \cdot \left(t \cdot 3\right)\right) - \left(\sqrt[3]{t} \cdot \sqrt[3]{t}\right) \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(\sqrt[3]{t} \cdot \sqrt[3]{t}\right) \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.6

    \[\leadsto \begin{array}{l} \mathbf{if}\;t \le -1.55791072317737 \cdot 10^{-173} \lor \neg \left(t \le 3.5881784849603215 \cdot 10^{-236}\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 \frac{\left(z \cdot \frac{\sqrt{t + a}}{\sqrt[3]{t}}\right) \cdot \left(\left(a - \frac{5}{6}\right) \cdot \left(t \cdot 3\right)\right) - \left(\sqrt[3]{t} \cdot \sqrt[3]{t}\right) \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(\sqrt[3]{t} \cdot \sqrt[3]{t}\right) \cdot \left(\left(a - \frac{5}{6}\right) \cdot \left(t \cdot 3\right)\right)}}}\\ \end{array}\]

Reproduce

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