Average Error: 2.3 → 2.3
Time: 9.1s
Precision: 64
\[\frac{x - y}{z - y} \cdot t\]
\[\frac{x - y}{z - y} \cdot t\]
\frac{x - y}{z - y} \cdot t
\frac{x - y}{z - y} \cdot t
double f(double x, double y, double z, double t) {
        double r573878 = x;
        double r573879 = y;
        double r573880 = r573878 - r573879;
        double r573881 = z;
        double r573882 = r573881 - r573879;
        double r573883 = r573880 / r573882;
        double r573884 = t;
        double r573885 = r573883 * r573884;
        return r573885;
}

double f(double x, double y, double z, double t) {
        double r573886 = x;
        double r573887 = y;
        double r573888 = r573886 - r573887;
        double r573889 = z;
        double r573890 = r573889 - r573887;
        double r573891 = r573888 / r573890;
        double r573892 = t;
        double r573893 = r573891 * r573892;
        return r573893;
}

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

Original2.3
Target2.3
Herbie2.3
\[\frac{t}{\frac{z - y}{x - y}}\]

Derivation

  1. Initial program 2.3

    \[\frac{x - y}{z - y} \cdot t\]
  2. Final simplification2.3

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

Reproduce

herbie shell --seed 2020047 +o rules:numerics
(FPCore (x y z t)
  :name "Numeric.Signal.Multichannel:$cput from hsignal-0.2.7.1"
  :precision binary64

  :herbie-target
  (/ t (/ (- z y) (- x y)))

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