\left(\left(\left(\left(x \cdot \log y + z\right) + t\right) + a\right) + \left(b - 0.5\right) \cdot \log c\right) + y \cdot i
\left(\left(\left(\left(\log \left(\sqrt[3]{y} \cdot \sqrt[3]{y}\right) \cdot x + \left(x \cdot \log \left({y}^{\frac{1}{3}}\right) + z\right)\right) + t\right) + a\right) + \left(b - 0.5\right) \cdot \log c\right) + y \cdot idouble f(double x, double y, double z, double t, double a, double b, double c, double i) {
double r97054 = x;
double r97055 = y;
double r97056 = log(r97055);
double r97057 = r97054 * r97056;
double r97058 = z;
double r97059 = r97057 + r97058;
double r97060 = t;
double r97061 = r97059 + r97060;
double r97062 = a;
double r97063 = r97061 + r97062;
double r97064 = b;
double r97065 = 0.5;
double r97066 = r97064 - r97065;
double r97067 = c;
double r97068 = log(r97067);
double r97069 = r97066 * r97068;
double r97070 = r97063 + r97069;
double r97071 = i;
double r97072 = r97055 * r97071;
double r97073 = r97070 + r97072;
return r97073;
}
double f(double x, double y, double z, double t, double a, double b, double c, double i) {
double r97074 = y;
double r97075 = cbrt(r97074);
double r97076 = r97075 * r97075;
double r97077 = log(r97076);
double r97078 = x;
double r97079 = r97077 * r97078;
double r97080 = 0.3333333333333333;
double r97081 = pow(r97074, r97080);
double r97082 = log(r97081);
double r97083 = r97078 * r97082;
double r97084 = z;
double r97085 = r97083 + r97084;
double r97086 = r97079 + r97085;
double r97087 = t;
double r97088 = r97086 + r97087;
double r97089 = a;
double r97090 = r97088 + r97089;
double r97091 = b;
double r97092 = 0.5;
double r97093 = r97091 - r97092;
double r97094 = c;
double r97095 = log(r97094);
double r97096 = r97093 * r97095;
double r97097 = r97090 + r97096;
double r97098 = i;
double r97099 = r97074 * r97098;
double r97100 = r97097 + r97099;
return r97100;
}



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 0.1
rmApplied add-cube-cbrt0.1
Applied log-prod0.1
Applied distribute-rgt-in0.1
Applied associate-+l+0.1
Simplified0.1
rmApplied pow1/30.1
Final simplification0.1
herbie shell --seed 2019209
(FPCore (x y z t a b c i)
:name "Numeric.SpecFunctions:logBeta from math-functions-0.1.5.2, B"
:precision binary64
(+ (+ (+ (+ (+ (* x (log y)) z) t) a) (* (- b 0.5) (log c))) (* y i)))