\frac{x}{\left(y - z\right) \cdot \left(t - z\right)}\frac{\sqrt[3]{x} \cdot \sqrt[3]{x}}{y - z} \cdot \frac{\sqrt[3]{x}}{t - z}double f(double x, double y, double z, double t) {
double r852369 = x;
double r852370 = y;
double r852371 = z;
double r852372 = r852370 - r852371;
double r852373 = t;
double r852374 = r852373 - r852371;
double r852375 = r852372 * r852374;
double r852376 = r852369 / r852375;
return r852376;
}
double f(double x, double y, double z, double t) {
double r852377 = x;
double r852378 = cbrt(r852377);
double r852379 = r852378 * r852378;
double r852380 = y;
double r852381 = z;
double r852382 = r852380 - r852381;
double r852383 = r852379 / r852382;
double r852384 = t;
double r852385 = r852384 - r852381;
double r852386 = r852378 / r852385;
double r852387 = r852383 * r852386;
return r852387;
}




Bits error versus x




Bits error versus y




Bits error versus z




Bits error versus t
Results
| Original | 7.5 |
|---|---|
| Target | 8.3 |
| Herbie | 1.6 |
Initial program 7.5
rmApplied add-cube-cbrt8.0
Applied times-frac1.6
Final simplification1.6
herbie shell --seed 2020034
(FPCore (x y z t)
:name "Data.Random.Distribution.Triangular:triangularCDF from random-fu-0.2.6.2, B"
:precision binary64
:herbie-target
(if (< (/ x (* (- y z) (- t z))) 0.0) (/ (/ x (- y z)) (- t z)) (* x (/ 1 (* (- y z) (- t z)))))
(/ x (* (- y z) (- t z))))