\left(\left(x \cdot \log y - y\right) - z\right) + \log t
\log \left(\sqrt{\sqrt{y}}\right) \cdot x + \left(x \cdot \left(\log \left(\sqrt{\sqrt{y}}\right) + \log \left(\sqrt{y}\right)\right) - \left(y + \left(z - \log t\right)\right)\right)double f(double x, double y, double z, double t) {
double r105606 = x;
double r105607 = y;
double r105608 = log(r105607);
double r105609 = r105606 * r105608;
double r105610 = r105609 - r105607;
double r105611 = z;
double r105612 = r105610 - r105611;
double r105613 = t;
double r105614 = log(r105613);
double r105615 = r105612 + r105614;
return r105615;
}
double f(double x, double y, double z, double t) {
double r105616 = y;
double r105617 = sqrt(r105616);
double r105618 = sqrt(r105617);
double r105619 = log(r105618);
double r105620 = x;
double r105621 = r105619 * r105620;
double r105622 = log(r105617);
double r105623 = r105619 + r105622;
double r105624 = r105620 * r105623;
double r105625 = z;
double r105626 = t;
double r105627 = log(r105626);
double r105628 = r105625 - r105627;
double r105629 = r105616 + r105628;
double r105630 = r105624 - r105629;
double r105631 = r105621 + r105630;
return r105631;
}



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
Simplified0.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)))