\left(x \cdot \log y - z\right) - y
\left(\left(\left(x \cdot \log \left(\sqrt{{y}^{\frac{1}{3}} \cdot {y}^{\frac{1}{3}}}\right) + x \cdot \log \left(\sqrt{\sqrt[3]{y}}\right)\right) + x \cdot \left(\log \left(\sqrt{\sqrt{y}}\right) + \log \left(\sqrt{\sqrt{y}}\right)\right)\right) - z\right) - ydouble f(double x, double y, double z) {
double r26096 = x;
double r26097 = y;
double r26098 = log(r26097);
double r26099 = r26096 * r26098;
double r26100 = z;
double r26101 = r26099 - r26100;
double r26102 = r26101 - r26097;
return r26102;
}
double f(double x, double y, double z) {
double r26103 = x;
double r26104 = y;
double r26105 = 0.3333333333333333;
double r26106 = pow(r26104, r26105);
double r26107 = r26106 * r26106;
double r26108 = sqrt(r26107);
double r26109 = log(r26108);
double r26110 = r26103 * r26109;
double r26111 = cbrt(r26104);
double r26112 = sqrt(r26111);
double r26113 = log(r26112);
double r26114 = r26103 * r26113;
double r26115 = r26110 + r26114;
double r26116 = sqrt(r26104);
double r26117 = sqrt(r26116);
double r26118 = log(r26117);
double r26119 = r26118 + r26118;
double r26120 = r26103 * r26119;
double r26121 = r26115 + r26120;
double r26122 = z;
double r26123 = r26121 - r26122;
double r26124 = r26123 - r26104;
return r26124;
}



Bits error versus x



Bits error versus y



Bits error versus z
Results
Initial program 0.1
rmApplied add-sqr-sqrt0.1
Applied log-prod0.1
Applied distribute-lft-in0.1
rmApplied add-sqr-sqrt0.1
Applied sqrt-prod0.1
Applied log-prod0.1
rmApplied add-cube-cbrt0.1
Applied sqrt-prod0.1
Applied log-prod0.1
Applied distribute-lft-in0.1
rmApplied add-sqr-sqrt0.1
Applied add-sqr-sqrt0.1
Applied swap-sqr0.1
Simplified0.1
Simplified0.1
Final simplification0.1
herbie shell --seed 2020062 +o rules:numerics
(FPCore (x y z)
:name "Statistics.Distribution.Poisson:$clogProbability from math-functions-0.1.5.2"
:precision binary64
(- (- (* x (log y)) z) y))