Average Error: 0.5 → 0.5
Time: 4.8s
Precision: 64
\[1 - \frac{x}{\left(y - z\right) \cdot \left(y - t\right)}\]
\[1 - \frac{x}{\left(y - z\right) \cdot \left(y - t\right)}\]
1 - \frac{x}{\left(y - z\right) \cdot \left(y - t\right)}
1 - \frac{x}{\left(y - z\right) \cdot \left(y - t\right)}
double f(double x, double y, double z, double t) {
        double r239894 = 1.0;
        double r239895 = x;
        double r239896 = y;
        double r239897 = z;
        double r239898 = r239896 - r239897;
        double r239899 = t;
        double r239900 = r239896 - r239899;
        double r239901 = r239898 * r239900;
        double r239902 = r239895 / r239901;
        double r239903 = r239894 - r239902;
        return r239903;
}

double f(double x, double y, double z, double t) {
        double r239904 = 1.0;
        double r239905 = x;
        double r239906 = y;
        double r239907 = z;
        double r239908 = r239906 - r239907;
        double r239909 = t;
        double r239910 = r239906 - r239909;
        double r239911 = r239908 * r239910;
        double r239912 = r239905 / r239911;
        double r239913 = r239904 - r239912;
        return r239913;
}

Error

Bits error versus x

Bits error versus y

Bits error versus z

Bits error versus t

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 0.5

    \[1 - \frac{x}{\left(y - z\right) \cdot \left(y - t\right)}\]
  2. Final simplification0.5

    \[\leadsto 1 - \frac{x}{\left(y - z\right) \cdot \left(y - t\right)}\]

Reproduce

herbie shell --seed 2020035 +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)))))