\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 r59807 = x;
double r59808 = y;
double r59809 = r59807 * r59808;
double r59810 = z;
double r59811 = r59809 + r59810;
double r59812 = r59811 * r59808;
double r59813 = 27464.7644705;
double r59814 = r59812 + r59813;
double r59815 = r59814 * r59808;
double r59816 = 230661.510616;
double r59817 = r59815 + r59816;
double r59818 = r59817 * r59808;
double r59819 = t;
double r59820 = r59818 + r59819;
double r59821 = a;
double r59822 = r59808 + r59821;
double r59823 = r59822 * r59808;
double r59824 = b;
double r59825 = r59823 + r59824;
double r59826 = r59825 * r59808;
double r59827 = c;
double r59828 = r59826 + r59827;
double r59829 = r59828 * r59808;
double r59830 = i;
double r59831 = r59829 + r59830;
double r59832 = r59820 / r59831;
return r59832;
}
double f(double x, double y, double z, double t, double a, double b, double c, double i) {
double r59833 = x;
double r59834 = y;
double r59835 = z;
double r59836 = fma(r59833, r59834, r59835);
double r59837 = 27464.7644705;
double r59838 = fma(r59836, r59834, r59837);
double r59839 = cbrt(r59838);
double r59840 = cbrt(r59839);
double r59841 = r59840 * r59840;
double r59842 = r59841 * r59840;
double r59843 = r59839 * r59842;
double r59844 = r59843 * r59839;
double r59845 = 230661.510616;
double r59846 = fma(r59844, r59834, r59845);
double r59847 = t;
double r59848 = fma(r59846, r59834, r59847);
double r59849 = a;
double r59850 = r59834 + r59849;
double r59851 = b;
double r59852 = fma(r59850, r59834, r59851);
double r59853 = c;
double r59854 = fma(r59852, r59834, r59853);
double r59855 = i;
double r59856 = fma(r59854, r59834, r59855);
double r59857 = r59848 / r59856;
return r59857;
}



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)))