\left(\left(x \cdot \log y - y\right) - z\right) + \log t
\log \left(\sqrt{\sqrt{y}}\right) \cdot x + \left(\log t + \left(x \cdot \left(\log \left(\sqrt{\sqrt{y}}\right) + \log \left(\sqrt{y}\right)\right) - \left(y + z\right)\right)\right)double f(double x, double y, double z, double t) {
double r89237 = x;
double r89238 = y;
double r89239 = log(r89238);
double r89240 = r89237 * r89239;
double r89241 = r89240 - r89238;
double r89242 = z;
double r89243 = r89241 - r89242;
double r89244 = t;
double r89245 = log(r89244);
double r89246 = r89243 + r89245;
return r89246;
}
double f(double x, double y, double z, double t) {
double r89247 = y;
double r89248 = sqrt(r89247);
double r89249 = sqrt(r89248);
double r89250 = log(r89249);
double r89251 = x;
double r89252 = r89250 * r89251;
double r89253 = t;
double r89254 = log(r89253);
double r89255 = log(r89248);
double r89256 = r89250 + r89255;
double r89257 = r89251 * r89256;
double r89258 = z;
double r89259 = r89247 + r89258;
double r89260 = r89257 - r89259;
double r89261 = r89254 + r89260;
double r89262 = r89252 + r89261;
return r89262;
}



Bits error versus x



Bits error versus y



Bits error versus z



Bits error versus t
Results
Initial program 0.1
rmApplied add-sqr-sqrt0.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
rmApplied add-sqr-sqrt0.1
Applied sqrt-prod0.1
Applied log-prod0.1
Applied distribute-rgt-in0.1
Applied associate-+l+0.1
Simplified0.1
Final simplification0.1
herbie shell --seed 2020045
(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)))