\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} \cdot \left(\sqrt[3]{z} \cdot \sqrt[3]{z}\right)}{\frac{t}{\sqrt[3]{z}}}\right)}, x\right)}double f(double x, double y, double z, double t, double a, double b, double c) {
double r2465853 = x;
double r2465854 = y;
double r2465855 = 2.0;
double r2465856 = z;
double r2465857 = t;
double r2465858 = a;
double r2465859 = r2465857 + r2465858;
double r2465860 = sqrt(r2465859);
double r2465861 = r2465856 * r2465860;
double r2465862 = r2465861 / r2465857;
double r2465863 = b;
double r2465864 = c;
double r2465865 = r2465863 - r2465864;
double r2465866 = 5.0;
double r2465867 = 6.0;
double r2465868 = r2465866 / r2465867;
double r2465869 = r2465858 + r2465868;
double r2465870 = 3.0;
double r2465871 = r2465857 * r2465870;
double r2465872 = r2465855 / r2465871;
double r2465873 = r2465869 - r2465872;
double r2465874 = r2465865 * r2465873;
double r2465875 = r2465862 - r2465874;
double r2465876 = r2465855 * r2465875;
double r2465877 = exp(r2465876);
double r2465878 = r2465854 * r2465877;
double r2465879 = r2465853 + r2465878;
double r2465880 = r2465853 / r2465879;
return r2465880;
}
double f(double x, double y, double z, double t, double a, double b, double c) {
double r2465881 = x;
double r2465882 = y;
double r2465883 = 2.0;
double r2465884 = c;
double r2465885 = b;
double r2465886 = r2465884 - r2465885;
double r2465887 = 5.0;
double r2465888 = 6.0;
double r2465889 = r2465887 / r2465888;
double r2465890 = t;
double r2465891 = r2465883 / r2465890;
double r2465892 = 3.0;
double r2465893 = r2465891 / r2465892;
double r2465894 = a;
double r2465895 = r2465893 - r2465894;
double r2465896 = r2465889 - r2465895;
double r2465897 = r2465894 + r2465890;
double r2465898 = sqrt(r2465897);
double r2465899 = z;
double r2465900 = cbrt(r2465899);
double r2465901 = r2465900 * r2465900;
double r2465902 = r2465898 * r2465901;
double r2465903 = r2465890 / r2465900;
double r2465904 = r2465902 / r2465903;
double r2465905 = fma(r2465886, r2465896, r2465904);
double r2465906 = r2465883 * r2465905;
double r2465907 = exp(r2465906);
double r2465908 = fma(r2465882, r2465907, r2465881);
double r2465909 = r2465881 / r2465908;
return r2465909;
}



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
rmApplied add-cube-cbrt1.6
Applied *-un-lft-identity1.6
Applied times-frac1.6
Applied associate-/r*1.6
Simplified1.6
Final simplification1.6
herbie shell --seed 2019171 +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)))))))))))