Average Error: 7.5 → 1.9
Time: 19.5s
Precision: 64
\[\frac{x}{\left(y - z\right) \cdot \left(t - z\right)}\]
\[\frac{\left(\sqrt[3]{\sqrt[3]{x}} \cdot \sqrt[3]{\sqrt[3]{x}}\right) \cdot \left(\sqrt[3]{\sqrt[3]{x}} \cdot \sqrt[3]{x}\right)}{y - z} \cdot \frac{\sqrt[3]{x}}{t - z}\]
\frac{x}{\left(y - z\right) \cdot \left(t - z\right)}
\frac{\left(\sqrt[3]{\sqrt[3]{x}} \cdot \sqrt[3]{\sqrt[3]{x}}\right) \cdot \left(\sqrt[3]{\sqrt[3]{x}} \cdot \sqrt[3]{x}\right)}{y - z} \cdot \frac{\sqrt[3]{x}}{t - z}
double f(double x, double y, double z, double t) {
        double r748237 = x;
        double r748238 = y;
        double r748239 = z;
        double r748240 = r748238 - r748239;
        double r748241 = t;
        double r748242 = r748241 - r748239;
        double r748243 = r748240 * r748242;
        double r748244 = r748237 / r748243;
        return r748244;
}

double f(double x, double y, double z, double t) {
        double r748245 = x;
        double r748246 = cbrt(r748245);
        double r748247 = cbrt(r748246);
        double r748248 = r748247 * r748247;
        double r748249 = r748247 * r748246;
        double r748250 = r748248 * r748249;
        double r748251 = y;
        double r748252 = z;
        double r748253 = r748251 - r748252;
        double r748254 = r748250 / r748253;
        double r748255 = t;
        double r748256 = r748255 - r748252;
        double r748257 = r748246 / r748256;
        double r748258 = r748254 * r748257;
        return r748258;
}

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

Target

Original7.5
Target8.3
Herbie1.9
\[\begin{array}{l} \mathbf{if}\;\frac{x}{\left(y - z\right) \cdot \left(t - z\right)} \lt 0.0:\\ \;\;\;\;\frac{\frac{x}{y - z}}{t - z}\\ \mathbf{else}:\\ \;\;\;\;x \cdot \frac{1}{\left(y - z\right) \cdot \left(t - z\right)}\\ \end{array}\]

Derivation

  1. Initial program 7.5

    \[\frac{x}{\left(y - z\right) \cdot \left(t - z\right)}\]
  2. Using strategy rm
  3. Applied add-cube-cbrt8.0

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

    \[\leadsto \color{blue}{\frac{\sqrt[3]{x} \cdot \sqrt[3]{x}}{y - z} \cdot \frac{\sqrt[3]{x}}{t - z}}\]
  5. Using strategy rm
  6. Applied add-cube-cbrt1.9

    \[\leadsto \frac{\color{blue}{\left(\left(\sqrt[3]{\sqrt[3]{x}} \cdot \sqrt[3]{\sqrt[3]{x}}\right) \cdot \sqrt[3]{\sqrt[3]{x}}\right)} \cdot \sqrt[3]{x}}{y - z} \cdot \frac{\sqrt[3]{x}}{t - z}\]
  7. Applied associate-*l*1.9

    \[\leadsto \frac{\color{blue}{\left(\sqrt[3]{\sqrt[3]{x}} \cdot \sqrt[3]{\sqrt[3]{x}}\right) \cdot \left(\sqrt[3]{\sqrt[3]{x}} \cdot \sqrt[3]{x}\right)}}{y - z} \cdot \frac{\sqrt[3]{x}}{t - z}\]
  8. Final simplification1.9

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

Reproduce

herbie shell --seed 2019196 +o rules:numerics
(FPCore (x y z t)
  :name "Data.Random.Distribution.Triangular:triangularCDF from random-fu-0.2.6.2, B"

  :herbie-target
  (if (< (/ x (* (- y z) (- t z))) 0.0) (/ (/ x (- y z)) (- t z)) (* x (/ 1.0 (* (- y z) (- t z)))))

  (/ x (* (- y z) (- t z))))