Average Error: 3.9 → 1.9
Time: 24.6s
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}{\mathsf{fma}\left(y, e^{2 \cdot \mathsf{fma}\left(c - b, \frac{5}{6} - \left(\frac{\frac{2}{t}}{3} - a\right), \frac{\sqrt{a + t}}{\frac{t}{z}}\right)}, x\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}{\mathsf{fma}\left(y, e^{2 \cdot \mathsf{fma}\left(c - b, \frac{5}{6} - \left(\frac{\frac{2}{t}}{3} - a\right), \frac{\sqrt{a + t}}{\frac{t}{z}}\right)}, x\right)}
double f(double x, double y, double z, double t, double a, double b, double c) {
        double r2419091 = x;
        double r2419092 = y;
        double r2419093 = 2.0;
        double r2419094 = z;
        double r2419095 = t;
        double r2419096 = a;
        double r2419097 = r2419095 + r2419096;
        double r2419098 = sqrt(r2419097);
        double r2419099 = r2419094 * r2419098;
        double r2419100 = r2419099 / r2419095;
        double r2419101 = b;
        double r2419102 = c;
        double r2419103 = r2419101 - r2419102;
        double r2419104 = 5.0;
        double r2419105 = 6.0;
        double r2419106 = r2419104 / r2419105;
        double r2419107 = r2419096 + r2419106;
        double r2419108 = 3.0;
        double r2419109 = r2419095 * r2419108;
        double r2419110 = r2419093 / r2419109;
        double r2419111 = r2419107 - r2419110;
        double r2419112 = r2419103 * r2419111;
        double r2419113 = r2419100 - r2419112;
        double r2419114 = r2419093 * r2419113;
        double r2419115 = exp(r2419114);
        double r2419116 = r2419092 * r2419115;
        double r2419117 = r2419091 + r2419116;
        double r2419118 = r2419091 / r2419117;
        return r2419118;
}

double f(double x, double y, double z, double t, double a, double b, double c) {
        double r2419119 = x;
        double r2419120 = y;
        double r2419121 = 2.0;
        double r2419122 = c;
        double r2419123 = b;
        double r2419124 = r2419122 - r2419123;
        double r2419125 = 5.0;
        double r2419126 = 6.0;
        double r2419127 = r2419125 / r2419126;
        double r2419128 = t;
        double r2419129 = r2419121 / r2419128;
        double r2419130 = 3.0;
        double r2419131 = r2419129 / r2419130;
        double r2419132 = a;
        double r2419133 = r2419131 - r2419132;
        double r2419134 = r2419127 - r2419133;
        double r2419135 = r2419132 + r2419128;
        double r2419136 = sqrt(r2419135);
        double r2419137 = z;
        double r2419138 = r2419128 / r2419137;
        double r2419139 = r2419136 / r2419138;
        double r2419140 = fma(r2419124, r2419134, r2419139);
        double r2419141 = r2419121 * r2419140;
        double r2419142 = exp(r2419141);
        double r2419143 = fma(r2419120, r2419142, r2419119);
        double r2419144 = r2419119 / r2419143;
        return r2419144;
}

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

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

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

Reproduce

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