Average Error: 0.3 → 0.4
Time: 5.7s
Precision: 64
\[x + \left(\left(y - x\right) \cdot 6\right) \cdot z\]
\[x + \left(\left(\left(y - x\right) \cdot \left(\sqrt[3]{\sqrt{6}} \cdot \sqrt[3]{\sqrt{6}}\right)\right) \cdot \sqrt[3]{\sqrt{6}}\right) \cdot \left(\sqrt{6} \cdot z\right)\]
x + \left(\left(y - x\right) \cdot 6\right) \cdot z
x + \left(\left(\left(y - x\right) \cdot \left(\sqrt[3]{\sqrt{6}} \cdot \sqrt[3]{\sqrt{6}}\right)\right) \cdot \sqrt[3]{\sqrt{6}}\right) \cdot \left(\sqrt{6} \cdot z\right)
double f(double x, double y, double z) {
        double r998678 = x;
        double r998679 = y;
        double r998680 = r998679 - r998678;
        double r998681 = 6.0;
        double r998682 = r998680 * r998681;
        double r998683 = z;
        double r998684 = r998682 * r998683;
        double r998685 = r998678 + r998684;
        return r998685;
}

double f(double x, double y, double z) {
        double r998686 = x;
        double r998687 = y;
        double r998688 = r998687 - r998686;
        double r998689 = 6.0;
        double r998690 = sqrt(r998689);
        double r998691 = cbrt(r998690);
        double r998692 = r998691 * r998691;
        double r998693 = r998688 * r998692;
        double r998694 = r998693 * r998691;
        double r998695 = z;
        double r998696 = r998690 * r998695;
        double r998697 = r998694 * r998696;
        double r998698 = r998686 + r998697;
        return r998698;
}

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

Target

Original0.3
Target0.2
Herbie0.4
\[x - \left(6 \cdot z\right) \cdot \left(x - y\right)\]

Derivation

  1. Initial program 0.3

    \[x + \left(\left(y - x\right) \cdot 6\right) \cdot z\]
  2. Using strategy rm
  3. Applied add-sqr-sqrt0.6

    \[\leadsto x + \left(\left(y - x\right) \cdot \color{blue}{\left(\sqrt{6} \cdot \sqrt{6}\right)}\right) \cdot z\]
  4. Applied associate-*r*0.7

    \[\leadsto x + \color{blue}{\left(\left(\left(y - x\right) \cdot \sqrt{6}\right) \cdot \sqrt{6}\right)} \cdot z\]
  5. Using strategy rm
  6. Applied add-cube-cbrt0.3

    \[\leadsto x + \left(\left(\left(y - x\right) \cdot \color{blue}{\left(\left(\sqrt[3]{\sqrt{6}} \cdot \sqrt[3]{\sqrt{6}}\right) \cdot \sqrt[3]{\sqrt{6}}\right)}\right) \cdot \sqrt{6}\right) \cdot z\]
  7. Applied associate-*r*0.4

    \[\leadsto x + \left(\color{blue}{\left(\left(\left(y - x\right) \cdot \left(\sqrt[3]{\sqrt{6}} \cdot \sqrt[3]{\sqrt{6}}\right)\right) \cdot \sqrt[3]{\sqrt{6}}\right)} \cdot \sqrt{6}\right) \cdot z\]
  8. Using strategy rm
  9. Applied associate-*l*0.4

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

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

Reproduce

herbie shell --seed 2019354 +o rules:numerics
(FPCore (x y z)
  :name "Data.Colour.RGBSpace.HSL:hsl from colour-2.3.3, E"
  :precision binary64

  :herbie-target
  (- x (* (* 6 z) (- x y)))

  (+ x (* (* (- y x) 6) z)))