\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{\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}double f(double x, double y, double z, double t, double a, double b, double c, double i) {
double r61824 = x;
double r61825 = y;
double r61826 = r61824 * r61825;
double r61827 = z;
double r61828 = r61826 + r61827;
double r61829 = r61828 * r61825;
double r61830 = 27464.7644705;
double r61831 = r61829 + r61830;
double r61832 = r61831 * r61825;
double r61833 = 230661.510616;
double r61834 = r61832 + r61833;
double r61835 = r61834 * r61825;
double r61836 = t;
double r61837 = r61835 + r61836;
double r61838 = a;
double r61839 = r61825 + r61838;
double r61840 = r61839 * r61825;
double r61841 = b;
double r61842 = r61840 + r61841;
double r61843 = r61842 * r61825;
double r61844 = c;
double r61845 = r61843 + r61844;
double r61846 = r61845 * r61825;
double r61847 = i;
double r61848 = r61846 + r61847;
double r61849 = r61837 / r61848;
return r61849;
}
double f(double x, double y, double z, double t, double a, double b, double c, double i) {
double r61850 = x;
double r61851 = y;
double r61852 = r61850 * r61851;
double r61853 = z;
double r61854 = r61852 + r61853;
double r61855 = r61854 * r61851;
double r61856 = 27464.7644705;
double r61857 = r61855 + r61856;
double r61858 = r61857 * r61851;
double r61859 = 230661.510616;
double r61860 = r61858 + r61859;
double r61861 = r61860 * r61851;
double r61862 = t;
double r61863 = r61861 + r61862;
double r61864 = a;
double r61865 = r61851 + r61864;
double r61866 = r61865 * r61851;
double r61867 = b;
double r61868 = r61866 + r61867;
double r61869 = r61868 * r61851;
double r61870 = c;
double r61871 = r61869 + r61870;
double r61872 = r61871 * r61851;
double r61873 = i;
double r61874 = r61872 + r61873;
double r61875 = r61863 / r61874;
return r61875;
}



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
Results
Initial program 29.6
Final simplification29.6
herbie shell --seed 2019304
(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.764470499998) y) 230661.510616000014) y) t) (+ (* (+ (* (+ (* (+ y a) y) b) y) c) y) i)))