Average Error: 1.6 → 2.0
Time: 3.6s
Precision: 64
\[\left|\frac{x + 4}{y} - \frac{x}{y} \cdot z\right|\]
\[\left|\frac{x + 4}{y} - \frac{x}{\sqrt[3]{y} \cdot \sqrt[3]{y}} \cdot \frac{z}{\sqrt[3]{y}}\right|\]
\left|\frac{x + 4}{y} - \frac{x}{y} \cdot z\right|
\left|\frac{x + 4}{y} - \frac{x}{\sqrt[3]{y} \cdot \sqrt[3]{y}} \cdot \frac{z}{\sqrt[3]{y}}\right|
double f(double x, double y, double z) {
        double r28774 = x;
        double r28775 = 4.0;
        double r28776 = r28774 + r28775;
        double r28777 = y;
        double r28778 = r28776 / r28777;
        double r28779 = r28774 / r28777;
        double r28780 = z;
        double r28781 = r28779 * r28780;
        double r28782 = r28778 - r28781;
        double r28783 = fabs(r28782);
        return r28783;
}

double f(double x, double y, double z) {
        double r28784 = x;
        double r28785 = 4.0;
        double r28786 = r28784 + r28785;
        double r28787 = y;
        double r28788 = r28786 / r28787;
        double r28789 = cbrt(r28787);
        double r28790 = r28789 * r28789;
        double r28791 = r28784 / r28790;
        double r28792 = z;
        double r28793 = r28792 / r28789;
        double r28794 = r28791 * r28793;
        double r28795 = r28788 - r28794;
        double r28796 = fabs(r28795);
        return r28796;
}

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 div-inv1.6

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

    \[\leadsto \left|\frac{x + 4}{y} - \color{blue}{x \cdot \left(\frac{1}{y} \cdot z\right)}\right|\]
  5. Simplified3.4

    \[\leadsto \left|\frac{x + 4}{y} - x \cdot \color{blue}{\frac{z}{y}}\right|\]
  6. Using strategy rm
  7. Applied add-cube-cbrt3.7

    \[\leadsto \left|\frac{x + 4}{y} - x \cdot \frac{z}{\color{blue}{\left(\sqrt[3]{y} \cdot \sqrt[3]{y}\right) \cdot \sqrt[3]{y}}}\right|\]
  8. Applied *-un-lft-identity3.7

    \[\leadsto \left|\frac{x + 4}{y} - x \cdot \frac{\color{blue}{1 \cdot z}}{\left(\sqrt[3]{y} \cdot \sqrt[3]{y}\right) \cdot \sqrt[3]{y}}\right|\]
  9. Applied times-frac3.7

    \[\leadsto \left|\frac{x + 4}{y} - x \cdot \color{blue}{\left(\frac{1}{\sqrt[3]{y} \cdot \sqrt[3]{y}} \cdot \frac{z}{\sqrt[3]{y}}\right)}\right|\]
  10. Applied associate-*r*2.0

    \[\leadsto \left|\frac{x + 4}{y} - \color{blue}{\left(x \cdot \frac{1}{\sqrt[3]{y} \cdot \sqrt[3]{y}}\right) \cdot \frac{z}{\sqrt[3]{y}}}\right|\]
  11. Simplified2.0

    \[\leadsto \left|\frac{x + 4}{y} - \color{blue}{\frac{x}{\sqrt[3]{y} \cdot \sqrt[3]{y}}} \cdot \frac{z}{\sqrt[3]{y}}\right|\]
  12. Final simplification2.0

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

Reproduce

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