\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}{x + y \cdot e^{2 \cdot \mathsf{fma}\left(\frac{z}{\sqrt[3]{t} \cdot \sqrt[3]{t}}, \frac{\sqrt{t + a}}{\sqrt[3]{t}}, -\left(b - c\right) \cdot \left(\left(a + \frac{5}{6}\right) - \frac{2}{t \cdot 3}\right)\right)}}double f(double x, double y, double z, double t, double a, double b, double c) {
double r100062 = x;
double r100063 = y;
double r100064 = 2.0;
double r100065 = z;
double r100066 = t;
double r100067 = a;
double r100068 = r100066 + r100067;
double r100069 = sqrt(r100068);
double r100070 = r100065 * r100069;
double r100071 = r100070 / r100066;
double r100072 = b;
double r100073 = c;
double r100074 = r100072 - r100073;
double r100075 = 5.0;
double r100076 = 6.0;
double r100077 = r100075 / r100076;
double r100078 = r100067 + r100077;
double r100079 = 3.0;
double r100080 = r100066 * r100079;
double r100081 = r100064 / r100080;
double r100082 = r100078 - r100081;
double r100083 = r100074 * r100082;
double r100084 = r100071 - r100083;
double r100085 = r100064 * r100084;
double r100086 = exp(r100085);
double r100087 = r100063 * r100086;
double r100088 = r100062 + r100087;
double r100089 = r100062 / r100088;
return r100089;
}
double f(double x, double y, double z, double t, double a, double b, double c) {
double r100090 = x;
double r100091 = y;
double r100092 = 2.0;
double r100093 = z;
double r100094 = t;
double r100095 = cbrt(r100094);
double r100096 = r100095 * r100095;
double r100097 = r100093 / r100096;
double r100098 = a;
double r100099 = r100094 + r100098;
double r100100 = sqrt(r100099);
double r100101 = r100100 / r100095;
double r100102 = b;
double r100103 = c;
double r100104 = r100102 - r100103;
double r100105 = 5.0;
double r100106 = 6.0;
double r100107 = r100105 / r100106;
double r100108 = r100098 + r100107;
double r100109 = 3.0;
double r100110 = r100094 * r100109;
double r100111 = r100092 / r100110;
double r100112 = r100108 - r100111;
double r100113 = r100104 * r100112;
double r100114 = -r100113;
double r100115 = fma(r100097, r100101, r100114);
double r100116 = r100092 * r100115;
double r100117 = exp(r100116);
double r100118 = r100091 * r100117;
double r100119 = r100090 + r100118;
double r100120 = r100090 / r100119;
return r100120;
}



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.8
rmApplied add-cube-cbrt3.8
Applied times-frac2.6
Applied fma-neg1.8
Final simplification1.8
herbie shell --seed 2020060 +o rules:numerics
(FPCore (x y z t a b c)
:name "Numeric.SpecFunctions:invIncompleteBetaWorker from math-functions-0.1.5.2"
:precision binary64
(/ x (+ x (* y (exp (* 2 (- (/ (* z (sqrt (+ t a))) t) (* (- b c) (- (+ a (/ 5 6)) (/ 2 (* t 3)))))))))))