1 - \frac{x}{\left(y - z\right) \cdot \left(y - t\right)}1 - \frac{1}{y - z} \cdot \frac{x}{\left(y - t\right) + \left(\left(-t\right) + t\right)}double f(double x, double y, double z, double t) {
double r162327 = 1.0;
double r162328 = x;
double r162329 = y;
double r162330 = z;
double r162331 = r162329 - r162330;
double r162332 = t;
double r162333 = r162329 - r162332;
double r162334 = r162331 * r162333;
double r162335 = r162328 / r162334;
double r162336 = r162327 - r162335;
return r162336;
}
double f(double x, double y, double z, double t) {
double r162337 = 1.0;
double r162338 = 1.0;
double r162339 = y;
double r162340 = z;
double r162341 = r162339 - r162340;
double r162342 = r162338 / r162341;
double r162343 = x;
double r162344 = t;
double r162345 = r162339 - r162344;
double r162346 = -r162344;
double r162347 = r162346 + r162344;
double r162348 = r162345 + r162347;
double r162349 = r162343 / r162348;
double r162350 = r162342 * r162349;
double r162351 = r162337 - r162350;
return r162351;
}



Bits error versus x



Bits error versus y



Bits error versus z



Bits error versus t
Results
Initial program 0.7
rmApplied add-cube-cbrt0.9
Applied add-cube-cbrt0.9
Applied prod-diff0.9
Applied distribute-lft-in7.1
Simplified7.0
Simplified0.8
rmApplied distribute-lft-out0.8
Applied *-un-lft-identity0.8
Applied times-frac1.2
Simplified1.1
Final simplification1.1
herbie shell --seed 2019325 +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)))))