\left(\left(\log \left(x + y\right) + \log z\right) - t\right) + \left(a - 0.5\right) \cdot \log t
\log \left(x + y\right) + \left(\log \left(\sqrt[3]{z} \cdot \sqrt[3]{z}\right) + \left(\left(\log \left(\sqrt[3]{z}\right) - t\right) + \left(a - 0.5\right) \cdot \log t\right)\right)double f(double x, double y, double z, double t, double a) {
double r54025 = x;
double r54026 = y;
double r54027 = r54025 + r54026;
double r54028 = log(r54027);
double r54029 = z;
double r54030 = log(r54029);
double r54031 = r54028 + r54030;
double r54032 = t;
double r54033 = r54031 - r54032;
double r54034 = a;
double r54035 = 0.5;
double r54036 = r54034 - r54035;
double r54037 = log(r54032);
double r54038 = r54036 * r54037;
double r54039 = r54033 + r54038;
return r54039;
}
double f(double x, double y, double z, double t, double a) {
double r54040 = x;
double r54041 = y;
double r54042 = r54040 + r54041;
double r54043 = log(r54042);
double r54044 = z;
double r54045 = cbrt(r54044);
double r54046 = r54045 * r54045;
double r54047 = log(r54046);
double r54048 = log(r54045);
double r54049 = t;
double r54050 = r54048 - r54049;
double r54051 = a;
double r54052 = 0.5;
double r54053 = r54051 - r54052;
double r54054 = log(r54049);
double r54055 = r54053 * r54054;
double r54056 = r54050 + r54055;
double r54057 = r54047 + r54056;
double r54058 = r54043 + r54057;
return r54058;
}



Bits error versus x



Bits error versus y



Bits error versus z



Bits error versus t



Bits error versus a
Results
Initial program 0.3
rmApplied associate--l+0.3
Applied associate-+l+0.3
rmApplied add-cube-cbrt0.3
Applied log-prod0.3
Applied associate--l+0.3
Applied associate-+l+0.3
Final simplification0.3
herbie shell --seed 2019195
(FPCore (x y z t a)
:name "Numeric.SpecFunctions:logGammaL from math-functions-0.1.5.2"
(+ (- (+ (log (+ x y)) (log z)) t) (* (- a 0.5) (log t))))