Average Error: 3.7 → 1.5
Time: 45.0s
Precision: 64
\[\frac{x}{x + y \cdot e^{2.0 \cdot \left(\frac{z \cdot \sqrt{t + a}}{t} - \left(b - c\right) \cdot \left(\left(a + \frac{5.0}{6.0}\right) - \frac{2.0}{t \cdot 3.0}\right)\right)}}\]
\[\frac{x}{\mathsf{fma}\left(y, e^{2.0 \cdot \mathsf{fma}\left(c - b, \frac{5.0}{6.0} - \left(\frac{\frac{2.0}{t}}{3.0} - a\right), \frac{\sqrt{\sqrt[3]{a + t}}}{\frac{t}{\sqrt[3]{z}}} \cdot \frac{\sqrt{\sqrt[3]{a + t} \cdot \sqrt[3]{a + t}}}{\frac{1}{\sqrt[3]{z} \cdot \sqrt[3]{z}}}\right)}, x\right)}\]
\frac{x}{x + y \cdot e^{2.0 \cdot \left(\frac{z \cdot \sqrt{t + a}}{t} - \left(b - c\right) \cdot \left(\left(a + \frac{5.0}{6.0}\right) - \frac{2.0}{t \cdot 3.0}\right)\right)}}
\frac{x}{\mathsf{fma}\left(y, e^{2.0 \cdot \mathsf{fma}\left(c - b, \frac{5.0}{6.0} - \left(\frac{\frac{2.0}{t}}{3.0} - a\right), \frac{\sqrt{\sqrt[3]{a + t}}}{\frac{t}{\sqrt[3]{z}}} \cdot \frac{\sqrt{\sqrt[3]{a + t} \cdot \sqrt[3]{a + t}}}{\frac{1}{\sqrt[3]{z} \cdot \sqrt[3]{z}}}\right)}, x\right)}
double f(double x, double y, double z, double t, double a, double b, double c) {
        double r3400219 = x;
        double r3400220 = y;
        double r3400221 = 2.0;
        double r3400222 = z;
        double r3400223 = t;
        double r3400224 = a;
        double r3400225 = r3400223 + r3400224;
        double r3400226 = sqrt(r3400225);
        double r3400227 = r3400222 * r3400226;
        double r3400228 = r3400227 / r3400223;
        double r3400229 = b;
        double r3400230 = c;
        double r3400231 = r3400229 - r3400230;
        double r3400232 = 5.0;
        double r3400233 = 6.0;
        double r3400234 = r3400232 / r3400233;
        double r3400235 = r3400224 + r3400234;
        double r3400236 = 3.0;
        double r3400237 = r3400223 * r3400236;
        double r3400238 = r3400221 / r3400237;
        double r3400239 = r3400235 - r3400238;
        double r3400240 = r3400231 * r3400239;
        double r3400241 = r3400228 - r3400240;
        double r3400242 = r3400221 * r3400241;
        double r3400243 = exp(r3400242);
        double r3400244 = r3400220 * r3400243;
        double r3400245 = r3400219 + r3400244;
        double r3400246 = r3400219 / r3400245;
        return r3400246;
}

double f(double x, double y, double z, double t, double a, double b, double c) {
        double r3400247 = x;
        double r3400248 = y;
        double r3400249 = 2.0;
        double r3400250 = c;
        double r3400251 = b;
        double r3400252 = r3400250 - r3400251;
        double r3400253 = 5.0;
        double r3400254 = 6.0;
        double r3400255 = r3400253 / r3400254;
        double r3400256 = t;
        double r3400257 = r3400249 / r3400256;
        double r3400258 = 3.0;
        double r3400259 = r3400257 / r3400258;
        double r3400260 = a;
        double r3400261 = r3400259 - r3400260;
        double r3400262 = r3400255 - r3400261;
        double r3400263 = r3400260 + r3400256;
        double r3400264 = cbrt(r3400263);
        double r3400265 = sqrt(r3400264);
        double r3400266 = z;
        double r3400267 = cbrt(r3400266);
        double r3400268 = r3400256 / r3400267;
        double r3400269 = r3400265 / r3400268;
        double r3400270 = r3400264 * r3400264;
        double r3400271 = sqrt(r3400270);
        double r3400272 = 1.0;
        double r3400273 = r3400267 * r3400267;
        double r3400274 = r3400272 / r3400273;
        double r3400275 = r3400271 / r3400274;
        double r3400276 = r3400269 * r3400275;
        double r3400277 = fma(r3400252, r3400262, r3400276);
        double r3400278 = r3400249 * r3400277;
        double r3400279 = exp(r3400278);
        double r3400280 = fma(r3400248, r3400279, r3400247);
        double r3400281 = r3400247 / r3400280;
        return r3400281;
}

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.0 \cdot \left(\frac{z \cdot \sqrt{t + a}}{t} - \left(b - c\right) \cdot \left(\left(a + \frac{5.0}{6.0}\right) - \frac{2.0}{t \cdot 3.0}\right)\right)}}\]
  2. Simplified1.8

    \[\leadsto \color{blue}{\frac{x}{\mathsf{fma}\left(y, e^{2.0 \cdot \mathsf{fma}\left(c - b, \frac{5.0}{6.0} - \left(\frac{\frac{2.0}{t}}{3.0} - a\right), \frac{\sqrt{a + t}}{\frac{t}{z}}\right)}, x\right)}}\]
  3. Using strategy rm
  4. Applied add-cube-cbrt1.8

    \[\leadsto \frac{x}{\mathsf{fma}\left(y, e^{2.0 \cdot \mathsf{fma}\left(c - b, \frac{5.0}{6.0} - \left(\frac{\frac{2.0}{t}}{3.0} - a\right), \frac{\sqrt{a + t}}{\frac{t}{\color{blue}{\left(\sqrt[3]{z} \cdot \sqrt[3]{z}\right) \cdot \sqrt[3]{z}}}}\right)}, x\right)}\]
  5. Applied *-un-lft-identity1.8

    \[\leadsto \frac{x}{\mathsf{fma}\left(y, e^{2.0 \cdot \mathsf{fma}\left(c - b, \frac{5.0}{6.0} - \left(\frac{\frac{2.0}{t}}{3.0} - a\right), \frac{\sqrt{a + t}}{\frac{\color{blue}{1 \cdot t}}{\left(\sqrt[3]{z} \cdot \sqrt[3]{z}\right) \cdot \sqrt[3]{z}}}\right)}, x\right)}\]
  6. Applied times-frac1.8

    \[\leadsto \frac{x}{\mathsf{fma}\left(y, e^{2.0 \cdot \mathsf{fma}\left(c - b, \frac{5.0}{6.0} - \left(\frac{\frac{2.0}{t}}{3.0} - a\right), \frac{\sqrt{a + t}}{\color{blue}{\frac{1}{\sqrt[3]{z} \cdot \sqrt[3]{z}} \cdot \frac{t}{\sqrt[3]{z}}}}\right)}, x\right)}\]
  7. Applied add-cube-cbrt1.8

    \[\leadsto \frac{x}{\mathsf{fma}\left(y, e^{2.0 \cdot \mathsf{fma}\left(c - b, \frac{5.0}{6.0} - \left(\frac{\frac{2.0}{t}}{3.0} - a\right), \frac{\sqrt{\color{blue}{\left(\sqrt[3]{a + t} \cdot \sqrt[3]{a + t}\right) \cdot \sqrt[3]{a + t}}}}{\frac{1}{\sqrt[3]{z} \cdot \sqrt[3]{z}} \cdot \frac{t}{\sqrt[3]{z}}}\right)}, x\right)}\]
  8. Applied sqrt-prod1.8

    \[\leadsto \frac{x}{\mathsf{fma}\left(y, e^{2.0 \cdot \mathsf{fma}\left(c - b, \frac{5.0}{6.0} - \left(\frac{\frac{2.0}{t}}{3.0} - a\right), \frac{\color{blue}{\sqrt{\sqrt[3]{a + t} \cdot \sqrt[3]{a + t}} \cdot \sqrt{\sqrt[3]{a + t}}}}{\frac{1}{\sqrt[3]{z} \cdot \sqrt[3]{z}} \cdot \frac{t}{\sqrt[3]{z}}}\right)}, x\right)}\]
  9. Applied times-frac1.5

    \[\leadsto \frac{x}{\mathsf{fma}\left(y, e^{2.0 \cdot \mathsf{fma}\left(c - b, \frac{5.0}{6.0} - \left(\frac{\frac{2.0}{t}}{3.0} - a\right), \color{blue}{\frac{\sqrt{\sqrt[3]{a + t} \cdot \sqrt[3]{a + t}}}{\frac{1}{\sqrt[3]{z} \cdot \sqrt[3]{z}}} \cdot \frac{\sqrt{\sqrt[3]{a + t}}}{\frac{t}{\sqrt[3]{z}}}}\right)}, x\right)}\]
  10. Final simplification1.5

    \[\leadsto \frac{x}{\mathsf{fma}\left(y, e^{2.0 \cdot \mathsf{fma}\left(c - b, \frac{5.0}{6.0} - \left(\frac{\frac{2.0}{t}}{3.0} - a\right), \frac{\sqrt{\sqrt[3]{a + t}}}{\frac{t}{\sqrt[3]{z}}} \cdot \frac{\sqrt{\sqrt[3]{a + t} \cdot \sqrt[3]{a + t}}}{\frac{1}{\sqrt[3]{z} \cdot \sqrt[3]{z}}}\right)}, x\right)}\]

Reproduce

herbie shell --seed 2019162 +o rules:numerics
(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)))))))))))