\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(\left(a + \frac{5}{6}\right) - \frac{2}{t \cdot 3}, c - b, \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 r3024869 = x;
double r3024870 = y;
double r3024871 = 2.0;
double r3024872 = z;
double r3024873 = t;
double r3024874 = a;
double r3024875 = r3024873 + r3024874;
double r3024876 = sqrt(r3024875);
double r3024877 = r3024872 * r3024876;
double r3024878 = r3024877 / r3024873;
double r3024879 = b;
double r3024880 = c;
double r3024881 = r3024879 - r3024880;
double r3024882 = 5.0;
double r3024883 = 6.0;
double r3024884 = r3024882 / r3024883;
double r3024885 = r3024874 + r3024884;
double r3024886 = 3.0;
double r3024887 = r3024873 * r3024886;
double r3024888 = r3024871 / r3024887;
double r3024889 = r3024885 - r3024888;
double r3024890 = r3024881 * r3024889;
double r3024891 = r3024878 - r3024890;
double r3024892 = r3024871 * r3024891;
double r3024893 = exp(r3024892);
double r3024894 = r3024870 * r3024893;
double r3024895 = r3024869 + r3024894;
double r3024896 = r3024869 / r3024895;
return r3024896;
}
double f(double x, double y, double z, double t, double a, double b, double c) {
double r3024897 = x;
double r3024898 = y;
double r3024899 = 2.0;
double r3024900 = a;
double r3024901 = 5.0;
double r3024902 = 6.0;
double r3024903 = r3024901 / r3024902;
double r3024904 = r3024900 + r3024903;
double r3024905 = t;
double r3024906 = 3.0;
double r3024907 = r3024905 * r3024906;
double r3024908 = r3024899 / r3024907;
double r3024909 = r3024904 - r3024908;
double r3024910 = c;
double r3024911 = b;
double r3024912 = r3024910 - r3024911;
double r3024913 = z;
double r3024914 = cbrt(r3024905);
double r3024915 = r3024914 * r3024914;
double r3024916 = r3024913 / r3024915;
double r3024917 = r3024905 + r3024900;
double r3024918 = sqrt(r3024917);
double r3024919 = r3024918 / r3024914;
double r3024920 = r3024916 * r3024919;
double r3024921 = fma(r3024909, r3024912, r3024920);
double r3024922 = r3024899 * r3024921;
double r3024923 = exp(r3024922);
double r3024924 = fma(r3024898, r3024923, r3024897);
double r3024925 = r3024897 / r3024924;
return r3024925;
}



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