Average Error: 1.6 → 0.6
Time: 7.0m
Precision: 64
\[\left|\frac{x + 4}{y} - \frac{x}{y} \cdot z\right|\]
\[\left|\frac{4 + x}{y} - \left(\frac{\sqrt[3]{x}}{\sqrt[3]{y}} \cdot \frac{\sqrt[3]{x}}{\sqrt[3]{y}}\right) \cdot \left(z \cdot \frac{\sqrt[3]{x}}{\sqrt[3]{y}}\right)\right|\]
\left|\frac{x + 4}{y} - \frac{x}{y} \cdot z\right|
\left|\frac{4 + x}{y} - \left(\frac{\sqrt[3]{x}}{\sqrt[3]{y}} \cdot \frac{\sqrt[3]{x}}{\sqrt[3]{y}}\right) \cdot \left(z \cdot \frac{\sqrt[3]{x}}{\sqrt[3]{y}}\right)\right|
double f(double x, double y, double z) {
        double r19025110 = x;
        double r19025111 = 4.0;
        double r19025112 = r19025110 + r19025111;
        double r19025113 = y;
        double r19025114 = r19025112 / r19025113;
        double r19025115 = r19025110 / r19025113;
        double r19025116 = z;
        double r19025117 = r19025115 * r19025116;
        double r19025118 = r19025114 - r19025117;
        double r19025119 = fabs(r19025118);
        return r19025119;
}

double f(double x, double y, double z) {
        double r19025120 = 4.0;
        double r19025121 = x;
        double r19025122 = r19025120 + r19025121;
        double r19025123 = y;
        double r19025124 = r19025122 / r19025123;
        double r19025125 = cbrt(r19025121);
        double r19025126 = cbrt(r19025123);
        double r19025127 = r19025125 / r19025126;
        double r19025128 = r19025127 * r19025127;
        double r19025129 = z;
        double r19025130 = r19025129 * r19025127;
        double r19025131 = r19025128 * r19025130;
        double r19025132 = r19025124 - r19025131;
        double r19025133 = fabs(r19025132);
        return r19025133;
}

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. Using strategy rm
  3. Applied add-cube-cbrt1.9

    \[\leadsto \left|\frac{x + 4}{y} - \frac{x}{\color{blue}{\left(\sqrt[3]{y} \cdot \sqrt[3]{y}\right) \cdot \sqrt[3]{y}}} \cdot z\right|\]
  4. Applied add-cube-cbrt2.0

    \[\leadsto \left|\frac{x + 4}{y} - \frac{\color{blue}{\left(\sqrt[3]{x} \cdot \sqrt[3]{x}\right) \cdot \sqrt[3]{x}}}{\left(\sqrt[3]{y} \cdot \sqrt[3]{y}\right) \cdot \sqrt[3]{y}} \cdot z\right|\]
  5. Applied times-frac2.0

    \[\leadsto \left|\frac{x + 4}{y} - \color{blue}{\left(\frac{\sqrt[3]{x} \cdot \sqrt[3]{x}}{\sqrt[3]{y} \cdot \sqrt[3]{y}} \cdot \frac{\sqrt[3]{x}}{\sqrt[3]{y}}\right)} \cdot z\right|\]
  6. Applied associate-*l*0.6

    \[\leadsto \left|\frac{x + 4}{y} - \color{blue}{\frac{\sqrt[3]{x} \cdot \sqrt[3]{x}}{\sqrt[3]{y} \cdot \sqrt[3]{y}} \cdot \left(\frac{\sqrt[3]{x}}{\sqrt[3]{y}} \cdot z\right)}\right|\]
  7. Simplified0.6

    \[\leadsto \left|\frac{x + 4}{y} - \color{blue}{\left(\frac{\sqrt[3]{x}}{\sqrt[3]{y}} \cdot \frac{\sqrt[3]{x}}{\sqrt[3]{y}}\right)} \cdot \left(\frac{\sqrt[3]{x}}{\sqrt[3]{y}} \cdot z\right)\right|\]
  8. Final simplification0.6

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

Reproduce

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