Average Error: 0.6 → 0.6
Time: 22.6s
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 r4538810 = 1.0;
        double r4538811 = x;
        double r4538812 = y;
        double r4538813 = z;
        double r4538814 = r4538812 - r4538813;
        double r4538815 = t;
        double r4538816 = r4538812 - r4538815;
        double r4538817 = r4538814 * r4538816;
        double r4538818 = r4538811 / r4538817;
        double r4538819 = r4538810 - r4538818;
        return r4538819;
}

double f(double x, double y, double z, double t) {
        double r4538820 = 1.0;
        double r4538821 = x;
        double r4538822 = y;
        double r4538823 = t;
        double r4538824 = r4538822 - r4538823;
        double r4538825 = z;
        double r4538826 = r4538822 - r4538825;
        double r4538827 = r4538824 * r4538826;
        double r4538828 = r4538821 / r4538827;
        double r4538829 = r4538820 - r4538828;
        return r4538829;
}

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 +o rules:numerics
(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)))))