Average Error: 0.6 → 0.6
Time: 13.2s
Precision: 64
\[1.0 - \frac{x}{\left(y - z\right) \cdot \left(y - t\right)}\]
\[1.0 - \frac{x}{\left(y - t\right) \cdot \left(y - z\right)}\]
1.0 - \frac{x}{\left(y - z\right) \cdot \left(y - t\right)}
1.0 - \frac{x}{\left(y - t\right) \cdot \left(y - z\right)}
double f(double x, double y, double z, double t) {
        double r5699158 = 1.0;
        double r5699159 = x;
        double r5699160 = y;
        double r5699161 = z;
        double r5699162 = r5699160 - r5699161;
        double r5699163 = t;
        double r5699164 = r5699160 - r5699163;
        double r5699165 = r5699162 * r5699164;
        double r5699166 = r5699159 / r5699165;
        double r5699167 = r5699158 - r5699166;
        return r5699167;
}

double f(double x, double y, double z, double t) {
        double r5699168 = 1.0;
        double r5699169 = x;
        double r5699170 = y;
        double r5699171 = t;
        double r5699172 = r5699170 - r5699171;
        double r5699173 = z;
        double r5699174 = r5699170 - r5699173;
        double r5699175 = r5699172 * r5699174;
        double r5699176 = r5699169 / r5699175;
        double r5699177 = r5699168 - r5699176;
        return r5699177;
}

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.0 - \frac{x}{\left(y - z\right) \cdot \left(y - t\right)}\]
  2. Final simplification0.6

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

Reproduce

herbie shell --seed 2019156 
(FPCore (x y z t)
  :name "Data.Random.Distribution.Triangular:triangularCDF from random-fu-0.2.6.2, A"
  (- 1.0 (/ x (* (- y z) (- y t)))))