Average Error: 0.4 → 1.4
Time: 18.2s
Precision: 64
\[x + \left(\left(y - x\right) \cdot 6\right) \cdot \left(\frac{2}{3} - z\right)\]
\[\left(\sqrt[3]{x + \left(\left(y - x\right) \cdot 6\right) \cdot \left(\frac{2}{3} - z\right)} \cdot \sqrt[3]{x + \left(\left(y - x\right) \cdot 6\right) \cdot \left(\frac{2}{3} - z\right)}\right) \cdot \sqrt[3]{x + \left(\left(y - x\right) \cdot 6\right) \cdot \left(\frac{2}{3} - z\right)}\]
x + \left(\left(y - x\right) \cdot 6\right) \cdot \left(\frac{2}{3} - z\right)
\left(\sqrt[3]{x + \left(\left(y - x\right) \cdot 6\right) \cdot \left(\frac{2}{3} - z\right)} \cdot \sqrt[3]{x + \left(\left(y - x\right) \cdot 6\right) \cdot \left(\frac{2}{3} - z\right)}\right) \cdot \sqrt[3]{x + \left(\left(y - x\right) \cdot 6\right) \cdot \left(\frac{2}{3} - z\right)}
double f(double x, double y, double z) {
        double r435933 = x;
        double r435934 = y;
        double r435935 = r435934 - r435933;
        double r435936 = 6.0;
        double r435937 = r435935 * r435936;
        double r435938 = 2.0;
        double r435939 = 3.0;
        double r435940 = r435938 / r435939;
        double r435941 = z;
        double r435942 = r435940 - r435941;
        double r435943 = r435937 * r435942;
        double r435944 = r435933 + r435943;
        return r435944;
}

double f(double x, double y, double z) {
        double r435945 = x;
        double r435946 = y;
        double r435947 = r435946 - r435945;
        double r435948 = 6.0;
        double r435949 = r435947 * r435948;
        double r435950 = 2.0;
        double r435951 = 3.0;
        double r435952 = r435950 / r435951;
        double r435953 = z;
        double r435954 = r435952 - r435953;
        double r435955 = r435949 * r435954;
        double r435956 = r435945 + r435955;
        double r435957 = cbrt(r435956);
        double r435958 = r435957 * r435957;
        double r435959 = r435958 * r435957;
        return r435959;
}

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 0.4

    \[x + \left(\left(y - x\right) \cdot 6\right) \cdot \left(\frac{2}{3} - z\right)\]
  2. Using strategy rm
  3. Applied add-cube-cbrt1.4

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

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

Reproduce

herbie shell --seed 2019209 
(FPCore (x y z)
  :name "Data.Colour.RGBSpace.HSL:hsl from colour-2.3.3, D"
  :precision binary64
  (+ x (* (* (- y x) 6) (- (/ 2 3) z))))