Average Error: 3.9 → 2.3
Time: 42.6s
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, \left(e^{2.0 \cdot \mathsf{fma}\left(\left(\frac{\sqrt{a + t}}{t}\right), z, \left(\left(\frac{5.0}{6.0} - \left(\frac{\frac{2.0}{t}}{3.0} - a\right)\right) \cdot \left(c - b\right)\right)\right)}\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, \left(e^{2.0 \cdot \mathsf{fma}\left(\left(\frac{\sqrt{a + t}}{t}\right), z, \left(\left(\frac{5.0}{6.0} - \left(\frac{\frac{2.0}{t}}{3.0} - a\right)\right) \cdot \left(c - b\right)\right)\right)}\right), x\right)}
double f(double x, double y, double z, double t, double a, double b, double c) {
        double r2283848 = x;
        double r2283849 = y;
        double r2283850 = 2.0;
        double r2283851 = z;
        double r2283852 = t;
        double r2283853 = a;
        double r2283854 = r2283852 + r2283853;
        double r2283855 = sqrt(r2283854);
        double r2283856 = r2283851 * r2283855;
        double r2283857 = r2283856 / r2283852;
        double r2283858 = b;
        double r2283859 = c;
        double r2283860 = r2283858 - r2283859;
        double r2283861 = 5.0;
        double r2283862 = 6.0;
        double r2283863 = r2283861 / r2283862;
        double r2283864 = r2283853 + r2283863;
        double r2283865 = 3.0;
        double r2283866 = r2283852 * r2283865;
        double r2283867 = r2283850 / r2283866;
        double r2283868 = r2283864 - r2283867;
        double r2283869 = r2283860 * r2283868;
        double r2283870 = r2283857 - r2283869;
        double r2283871 = r2283850 * r2283870;
        double r2283872 = exp(r2283871);
        double r2283873 = r2283849 * r2283872;
        double r2283874 = r2283848 + r2283873;
        double r2283875 = r2283848 / r2283874;
        return r2283875;
}

double f(double x, double y, double z, double t, double a, double b, double c) {
        double r2283876 = x;
        double r2283877 = y;
        double r2283878 = 2.0;
        double r2283879 = a;
        double r2283880 = t;
        double r2283881 = r2283879 + r2283880;
        double r2283882 = sqrt(r2283881);
        double r2283883 = r2283882 / r2283880;
        double r2283884 = z;
        double r2283885 = 5.0;
        double r2283886 = 6.0;
        double r2283887 = r2283885 / r2283886;
        double r2283888 = r2283878 / r2283880;
        double r2283889 = 3.0;
        double r2283890 = r2283888 / r2283889;
        double r2283891 = r2283890 - r2283879;
        double r2283892 = r2283887 - r2283891;
        double r2283893 = c;
        double r2283894 = b;
        double r2283895 = r2283893 - r2283894;
        double r2283896 = r2283892 * r2283895;
        double r2283897 = fma(r2283883, r2283884, r2283896);
        double r2283898 = r2283878 * r2283897;
        double r2283899 = exp(r2283898);
        double r2283900 = fma(r2283877, r2283899, r2283876);
        double r2283901 = r2283876 / r2283900;
        return r2283901;
}

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

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

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

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

Reproduce

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