\left(x \cdot \log y - z\right) - y
\left(-y\right) + \mathsf{fma}\left(x, \log y, -z\right)double f(double x, double y, double z) {
double r22886 = x;
double r22887 = y;
double r22888 = log(r22887);
double r22889 = r22886 * r22888;
double r22890 = z;
double r22891 = r22889 - r22890;
double r22892 = r22891 - r22887;
return r22892;
}
double f(double x, double y, double z) {
double r22893 = y;
double r22894 = -r22893;
double r22895 = x;
double r22896 = log(r22893);
double r22897 = z;
double r22898 = -r22897;
double r22899 = fma(r22895, r22896, r22898);
double r22900 = r22894 + r22899;
return r22900;
}



Bits error versus x



Bits error versus y



Bits error versus z
Initial program 0.1
rmApplied *-un-lft-identity0.1
Applied prod-diff0.1
Applied associate--l+0.1
Simplified0.1
Final simplification0.1
herbie shell --seed 2019303 +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))