\left(\left(x - 1\right) \cdot \log y + \left(z - 1\right) \cdot \log \left(1 - y\right)\right) - t
\left(\left(x - 1\right) \cdot \log \left(\sqrt[3]{y} \cdot \sqrt[3]{y}\right) + \mathsf{fma}\left(\log \left(\sqrt[3]{y}\right), x - 1, \left(z - 1\right) \cdot \left(\log 1 - \left(1 \cdot y + \frac{1}{2} \cdot \frac{{y}^{2}}{{1}^{2}}\right)\right)\right)\right) - tdouble f(double x, double y, double z, double t) {
double r57774 = x;
double r57775 = 1.0;
double r57776 = r57774 - r57775;
double r57777 = y;
double r57778 = log(r57777);
double r57779 = r57776 * r57778;
double r57780 = z;
double r57781 = r57780 - r57775;
double r57782 = r57775 - r57777;
double r57783 = log(r57782);
double r57784 = r57781 * r57783;
double r57785 = r57779 + r57784;
double r57786 = t;
double r57787 = r57785 - r57786;
return r57787;
}
double f(double x, double y, double z, double t) {
double r57788 = x;
double r57789 = 1.0;
double r57790 = r57788 - r57789;
double r57791 = y;
double r57792 = cbrt(r57791);
double r57793 = r57792 * r57792;
double r57794 = log(r57793);
double r57795 = r57790 * r57794;
double r57796 = log(r57792);
double r57797 = z;
double r57798 = r57797 - r57789;
double r57799 = log(r57789);
double r57800 = r57789 * r57791;
double r57801 = 0.5;
double r57802 = 2.0;
double r57803 = pow(r57791, r57802);
double r57804 = pow(r57789, r57802);
double r57805 = r57803 / r57804;
double r57806 = r57801 * r57805;
double r57807 = r57800 + r57806;
double r57808 = r57799 - r57807;
double r57809 = r57798 * r57808;
double r57810 = fma(r57796, r57790, r57809);
double r57811 = r57795 + r57810;
double r57812 = t;
double r57813 = r57811 - r57812;
return r57813;
}



Bits error versus x



Bits error versus y



Bits error versus z



Bits error versus t
Initial program 7.2
Taylor expanded around 0 0.4
rmApplied add-cube-cbrt0.4
Applied log-prod0.4
Applied distribute-lft-in0.4
Applied associate-+l+0.4
Simplified0.4
Final simplification0.4
herbie shell --seed 2020060 +o rules:numerics
(FPCore (x y z t)
:name "Statistics.Distribution.Beta:$cdensity from math-functions-0.1.5.2"
:precision binary64
(- (+ (* (- x 1) (log y)) (* (- z 1) (log (- 1 y)))) t))