Average Error: 1.6 → 1.6
Time: 29.4s
Precision: 64
\[\left|\frac{x + 4}{y} - \frac{x}{y} \cdot z\right|\]
\[\left|\frac{4 + x}{y} - \frac{x}{y} \cdot z\right|\]
\left|\frac{x + 4}{y} - \frac{x}{y} \cdot z\right|
\left|\frac{4 + x}{y} - \frac{x}{y} \cdot z\right|
double f(double x, double y, double z) {
        double r1361085 = x;
        double r1361086 = 4.0;
        double r1361087 = r1361085 + r1361086;
        double r1361088 = y;
        double r1361089 = r1361087 / r1361088;
        double r1361090 = r1361085 / r1361088;
        double r1361091 = z;
        double r1361092 = r1361090 * r1361091;
        double r1361093 = r1361089 - r1361092;
        double r1361094 = fabs(r1361093);
        return r1361094;
}

double f(double x, double y, double z) {
        double r1361095 = 4.0;
        double r1361096 = x;
        double r1361097 = r1361095 + r1361096;
        double r1361098 = y;
        double r1361099 = r1361097 / r1361098;
        double r1361100 = r1361096 / r1361098;
        double r1361101 = z;
        double r1361102 = r1361100 * r1361101;
        double r1361103 = r1361099 - r1361102;
        double r1361104 = fabs(r1361103);
        return r1361104;
}

Error

Bits error versus x

Bits error versus y

Bits error versus z

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 1.6

    \[\left|\frac{x + 4}{y} - \frac{x}{y} \cdot z\right|\]
  2. Final simplification1.6

    \[\leadsto \left|\frac{4 + x}{y} - \frac{x}{y} \cdot z\right|\]

Reproduce

herbie shell --seed 2019112 
(FPCore (x y z)
  :name "fabs fraction 1"
  (fabs (- (/ (+ x 4) y) (* (/ x y) z))))