\left(\left(\log \left(x + y\right) + \log z\right) - t\right) + \left(a - 0.5\right) \cdot \log t
\left(2 \cdot \left(\log \left(\sqrt{t}\right) \cdot \left(a - 0.5\right)\right) + \log z\right) - \left(t - \log \left(x + y\right)\right)double f(double x, double y, double z, double t, double a) {
double r57092 = x;
double r57093 = y;
double r57094 = r57092 + r57093;
double r57095 = log(r57094);
double r57096 = z;
double r57097 = log(r57096);
double r57098 = r57095 + r57097;
double r57099 = t;
double r57100 = r57098 - r57099;
double r57101 = a;
double r57102 = 0.5;
double r57103 = r57101 - r57102;
double r57104 = log(r57099);
double r57105 = r57103 * r57104;
double r57106 = r57100 + r57105;
return r57106;
}
double f(double x, double y, double z, double t, double a) {
double r57107 = 2.0;
double r57108 = t;
double r57109 = sqrt(r57108);
double r57110 = log(r57109);
double r57111 = a;
double r57112 = 0.5;
double r57113 = r57111 - r57112;
double r57114 = r57110 * r57113;
double r57115 = r57107 * r57114;
double r57116 = z;
double r57117 = log(r57116);
double r57118 = r57115 + r57117;
double r57119 = x;
double r57120 = y;
double r57121 = r57119 + r57120;
double r57122 = log(r57121);
double r57123 = r57108 - r57122;
double r57124 = r57118 - r57123;
return r57124;
}



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-sqr-sqrt0.3
Applied log-prod0.3
Applied distribute-rgt-in0.3
Applied associate-+r+0.3
rmApplied sub-neg0.3
Applied distribute-lft-in0.3
Applied associate-+r+0.3
Simplified0.3
Final simplification0.3
herbie shell --seed 2019298
(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))))