Average Error: 1.7 → 0.6
Time: 16.4s
Precision: 64
\[\left|\frac{x + 4}{y} - \frac{x}{y} \cdot z\right|\]
\[\left|\frac{4 + x}{y} - \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|\]
\left|\frac{x + 4}{y} - \frac{x}{y} \cdot z\right|
\left|\frac{4 + x}{y} - \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|
double f(double x, double y, double z) {
        double r1842725 = x;
        double r1842726 = 4.0;
        double r1842727 = r1842725 + r1842726;
        double r1842728 = y;
        double r1842729 = r1842727 / r1842728;
        double r1842730 = r1842725 / r1842728;
        double r1842731 = z;
        double r1842732 = r1842730 * r1842731;
        double r1842733 = r1842729 - r1842732;
        double r1842734 = fabs(r1842733);
        return r1842734;
}

double f(double x, double y, double z) {
        double r1842735 = 4.0;
        double r1842736 = x;
        double r1842737 = r1842735 + r1842736;
        double r1842738 = y;
        double r1842739 = r1842737 / r1842738;
        double r1842740 = cbrt(r1842736);
        double r1842741 = r1842740 * r1842740;
        double r1842742 = cbrt(r1842738);
        double r1842743 = r1842742 * r1842742;
        double r1842744 = r1842741 / r1842743;
        double r1842745 = r1842740 / r1842742;
        double r1842746 = z;
        double r1842747 = r1842745 * r1842746;
        double r1842748 = r1842744 * r1842747;
        double r1842749 = r1842739 - r1842748;
        double r1842750 = fabs(r1842749);
        return r1842750;
}

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

    \[\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. Final simplification0.6

    \[\leadsto \left|\frac{4 + x}{y} - \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|\]

Reproduce

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