\left(\left(\log \left(x + y\right) + \log z\right) - t\right) + \left(a - 0.5\right) \cdot \log t
\left(\left(a - 0.5\right) \cdot \log t + 3 \cdot \log \left(\sqrt[3]{x + y}\right)\right) + \left(\log z - t\right)double f(double x, double y, double z, double t, double a) {
double r55471 = x;
double r55472 = y;
double r55473 = r55471 + r55472;
double r55474 = log(r55473);
double r55475 = z;
double r55476 = log(r55475);
double r55477 = r55474 + r55476;
double r55478 = t;
double r55479 = r55477 - r55478;
double r55480 = a;
double r55481 = 0.5;
double r55482 = r55480 - r55481;
double r55483 = log(r55478);
double r55484 = r55482 * r55483;
double r55485 = r55479 + r55484;
return r55485;
}
double f(double x, double y, double z, double t, double a) {
double r55486 = a;
double r55487 = 0.5;
double r55488 = r55486 - r55487;
double r55489 = t;
double r55490 = log(r55489);
double r55491 = r55488 * r55490;
double r55492 = 3.0;
double r55493 = x;
double r55494 = y;
double r55495 = r55493 + r55494;
double r55496 = cbrt(r55495);
double r55497 = log(r55496);
double r55498 = r55492 * r55497;
double r55499 = r55491 + r55498;
double r55500 = z;
double r55501 = log(r55500);
double r55502 = r55501 - r55489;
double r55503 = r55499 + r55502;
return r55503;
}



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 add-cube-cbrt0.3
Applied log-prod0.3
Applied associate-+l+0.3
Final simplification0.3
herbie shell --seed 2019291
(FPCore (x y z t a)
:name "Numeric.SpecFunctions:logGammaL from math-functions-0.1.5.2"
:precision binary64
(+ (- (+ (log (+ x y)) (log z)) t) (* (- a 0.5) (log t))))