\left(x \cdot \log y - z\right) - y
\left(\mathsf{fma}\left(2 \cdot \log \left(\sqrt[3]{y}\right), x, \left(2 \cdot \log \left(\sqrt[3]{\sqrt[3]{y}}\right)\right) \cdot x + x \cdot \log \left(\sqrt[3]{\sqrt[3]{y}}\right)\right) - z\right) - ydouble f(double x, double y, double z) {
double r28658 = x;
double r28659 = y;
double r28660 = log(r28659);
double r28661 = r28658 * r28660;
double r28662 = z;
double r28663 = r28661 - r28662;
double r28664 = r28663 - r28659;
return r28664;
}
double f(double x, double y, double z) {
double r28665 = 2.0;
double r28666 = y;
double r28667 = cbrt(r28666);
double r28668 = log(r28667);
double r28669 = r28665 * r28668;
double r28670 = x;
double r28671 = cbrt(r28667);
double r28672 = log(r28671);
double r28673 = r28665 * r28672;
double r28674 = r28673 * r28670;
double r28675 = r28670 * r28672;
double r28676 = r28674 + r28675;
double r28677 = fma(r28669, r28670, r28676);
double r28678 = z;
double r28679 = r28677 - r28678;
double r28680 = r28679 - r28666;
return r28680;
}



Bits error versus x



Bits error versus y



Bits error versus z
Initial program 0.1
rmApplied add-cube-cbrt0.1
Applied log-prod0.1
Applied distribute-lft-in0.1
Simplified0.1
rmApplied fma-def0.1
rmApplied add-cube-cbrt0.1
Applied log-prod0.1
Applied distribute-lft-in0.1
Simplified0.1
Final simplification0.1
herbie shell --seed 2020047 +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))