Average Error: 0.6 → 1.0
Time: 17.1s
Precision: 64
\[1 - \frac{x}{\left(y - z\right) \cdot \left(y - t\right)}\]
\[1 - \frac{1}{y - z} \cdot \frac{x}{y - t}\]
1 - \frac{x}{\left(y - z\right) \cdot \left(y - t\right)}
1 - \frac{1}{y - z} \cdot \frac{x}{y - t}
double f(double x, double y, double z, double t) {
        double r156921 = 1.0;
        double r156922 = x;
        double r156923 = y;
        double r156924 = z;
        double r156925 = r156923 - r156924;
        double r156926 = t;
        double r156927 = r156923 - r156926;
        double r156928 = r156925 * r156927;
        double r156929 = r156922 / r156928;
        double r156930 = r156921 - r156929;
        return r156930;
}

double f(double x, double y, double z, double t) {
        double r156931 = 1.0;
        double r156932 = 1.0;
        double r156933 = y;
        double r156934 = z;
        double r156935 = r156933 - r156934;
        double r156936 = r156932 / r156935;
        double r156937 = x;
        double r156938 = t;
        double r156939 = r156933 - r156938;
        double r156940 = r156937 / r156939;
        double r156941 = r156936 * r156940;
        double r156942 = r156931 - r156941;
        return r156942;
}

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.6

    \[1 - \frac{x}{\left(y - z\right) \cdot \left(y - t\right)}\]
  2. Using strategy rm
  3. Applied *-un-lft-identity0.6

    \[\leadsto 1 - \frac{\color{blue}{1 \cdot x}}{\left(y - z\right) \cdot \left(y - t\right)}\]
  4. Applied times-frac1.0

    \[\leadsto 1 - \color{blue}{\frac{1}{y - z} \cdot \frac{x}{y - t}}\]
  5. Final simplification1.0

    \[\leadsto 1 - \frac{1}{y - z} \cdot \frac{x}{y - t}\]

Reproduce

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