\frac{\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.7644704999984242022037506103515625\right) \cdot y + 230661.5106160000141244381666183471679688\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i}\frac{\mathsf{fma}\left(\mathsf{fma}\left(\left(\sqrt[3]{\mathsf{fma}\left(\mathsf{fma}\left(x, y, z\right), y, 27464.7644704999984242022037506103515625\right)} \cdot \left(\left(\sqrt[3]{\sqrt[3]{\mathsf{fma}\left(\mathsf{fma}\left(x, y, z\right), y, 27464.7644704999984242022037506103515625\right)}} \cdot \sqrt[3]{\sqrt[3]{\mathsf{fma}\left(\mathsf{fma}\left(x, y, z\right), y, 27464.7644704999984242022037506103515625\right)}}\right) \cdot \sqrt[3]{\sqrt[3]{\mathsf{fma}\left(\mathsf{fma}\left(x, y, z\right), y, 27464.7644704999984242022037506103515625\right)}}\right)\right) \cdot \sqrt[3]{\mathsf{fma}\left(\mathsf{fma}\left(x, y, z\right), y, 27464.7644704999984242022037506103515625\right)}, y, 230661.5106160000141244381666183471679688\right), y, t\right)}{\mathsf{fma}\left(\mathsf{fma}\left(\mathsf{fma}\left(y + a, y, b\right), y, c\right), y, i\right)}double f(double x, double y, double z, double t, double a, double b, double c, double i) {
double r63851 = x;
double r63852 = y;
double r63853 = r63851 * r63852;
double r63854 = z;
double r63855 = r63853 + r63854;
double r63856 = r63855 * r63852;
double r63857 = 27464.7644705;
double r63858 = r63856 + r63857;
double r63859 = r63858 * r63852;
double r63860 = 230661.510616;
double r63861 = r63859 + r63860;
double r63862 = r63861 * r63852;
double r63863 = t;
double r63864 = r63862 + r63863;
double r63865 = a;
double r63866 = r63852 + r63865;
double r63867 = r63866 * r63852;
double r63868 = b;
double r63869 = r63867 + r63868;
double r63870 = r63869 * r63852;
double r63871 = c;
double r63872 = r63870 + r63871;
double r63873 = r63872 * r63852;
double r63874 = i;
double r63875 = r63873 + r63874;
double r63876 = r63864 / r63875;
return r63876;
}
double f(double x, double y, double z, double t, double a, double b, double c, double i) {
double r63877 = x;
double r63878 = y;
double r63879 = z;
double r63880 = fma(r63877, r63878, r63879);
double r63881 = 27464.7644705;
double r63882 = fma(r63880, r63878, r63881);
double r63883 = cbrt(r63882);
double r63884 = cbrt(r63883);
double r63885 = r63884 * r63884;
double r63886 = r63885 * r63884;
double r63887 = r63883 * r63886;
double r63888 = r63887 * r63883;
double r63889 = 230661.510616;
double r63890 = fma(r63888, r63878, r63889);
double r63891 = t;
double r63892 = fma(r63890, r63878, r63891);
double r63893 = a;
double r63894 = r63878 + r63893;
double r63895 = b;
double r63896 = fma(r63894, r63878, r63895);
double r63897 = c;
double r63898 = fma(r63896, r63878, r63897);
double r63899 = i;
double r63900 = fma(r63898, r63878, r63899);
double r63901 = r63892 / r63900;
return r63901;
}



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



Bits error versus i
Initial program 28.7
Simplified28.7
rmApplied add-cube-cbrt28.8
rmApplied add-cube-cbrt28.8
Final simplification28.8
herbie shell --seed 2019323 +o rules:numerics
(FPCore (x y z t a b c i)
:name "Numeric.SpecFunctions:logGamma from math-functions-0.1.5.2"
:precision binary64
(/ (+ (* (+ (* (+ (* (+ (* x y) z) y) 27464.7644705) y) 230661.510616) y) t) (+ (* (+ (* (+ (* (+ y a) y) b) y) c) y) i)))