\frac{\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.764470499998\right) \cdot y + 230661.510616000014\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i}\left(\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.764470499998\right) \cdot y + 230661.510616000014\right) \cdot y + t\right) \cdot \frac{1}{\mathsf{fma}\left(\mathsf{fma}\left(\mathsf{fma}\left(y + a, y, b\right), y, c\right), y, i\right) \cdot 1}double f(double x, double y, double z, double t, double a, double b, double c, double i) {
double r106823 = x;
double r106824 = y;
double r106825 = r106823 * r106824;
double r106826 = z;
double r106827 = r106825 + r106826;
double r106828 = r106827 * r106824;
double r106829 = 27464.7644705;
double r106830 = r106828 + r106829;
double r106831 = r106830 * r106824;
double r106832 = 230661.510616;
double r106833 = r106831 + r106832;
double r106834 = r106833 * r106824;
double r106835 = t;
double r106836 = r106834 + r106835;
double r106837 = a;
double r106838 = r106824 + r106837;
double r106839 = r106838 * r106824;
double r106840 = b;
double r106841 = r106839 + r106840;
double r106842 = r106841 * r106824;
double r106843 = c;
double r106844 = r106842 + r106843;
double r106845 = r106844 * r106824;
double r106846 = i;
double r106847 = r106845 + r106846;
double r106848 = r106836 / r106847;
return r106848;
}
double f(double x, double y, double z, double t, double a, double b, double c, double i) {
double r106849 = x;
double r106850 = y;
double r106851 = r106849 * r106850;
double r106852 = z;
double r106853 = r106851 + r106852;
double r106854 = r106853 * r106850;
double r106855 = 27464.7644705;
double r106856 = r106854 + r106855;
double r106857 = r106856 * r106850;
double r106858 = 230661.510616;
double r106859 = r106857 + r106858;
double r106860 = r106859 * r106850;
double r106861 = t;
double r106862 = r106860 + r106861;
double r106863 = 1.0;
double r106864 = a;
double r106865 = r106850 + r106864;
double r106866 = b;
double r106867 = fma(r106865, r106850, r106866);
double r106868 = c;
double r106869 = fma(r106867, r106850, r106868);
double r106870 = i;
double r106871 = fma(r106869, r106850, r106870);
double r106872 = r106871 * r106863;
double r106873 = r106863 / r106872;
double r106874 = r106862 * r106873;
return r106874;
}



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 29.3
rmApplied div-inv29.4
Simplified29.4
Final simplification29.4
herbie shell --seed 2020024 +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)))