Average Error: 3.9 → 5.6
Time: 42.3s
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 -699293331120.752197265625:\\ \;\;\;\;\frac{x}{x + e^{\left(\frac{\sqrt{t + a} \cdot z}{t} - \left(\left(\frac{5}{6} + a\right) - \log \left(e^{\frac{2}{t \cdot 3}}\right)\right) \cdot \left(b - c\right)\right) \cdot 2} \cdot y}\\ \mathbf{elif}\;t \le 9.289679889769380475433857569100837281439 \cdot 10^{-4}:\\ \;\;\;\;\frac{x}{y \cdot e^{\frac{\left(\left(b + c\right) \cdot \sqrt{t + a}\right) \cdot z - \left(t \cdot \left(\left(\frac{5}{6} - \frac{\frac{2}{t}}{3}\right) + a\right)\right) \cdot \left(\left(b + c\right) \cdot \left(b - c\right)\right)}{t \cdot \left(b + c\right)} \cdot 2} + x}\\ \mathbf{else}:\\ \;\;\;\;\frac{x}{x + e^{\left(\frac{\sqrt{t + a} \cdot z}{t} - \left(\left(\frac{5}{6} + a\right) - \log \left(e^{\frac{2}{t \cdot 3}}\right)\right) \cdot \left(b - c\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 -699293331120.752197265625:\\
\;\;\;\;\frac{x}{x + e^{\left(\frac{\sqrt{t + a} \cdot z}{t} - \left(\left(\frac{5}{6} + a\right) - \log \left(e^{\frac{2}{t \cdot 3}}\right)\right) \cdot \left(b - c\right)\right) \cdot 2} \cdot y}\\

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

\mathbf{else}:\\
\;\;\;\;\frac{x}{x + e^{\left(\frac{\sqrt{t + a} \cdot z}{t} - \left(\left(\frac{5}{6} + a\right) - \log \left(e^{\frac{2}{t \cdot 3}}\right)\right) \cdot \left(b - c\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 r4496994 = x;
        double r4496995 = y;
        double r4496996 = 2.0;
        double r4496997 = z;
        double r4496998 = t;
        double r4496999 = a;
        double r4497000 = r4496998 + r4496999;
        double r4497001 = sqrt(r4497000);
        double r4497002 = r4496997 * r4497001;
        double r4497003 = r4497002 / r4496998;
        double r4497004 = b;
        double r4497005 = c;
        double r4497006 = r4497004 - r4497005;
        double r4497007 = 5.0;
        double r4497008 = 6.0;
        double r4497009 = r4497007 / r4497008;
        double r4497010 = r4496999 + r4497009;
        double r4497011 = 3.0;
        double r4497012 = r4496998 * r4497011;
        double r4497013 = r4496996 / r4497012;
        double r4497014 = r4497010 - r4497013;
        double r4497015 = r4497006 * r4497014;
        double r4497016 = r4497003 - r4497015;
        double r4497017 = r4496996 * r4497016;
        double r4497018 = exp(r4497017);
        double r4497019 = r4496995 * r4497018;
        double r4497020 = r4496994 + r4497019;
        double r4497021 = r4496994 / r4497020;
        return r4497021;
}

double f(double x, double y, double z, double t, double a, double b, double c) {
        double r4497022 = t;
        double r4497023 = -699293331120.7522;
        bool r4497024 = r4497022 <= r4497023;
        double r4497025 = x;
        double r4497026 = a;
        double r4497027 = r4497022 + r4497026;
        double r4497028 = sqrt(r4497027);
        double r4497029 = z;
        double r4497030 = r4497028 * r4497029;
        double r4497031 = r4497030 / r4497022;
        double r4497032 = 5.0;
        double r4497033 = 6.0;
        double r4497034 = r4497032 / r4497033;
        double r4497035 = r4497034 + r4497026;
        double r4497036 = 2.0;
        double r4497037 = 3.0;
        double r4497038 = r4497022 * r4497037;
        double r4497039 = r4497036 / r4497038;
        double r4497040 = exp(r4497039);
        double r4497041 = log(r4497040);
        double r4497042 = r4497035 - r4497041;
        double r4497043 = b;
        double r4497044 = c;
        double r4497045 = r4497043 - r4497044;
        double r4497046 = r4497042 * r4497045;
        double r4497047 = r4497031 - r4497046;
        double r4497048 = r4497047 * r4497036;
        double r4497049 = exp(r4497048);
        double r4497050 = y;
        double r4497051 = r4497049 * r4497050;
        double r4497052 = r4497025 + r4497051;
        double r4497053 = r4497025 / r4497052;
        double r4497054 = 0.000928967988976938;
        bool r4497055 = r4497022 <= r4497054;
        double r4497056 = r4497043 + r4497044;
        double r4497057 = r4497056 * r4497028;
        double r4497058 = r4497057 * r4497029;
        double r4497059 = r4497036 / r4497022;
        double r4497060 = r4497059 / r4497037;
        double r4497061 = r4497034 - r4497060;
        double r4497062 = r4497061 + r4497026;
        double r4497063 = r4497022 * r4497062;
        double r4497064 = r4497056 * r4497045;
        double r4497065 = r4497063 * r4497064;
        double r4497066 = r4497058 - r4497065;
        double r4497067 = r4497022 * r4497056;
        double r4497068 = r4497066 / r4497067;
        double r4497069 = r4497068 * r4497036;
        double r4497070 = exp(r4497069);
        double r4497071 = r4497050 * r4497070;
        double r4497072 = r4497071 + r4497025;
        double r4497073 = r4497025 / r4497072;
        double r4497074 = r4497055 ? r4497073 : r4497053;
        double r4497075 = r4497024 ? r4497053 : r4497074;
        return r4497075;
}

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

Derivation

  1. Split input into 2 regimes
  2. if t < -699293331120.7522 or 0.000928967988976938 < t

    1. Initial program 2.8

      \[\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-log-exp2.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}{\log \left(e^{\frac{2}{t \cdot 3}}\right)}\right)\right)}}\]

    if -699293331120.7522 < t < 0.000928967988976938

    1. Initial program 5.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 flip--9.0

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

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

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

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

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

Reproduce

herbie shell --seed 2019169 
(FPCore (x y z t a b c)
  :name "Numeric.SpecFunctions:invIncompleteBetaWorker from math-functions-0.1.5.2"
  (/ x (+ x (* y (exp (* 2.0 (- (/ (* z (sqrt (+ t a))) t) (* (- b c) (- (+ a (/ 5.0 6.0)) (/ 2.0 (* t 3.0)))))))))))