\left(\left(x - 1\right) \cdot \log y + \left(z - 1\right) \cdot \log \left(1 - y\right)\right) - t
\mathsf{fma}\left(x - 1, \log y, \left(z - 1\right) \cdot \left(\log 1 - \mathsf{fma}\left(1, y, \frac{1}{2} \cdot \frac{{y}^{2}}{{1}^{2}}\right)\right)\right) - tdouble f(double x, double y, double z, double t) {
double r111920 = x;
double r111921 = 1.0;
double r111922 = r111920 - r111921;
double r111923 = y;
double r111924 = log(r111923);
double r111925 = r111922 * r111924;
double r111926 = z;
double r111927 = r111926 - r111921;
double r111928 = r111921 - r111923;
double r111929 = log(r111928);
double r111930 = r111927 * r111929;
double r111931 = r111925 + r111930;
double r111932 = t;
double r111933 = r111931 - r111932;
return r111933;
}
double f(double x, double y, double z, double t) {
double r111934 = x;
double r111935 = 1.0;
double r111936 = r111934 - r111935;
double r111937 = y;
double r111938 = log(r111937);
double r111939 = z;
double r111940 = r111939 - r111935;
double r111941 = log(r111935);
double r111942 = 0.5;
double r111943 = 2.0;
double r111944 = pow(r111937, r111943);
double r111945 = pow(r111935, r111943);
double r111946 = r111944 / r111945;
double r111947 = r111942 * r111946;
double r111948 = fma(r111935, r111937, r111947);
double r111949 = r111941 - r111948;
double r111950 = r111940 * r111949;
double r111951 = fma(r111936, r111938, r111950);
double r111952 = t;
double r111953 = r111951 - r111952;
return r111953;
}



Bits error versus x



Bits error versus y



Bits error versus z



Bits error versus t
Initial program 6.9
Simplified6.9
Taylor expanded around 0 0.3
Simplified0.3
Final simplification0.3
herbie shell --seed 2019325 +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))