Average Error: 3.8 → 1.4
Time: 7.4m
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}{(y \cdot \left(e^{2.0 \cdot (\left(\frac{\sqrt[3]{z}}{\sqrt[3]{t}} \cdot \frac{\sqrt[3]{z}}{\sqrt[3]{t}}\right) \cdot \left(\frac{\sqrt{t + a}}{\frac{\sqrt[3]{t}}{\sqrt[3]{z}}}\right) + \left(\left(-\left(b - c\right)\right) \cdot \left(\left(a - \frac{2.0}{3.0 \cdot t}\right) + \frac{5.0}{6.0}\right)\right))_*}\right) + x)_*}\]
\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}{(y \cdot \left(e^{2.0 \cdot (\left(\frac{\sqrt[3]{z}}{\sqrt[3]{t}} \cdot \frac{\sqrt[3]{z}}{\sqrt[3]{t}}\right) \cdot \left(\frac{\sqrt{t + a}}{\frac{\sqrt[3]{t}}{\sqrt[3]{z}}}\right) + \left(\left(-\left(b - c\right)\right) \cdot \left(\left(a - \frac{2.0}{3.0 \cdot t}\right) + \frac{5.0}{6.0}\right)\right))_*}\right) + x)_*}
double f(double x, double y, double z, double t, double a, double b, double c) {
        double r38734012 = x;
        double r38734013 = y;
        double r38734014 = 2.0;
        double r38734015 = z;
        double r38734016 = t;
        double r38734017 = a;
        double r38734018 = r38734016 + r38734017;
        double r38734019 = sqrt(r38734018);
        double r38734020 = r38734015 * r38734019;
        double r38734021 = r38734020 / r38734016;
        double r38734022 = b;
        double r38734023 = c;
        double r38734024 = r38734022 - r38734023;
        double r38734025 = 5.0;
        double r38734026 = 6.0;
        double r38734027 = r38734025 / r38734026;
        double r38734028 = r38734017 + r38734027;
        double r38734029 = 3.0;
        double r38734030 = r38734016 * r38734029;
        double r38734031 = r38734014 / r38734030;
        double r38734032 = r38734028 - r38734031;
        double r38734033 = r38734024 * r38734032;
        double r38734034 = r38734021 - r38734033;
        double r38734035 = r38734014 * r38734034;
        double r38734036 = exp(r38734035);
        double r38734037 = r38734013 * r38734036;
        double r38734038 = r38734012 + r38734037;
        double r38734039 = r38734012 / r38734038;
        return r38734039;
}

double f(double x, double y, double z, double t, double a, double b, double c) {
        double r38734040 = x;
        double r38734041 = y;
        double r38734042 = 2.0;
        double r38734043 = z;
        double r38734044 = cbrt(r38734043);
        double r38734045 = t;
        double r38734046 = cbrt(r38734045);
        double r38734047 = r38734044 / r38734046;
        double r38734048 = r38734047 * r38734047;
        double r38734049 = a;
        double r38734050 = r38734045 + r38734049;
        double r38734051 = sqrt(r38734050);
        double r38734052 = r38734046 / r38734044;
        double r38734053 = r38734051 / r38734052;
        double r38734054 = b;
        double r38734055 = c;
        double r38734056 = r38734054 - r38734055;
        double r38734057 = -r38734056;
        double r38734058 = 3.0;
        double r38734059 = r38734058 * r38734045;
        double r38734060 = r38734042 / r38734059;
        double r38734061 = r38734049 - r38734060;
        double r38734062 = 5.0;
        double r38734063 = 6.0;
        double r38734064 = r38734062 / r38734063;
        double r38734065 = r38734061 + r38734064;
        double r38734066 = r38734057 * r38734065;
        double r38734067 = fma(r38734048, r38734053, r38734066);
        double r38734068 = r38734042 * r38734067;
        double r38734069 = exp(r38734068);
        double r38734070 = fma(r38734041, r38734069, r38734040);
        double r38734071 = r38734040 / r38734070;
        return r38734071;
}

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.8

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

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

    \[\leadsto \frac{x}{(y \cdot \left(e^{2.0 \cdot \left(\frac{\sqrt{a + t}}{\frac{t}{\color{blue}{\left(\sqrt[3]{z} \cdot \sqrt[3]{z}\right) \cdot \sqrt[3]{z}}}} - \left(\left(a - \frac{2.0}{t \cdot 3.0}\right) + \frac{5.0}{6.0}\right) \cdot \left(b - c\right)\right)}\right) + x)_*}\]
  5. Applied add-cube-cbrt2.8

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

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

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

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

    \[\leadsto \frac{x}{(y \cdot \left(e^{2.0 \cdot \left(\color{blue}{\frac{\sqrt{1}}{\frac{\sqrt[3]{t} \cdot \sqrt[3]{t}}{\sqrt[3]{z} \cdot \sqrt[3]{z}}} \cdot \frac{\sqrt{a + t}}{\frac{\sqrt[3]{t}}{\sqrt[3]{z}}}} - \left(\left(a - \frac{2.0}{t \cdot 3.0}\right) + \frac{5.0}{6.0}\right) \cdot \left(b - c\right)\right)}\right) + x)_*}\]
  10. Applied fma-neg1.4

    \[\leadsto \frac{x}{(y \cdot \left(e^{2.0 \cdot \color{blue}{(\left(\frac{\sqrt{1}}{\frac{\sqrt[3]{t} \cdot \sqrt[3]{t}}{\sqrt[3]{z} \cdot \sqrt[3]{z}}}\right) \cdot \left(\frac{\sqrt{a + t}}{\frac{\sqrt[3]{t}}{\sqrt[3]{z}}}\right) + \left(-\left(\left(a - \frac{2.0}{t \cdot 3.0}\right) + \frac{5.0}{6.0}\right) \cdot \left(b - c\right)\right))_*}}\right) + x)_*}\]
  11. Simplified1.4

    \[\leadsto \frac{x}{(y \cdot \left(e^{2.0 \cdot (\color{blue}{\left(\frac{\sqrt[3]{z}}{\sqrt[3]{t}} \cdot \frac{\sqrt[3]{z}}{\sqrt[3]{t}}\right)} \cdot \left(\frac{\sqrt{a + t}}{\frac{\sqrt[3]{t}}{\sqrt[3]{z}}}\right) + \left(-\left(\left(a - \frac{2.0}{t \cdot 3.0}\right) + \frac{5.0}{6.0}\right) \cdot \left(b - c\right)\right))_*}\right) + x)_*}\]
  12. Final simplification1.4

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

Reproduce

herbie shell --seed 2019112 +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)))))))))))