Average Error: 1.6 → 2.2
Time: 14.0s
Precision: 64
\[\left|\frac{x + 4}{y} - \frac{x}{y} \cdot z\right|\]
\[\left|\frac{4 + x}{y} - \left(\frac{x}{\sqrt[3]{y}} \cdot z\right) \cdot \frac{1}{\sqrt[3]{y} \cdot \sqrt[3]{y}}\right|\]
\left|\frac{x + 4}{y} - \frac{x}{y} \cdot z\right|
\left|\frac{4 + x}{y} - \left(\frac{x}{\sqrt[3]{y}} \cdot z\right) \cdot \frac{1}{\sqrt[3]{y} \cdot \sqrt[3]{y}}\right|
double f(double x, double y, double z) {
        double r1544294 = x;
        double r1544295 = 4.0;
        double r1544296 = r1544294 + r1544295;
        double r1544297 = y;
        double r1544298 = r1544296 / r1544297;
        double r1544299 = r1544294 / r1544297;
        double r1544300 = z;
        double r1544301 = r1544299 * r1544300;
        double r1544302 = r1544298 - r1544301;
        double r1544303 = fabs(r1544302);
        return r1544303;
}

double f(double x, double y, double z) {
        double r1544304 = 4.0;
        double r1544305 = x;
        double r1544306 = r1544304 + r1544305;
        double r1544307 = y;
        double r1544308 = r1544306 / r1544307;
        double r1544309 = cbrt(r1544307);
        double r1544310 = r1544305 / r1544309;
        double r1544311 = z;
        double r1544312 = r1544310 * r1544311;
        double r1544313 = 1.0;
        double r1544314 = r1544309 * r1544309;
        double r1544315 = r1544313 / r1544314;
        double r1544316 = r1544312 * r1544315;
        double r1544317 = r1544308 - r1544316;
        double r1544318 = fabs(r1544317);
        return r1544318;
}

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 *-un-lft-identity1.9

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

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

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

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

Reproduce

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