\left(x \cdot \log y - z\right) - y
\left(\left(\left(\log \left(\sqrt[3]{{y}^{\frac{2}{3}}}\right) \cdot \left(x \cdot 2\right) + \left(\log \left(\sqrt[3]{\sqrt[3]{y}}\right) \cdot 2\right) \cdot x\right) + x \cdot \log \left(\sqrt[3]{y}\right)\right) - z\right) - ydouble f(double x, double y, double z) {
double r28639 = x;
double r28640 = y;
double r28641 = log(r28640);
double r28642 = r28639 * r28641;
double r28643 = z;
double r28644 = r28642 - r28643;
double r28645 = r28644 - r28640;
return r28645;
}
double f(double x, double y, double z) {
double r28646 = y;
double r28647 = 0.6666666666666666;
double r28648 = pow(r28646, r28647);
double r28649 = cbrt(r28648);
double r28650 = log(r28649);
double r28651 = x;
double r28652 = 2.0;
double r28653 = r28651 * r28652;
double r28654 = r28650 * r28653;
double r28655 = cbrt(r28646);
double r28656 = cbrt(r28655);
double r28657 = log(r28656);
double r28658 = r28657 * r28652;
double r28659 = r28658 * r28651;
double r28660 = r28654 + r28659;
double r28661 = log(r28655);
double r28662 = r28651 * r28661;
double r28663 = r28660 + r28662;
double r28664 = z;
double r28665 = r28663 - r28664;
double r28666 = r28665 - r28646;
return r28666;
}



Bits error versus x



Bits error versus y



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