\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 r66996 = x;
double r66997 = y;
double r66998 = r66996 * r66997;
double r66999 = z;
double r67000 = r66998 + r66999;
double r67001 = r67000 * r66997;
double r67002 = 27464.7644705;
double r67003 = r67001 + r67002;
double r67004 = r67003 * r66997;
double r67005 = 230661.510616;
double r67006 = r67004 + r67005;
double r67007 = r67006 * r66997;
double r67008 = t;
double r67009 = r67007 + r67008;
double r67010 = a;
double r67011 = r66997 + r67010;
double r67012 = r67011 * r66997;
double r67013 = b;
double r67014 = r67012 + r67013;
double r67015 = r67014 * r66997;
double r67016 = c;
double r67017 = r67015 + r67016;
double r67018 = r67017 * r66997;
double r67019 = i;
double r67020 = r67018 + r67019;
double r67021 = r67009 / r67020;
return r67021;
}
double f(double x, double y, double z, double t, double a, double b, double c, double i) {
double r67022 = x;
double r67023 = y;
double r67024 = z;
double r67025 = fma(r67022, r67023, r67024);
double r67026 = 27464.7644705;
double r67027 = fma(r67025, r67023, r67026);
double r67028 = cbrt(r67027);
double r67029 = cbrt(r67028);
double r67030 = r67029 * r67029;
double r67031 = r67030 * r67029;
double r67032 = r67028 * r67031;
double r67033 = r67032 * r67028;
double r67034 = 230661.510616;
double r67035 = fma(r67033, r67023, r67034);
double r67036 = t;
double r67037 = fma(r67035, r67023, r67036);
double r67038 = a;
double r67039 = r67023 + r67038;
double r67040 = b;
double r67041 = fma(r67039, r67023, r67040);
double r67042 = c;
double r67043 = fma(r67041, r67023, r67042);
double r67044 = i;
double r67045 = fma(r67043, r67023, r67044);
double r67046 = r67037 / r67045;
return r67046;
}



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