Average Error: 3.7 → 1.7
Time: 9.5s
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)}}\]
\[\frac{x}{x + y \cdot e^{2 \cdot \left(\mathsf{fma}\left(\frac{z}{\sqrt[3]{t} \cdot \sqrt[3]{t}}, \frac{\sqrt{t + a}}{\sqrt[3]{t}}, -\left(\left(a + \frac{5}{6}\right) - \frac{2}{t \cdot 3}\right) \cdot \left(b - c\right)\right) + \left(\left(a + \frac{5}{6}\right) - \frac{2}{t \cdot 3}\right) \cdot \left(\left(-\left(b - c\right)\right) + \left(b - c\right)\right)\right)}}\]
\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)}}
\frac{x}{x + y \cdot e^{2 \cdot \left(\mathsf{fma}\left(\frac{z}{\sqrt[3]{t} \cdot \sqrt[3]{t}}, \frac{\sqrt{t + a}}{\sqrt[3]{t}}, -\left(\left(a + \frac{5}{6}\right) - \frac{2}{t \cdot 3}\right) \cdot \left(b - c\right)\right) + \left(\left(a + \frac{5}{6}\right) - \frac{2}{t \cdot 3}\right) \cdot \left(\left(-\left(b - c\right)\right) + \left(b - c\right)\right)\right)}}
double f(double x, double y, double z, double t, double a, double b, double c) {
        double r88217 = x;
        double r88218 = y;
        double r88219 = 2.0;
        double r88220 = z;
        double r88221 = t;
        double r88222 = a;
        double r88223 = r88221 + r88222;
        double r88224 = sqrt(r88223);
        double r88225 = r88220 * r88224;
        double r88226 = r88225 / r88221;
        double r88227 = b;
        double r88228 = c;
        double r88229 = r88227 - r88228;
        double r88230 = 5.0;
        double r88231 = 6.0;
        double r88232 = r88230 / r88231;
        double r88233 = r88222 + r88232;
        double r88234 = 3.0;
        double r88235 = r88221 * r88234;
        double r88236 = r88219 / r88235;
        double r88237 = r88233 - r88236;
        double r88238 = r88229 * r88237;
        double r88239 = r88226 - r88238;
        double r88240 = r88219 * r88239;
        double r88241 = exp(r88240);
        double r88242 = r88218 * r88241;
        double r88243 = r88217 + r88242;
        double r88244 = r88217 / r88243;
        return r88244;
}

double f(double x, double y, double z, double t, double a, double b, double c) {
        double r88245 = x;
        double r88246 = y;
        double r88247 = 2.0;
        double r88248 = z;
        double r88249 = t;
        double r88250 = cbrt(r88249);
        double r88251 = r88250 * r88250;
        double r88252 = r88248 / r88251;
        double r88253 = a;
        double r88254 = r88249 + r88253;
        double r88255 = sqrt(r88254);
        double r88256 = r88255 / r88250;
        double r88257 = 5.0;
        double r88258 = 6.0;
        double r88259 = r88257 / r88258;
        double r88260 = r88253 + r88259;
        double r88261 = 3.0;
        double r88262 = r88249 * r88261;
        double r88263 = r88247 / r88262;
        double r88264 = r88260 - r88263;
        double r88265 = b;
        double r88266 = c;
        double r88267 = r88265 - r88266;
        double r88268 = r88264 * r88267;
        double r88269 = -r88268;
        double r88270 = fma(r88252, r88256, r88269);
        double r88271 = -r88267;
        double r88272 = r88271 + r88267;
        double r88273 = r88264 * r88272;
        double r88274 = r88270 + r88273;
        double r88275 = r88247 * r88274;
        double r88276 = exp(r88275);
        double r88277 = r88246 * r88276;
        double r88278 = r88245 + r88277;
        double r88279 = r88245 / r88278;
        return r88279;
}

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

Derivation

  1. Initial program 3.7

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

    \[\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-frac2.5

    \[\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. Applied prod-diff21.2

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

    \[\leadsto \frac{x}{x + y \cdot e^{2 \cdot \left(\mathsf{fma}\left(\frac{z}{\sqrt[3]{t} \cdot \sqrt[3]{t}}, \frac{\sqrt{t + a}}{\sqrt[3]{t}}, -\left(\left(a + \frac{5}{6}\right) - \frac{2}{t \cdot 3}\right) \cdot \left(b - c\right)\right) + \color{blue}{\left(\left(a + \frac{5}{6}\right) - \frac{2}{t \cdot 3}\right) \cdot \left(\left(-\left(b - c\right)\right) + \left(b - c\right)\right)}\right)}}\]
  7. Final simplification1.7

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

Reproduce

herbie shell --seed 2020081 +o rules:numerics
(FPCore (x y z t a b c)
  :name "Numeric.SpecFunctions:invIncompleteBetaWorker from math-functions-0.1.5.2"
  :precision binary64
  (/ x (+ x (* y (exp (* 2 (- (/ (* z (sqrt (+ t a))) t) (* (- b c) (- (+ a (/ 5 6)) (/ 2 (* t 3)))))))))))