\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, \frac{5.0}{6.0} - \left(\frac{\frac{2.0}{t}}{3.0} - a\right), \frac{z}{\sqrt[3]{t} \cdot \sqrt[3]{t}} \cdot \frac{\sqrt{a + t}}{\sqrt[3]{t}}\right)}, x\right)}double f(double x, double y, double z, double t, double a, double b, double c) {
double r1986904 = x;
double r1986905 = y;
double r1986906 = 2.0;
double r1986907 = z;
double r1986908 = t;
double r1986909 = a;
double r1986910 = r1986908 + r1986909;
double r1986911 = sqrt(r1986910);
double r1986912 = r1986907 * r1986911;
double r1986913 = r1986912 / r1986908;
double r1986914 = b;
double r1986915 = c;
double r1986916 = r1986914 - r1986915;
double r1986917 = 5.0;
double r1986918 = 6.0;
double r1986919 = r1986917 / r1986918;
double r1986920 = r1986909 + r1986919;
double r1986921 = 3.0;
double r1986922 = r1986908 * r1986921;
double r1986923 = r1986906 / r1986922;
double r1986924 = r1986920 - r1986923;
double r1986925 = r1986916 * r1986924;
double r1986926 = r1986913 - r1986925;
double r1986927 = r1986906 * r1986926;
double r1986928 = exp(r1986927);
double r1986929 = r1986905 * r1986928;
double r1986930 = r1986904 + r1986929;
double r1986931 = r1986904 / r1986930;
return r1986931;
}
double f(double x, double y, double z, double t, double a, double b, double c) {
double r1986932 = x;
double r1986933 = y;
double r1986934 = 2.0;
double r1986935 = c;
double r1986936 = b;
double r1986937 = r1986935 - r1986936;
double r1986938 = 5.0;
double r1986939 = 6.0;
double r1986940 = r1986938 / r1986939;
double r1986941 = t;
double r1986942 = r1986934 / r1986941;
double r1986943 = 3.0;
double r1986944 = r1986942 / r1986943;
double r1986945 = a;
double r1986946 = r1986944 - r1986945;
double r1986947 = r1986940 - r1986946;
double r1986948 = z;
double r1986949 = cbrt(r1986941);
double r1986950 = r1986949 * r1986949;
double r1986951 = r1986948 / r1986950;
double r1986952 = r1986945 + r1986941;
double r1986953 = sqrt(r1986952);
double r1986954 = r1986953 / r1986949;
double r1986955 = r1986951 * r1986954;
double r1986956 = fma(r1986937, r1986947, r1986955);
double r1986957 = r1986934 * r1986956;
double r1986958 = exp(r1986957);
double r1986959 = fma(r1986933, r1986958, r1986932);
double r1986960 = r1986932 / r1986959;
return r1986960;
}



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.1
rmApplied add-cube-cbrt2.1
Applied *-un-lft-identity2.1
Applied sqrt-prod2.1
Applied times-frac2.1
Applied associate-*r*1.4
Simplified1.4
Final simplification1.4
herbie shell --seed 2019146 +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)))))))))))