\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(a - \frac{\frac{2}{t}}{3}\right), \sqrt{t + a} \cdot \frac{z}{t}\right)}, x\right)}double f(double x, double y, double z, double t, double a, double b, double c) {
double r56018 = x;
double r56019 = y;
double r56020 = 2.0;
double r56021 = z;
double r56022 = t;
double r56023 = a;
double r56024 = r56022 + r56023;
double r56025 = sqrt(r56024);
double r56026 = r56021 * r56025;
double r56027 = r56026 / r56022;
double r56028 = b;
double r56029 = c;
double r56030 = r56028 - r56029;
double r56031 = 5.0;
double r56032 = 6.0;
double r56033 = r56031 / r56032;
double r56034 = r56023 + r56033;
double r56035 = 3.0;
double r56036 = r56022 * r56035;
double r56037 = r56020 / r56036;
double r56038 = r56034 - r56037;
double r56039 = r56030 * r56038;
double r56040 = r56027 - r56039;
double r56041 = r56020 * r56040;
double r56042 = exp(r56041);
double r56043 = r56019 * r56042;
double r56044 = r56018 + r56043;
double r56045 = r56018 / r56044;
return r56045;
}
double f(double x, double y, double z, double t, double a, double b, double c) {
double r56046 = x;
double r56047 = y;
double r56048 = 2.0;
double r56049 = c;
double r56050 = b;
double r56051 = r56049 - r56050;
double r56052 = 5.0;
double r56053 = 6.0;
double r56054 = r56052 / r56053;
double r56055 = a;
double r56056 = t;
double r56057 = r56048 / r56056;
double r56058 = 3.0;
double r56059 = r56057 / r56058;
double r56060 = r56055 - r56059;
double r56061 = r56054 + r56060;
double r56062 = r56056 + r56055;
double r56063 = sqrt(r56062);
double r56064 = z;
double r56065 = r56064 / r56056;
double r56066 = r56063 * r56065;
double r56067 = fma(r56051, r56061, r56066);
double r56068 = r56048 * r56067;
double r56069 = exp(r56068);
double r56070 = fma(r56047, r56069, r56046);
double r56071 = r56046 / r56070;
return r56071;
}



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
Initial program 3.9
Simplified1.6
Final simplification1.6
herbie shell --seed 2019174 +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)))))))))))