1 - \frac{x}{\left(y - z\right) \cdot \left(y - t\right)}\begin{array}{l}
\mathbf{if}\;x \le -4.54279981406481496 \cdot 10^{213}:\\
\;\;\;\;1 - x \cdot \frac{\frac{1}{y - z}}{y - t}\\
\mathbf{elif}\;x \le 7.3933699298610861 \cdot 10^{209}:\\
\;\;\;\;1 - \frac{\frac{x}{y - z}}{y - t}\\
\mathbf{else}:\\
\;\;\;\;1 - \frac{x}{\left(y - t\right) \cdot \left(y - z\right)}\\
\end{array}double f(double x, double y, double z, double t) {
double r244955 = 1.0;
double r244956 = x;
double r244957 = y;
double r244958 = z;
double r244959 = r244957 - r244958;
double r244960 = t;
double r244961 = r244957 - r244960;
double r244962 = r244959 * r244961;
double r244963 = r244956 / r244962;
double r244964 = r244955 - r244963;
return r244964;
}
double f(double x, double y, double z, double t) {
double r244965 = x;
double r244966 = -4.542799814064815e+213;
bool r244967 = r244965 <= r244966;
double r244968 = 1.0;
double r244969 = 1.0;
double r244970 = y;
double r244971 = z;
double r244972 = r244970 - r244971;
double r244973 = r244969 / r244972;
double r244974 = t;
double r244975 = r244970 - r244974;
double r244976 = r244973 / r244975;
double r244977 = r244965 * r244976;
double r244978 = r244968 - r244977;
double r244979 = 7.393369929861086e+209;
bool r244980 = r244965 <= r244979;
double r244981 = r244965 / r244972;
double r244982 = r244981 / r244975;
double r244983 = r244968 - r244982;
double r244984 = r244975 * r244972;
double r244985 = r244965 / r244984;
double r244986 = r244968 - r244985;
double r244987 = r244980 ? r244983 : r244986;
double r244988 = r244967 ? r244978 : r244987;
return r244988;
}



Bits error versus x



Bits error versus y



Bits error versus z



Bits error versus t
Results
if x < -4.542799814064815e+213Initial program 0.2
rmApplied associate-/r*5.8
rmApplied *-un-lft-identity5.8
Applied div-inv5.9
Applied times-frac0.2
Simplified0.2
if -4.542799814064815e+213 < x < 7.393369929861086e+209Initial program 0.9
rmApplied associate-/r*0.4
if 7.393369929861086e+209 < x Initial program 0.2
rmApplied associate-/r*4.5
rmApplied div-inv4.5
Applied associate-/l*0.2
Simplified0.2
Final simplification0.4
herbie shell --seed 2020047 +o rules:numerics
(FPCore (x y z t)
:name "Data.Random.Distribution.Triangular:triangularCDF from random-fu-0.2.6.2, A"
:precision binary64
(- 1 (/ x (* (- y z) (- y t)))))