Average Error: 1.7 → 1.7
Time: 14.0s
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 r1685087 = x;
        double r1685088 = 4.0;
        double r1685089 = r1685087 + r1685088;
        double r1685090 = y;
        double r1685091 = r1685089 / r1685090;
        double r1685092 = r1685087 / r1685090;
        double r1685093 = z;
        double r1685094 = r1685092 * r1685093;
        double r1685095 = r1685091 - r1685094;
        double r1685096 = fabs(r1685095);
        return r1685096;
}

double f(double x, double y, double z) {
        double r1685097 = 4.0;
        double r1685098 = x;
        double r1685099 = r1685097 + r1685098;
        double r1685100 = y;
        double r1685101 = r1685099 / r1685100;
        double r1685102 = r1685098 / r1685100;
        double r1685103 = z;
        double r1685104 = r1685102 * r1685103;
        double r1685105 = r1685101 - r1685104;
        double r1685106 = fabs(r1685105);
        return r1685106;
}

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.7

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

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

Reproduce

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