\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, \left(\frac{5.0}{6.0} + a\right) - \frac{2.0}{t \cdot 3.0}, \frac{z}{\sqrt[3]{t} \cdot \sqrt[3]{t}} \cdot \frac{\sqrt{t + a}}{\sqrt[3]{t}}\right)}, x\right)}double f(double x, double y, double z, double t, double a, double b, double c) {
double r952014 = x;
double r952015 = y;
double r952016 = 2.0;
double r952017 = z;
double r952018 = t;
double r952019 = a;
double r952020 = r952018 + r952019;
double r952021 = sqrt(r952020);
double r952022 = r952017 * r952021;
double r952023 = r952022 / r952018;
double r952024 = b;
double r952025 = c;
double r952026 = r952024 - r952025;
double r952027 = 5.0;
double r952028 = 6.0;
double r952029 = r952027 / r952028;
double r952030 = r952019 + r952029;
double r952031 = 3.0;
double r952032 = r952018 * r952031;
double r952033 = r952016 / r952032;
double r952034 = r952030 - r952033;
double r952035 = r952026 * r952034;
double r952036 = r952023 - r952035;
double r952037 = r952016 * r952036;
double r952038 = exp(r952037);
double r952039 = r952015 * r952038;
double r952040 = r952014 + r952039;
double r952041 = r952014 / r952040;
return r952041;
}
double f(double x, double y, double z, double t, double a, double b, double c) {
double r952042 = x;
double r952043 = y;
double r952044 = 2.0;
double r952045 = c;
double r952046 = b;
double r952047 = r952045 - r952046;
double r952048 = 5.0;
double r952049 = 6.0;
double r952050 = r952048 / r952049;
double r952051 = a;
double r952052 = r952050 + r952051;
double r952053 = t;
double r952054 = 3.0;
double r952055 = r952053 * r952054;
double r952056 = r952044 / r952055;
double r952057 = r952052 - r952056;
double r952058 = z;
double r952059 = cbrt(r952053);
double r952060 = r952059 * r952059;
double r952061 = r952058 / r952060;
double r952062 = r952053 + r952051;
double r952063 = sqrt(r952062);
double r952064 = r952063 / r952059;
double r952065 = r952061 * r952064;
double r952066 = fma(r952047, r952057, r952065);
double r952067 = r952044 * r952066;
double r952068 = exp(r952067);
double r952069 = fma(r952043, r952068, r952042);
double r952070 = r952042 / r952069;
return r952070;
}



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.7
Simplified2.6
rmApplied add-cube-cbrt2.6
Applied times-frac1.4
Final simplification1.4
herbie shell --seed 2019154 +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)))))))))))