\left(\left(x \cdot \log y - y\right) - z\right) + \log t
x \cdot \log \left(\sqrt[3]{1} \cdot {y}^{\frac{2}{3}}\right) + \left(\left(\left(\log \left(\sqrt[3]{y}\right) \cdot x - y\right) - z\right) + \log t\right)double f(double x, double y, double z, double t) {
double r156052 = x;
double r156053 = y;
double r156054 = log(r156053);
double r156055 = r156052 * r156054;
double r156056 = r156055 - r156053;
double r156057 = z;
double r156058 = r156056 - r156057;
double r156059 = t;
double r156060 = log(r156059);
double r156061 = r156058 + r156060;
return r156061;
}
double f(double x, double y, double z, double t) {
double r156062 = x;
double r156063 = 1.0;
double r156064 = cbrt(r156063);
double r156065 = y;
double r156066 = 0.6666666666666666;
double r156067 = pow(r156065, r156066);
double r156068 = r156064 * r156067;
double r156069 = log(r156068);
double r156070 = r156062 * r156069;
double r156071 = cbrt(r156065);
double r156072 = log(r156071);
double r156073 = r156072 * r156062;
double r156074 = r156073 - r156065;
double r156075 = z;
double r156076 = r156074 - r156075;
double r156077 = t;
double r156078 = log(r156077);
double r156079 = r156076 + r156078;
double r156080 = r156070 + r156079;
return r156080;
}



Bits error versus x



Bits error versus y



Bits error versus z



Bits error versus t
Results
Initial program 0.1
rmApplied add-cube-cbrt0.1
Applied log-prod0.1
Applied distribute-lft-in0.1
Applied associate--l+0.1
Applied associate--l+0.1
Applied associate-+l+0.1
Simplified0.1
rmApplied *-un-lft-identity0.1
Applied cbrt-prod0.1
Applied associate-*l*0.1
Simplified0.1
Final simplification0.1
herbie shell --seed 2020081 +o rules:numerics
(FPCore (x y z t)
:name "Numeric.SpecFunctions:incompleteGamma from math-functions-0.1.5.2, A"
:precision binary64
(+ (- (- (* x (log y)) y) z) (log t)))