Average Error: 0.4 → 0.2
Time: 16.4s
Precision: 64
\[x + \left(\left(y - x\right) \cdot 6\right) \cdot \left(\frac{2}{3} - z\right)\]
\[\left(y - x\right) \cdot \left(\frac{2}{3} \cdot 6\right) - \left(\left(6 \cdot \left(z \cdot y\right) + \left(-x\right) \cdot \left(z \cdot 6\right)\right) - x\right)\]
x + \left(\left(y - x\right) \cdot 6\right) \cdot \left(\frac{2}{3} - z\right)
\left(y - x\right) \cdot \left(\frac{2}{3} \cdot 6\right) - \left(\left(6 \cdot \left(z \cdot y\right) + \left(-x\right) \cdot \left(z \cdot 6\right)\right) - x\right)
double f(double x, double y, double z) {
        double r230611 = x;
        double r230612 = y;
        double r230613 = r230612 - r230611;
        double r230614 = 6.0;
        double r230615 = r230613 * r230614;
        double r230616 = 2.0;
        double r230617 = 3.0;
        double r230618 = r230616 / r230617;
        double r230619 = z;
        double r230620 = r230618 - r230619;
        double r230621 = r230615 * r230620;
        double r230622 = r230611 + r230621;
        return r230622;
}

double f(double x, double y, double z) {
        double r230623 = y;
        double r230624 = x;
        double r230625 = r230623 - r230624;
        double r230626 = 2.0;
        double r230627 = 3.0;
        double r230628 = r230626 / r230627;
        double r230629 = 6.0;
        double r230630 = r230628 * r230629;
        double r230631 = r230625 * r230630;
        double r230632 = z;
        double r230633 = r230632 * r230623;
        double r230634 = r230629 * r230633;
        double r230635 = -r230624;
        double r230636 = r230632 * r230629;
        double r230637 = r230635 * r230636;
        double r230638 = r230634 + r230637;
        double r230639 = r230638 - r230624;
        double r230640 = r230631 - r230639;
        return r230640;
}

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. Simplified0.4

    \[\leadsto \color{blue}{6 \cdot \left(\left(y - x\right) \cdot \left(\frac{2}{3} - z\right)\right) + x}\]
  3. Using strategy rm
  4. Applied sub-neg0.4

    \[\leadsto 6 \cdot \left(\left(y - x\right) \cdot \color{blue}{\left(\frac{2}{3} + \left(-z\right)\right)}\right) + x\]
  5. Applied distribute-lft-in0.4

    \[\leadsto 6 \cdot \color{blue}{\left(\left(y - x\right) \cdot \frac{2}{3} + \left(y - x\right) \cdot \left(-z\right)\right)} + x\]
  6. Applied distribute-lft-in0.4

    \[\leadsto \color{blue}{\left(6 \cdot \left(\left(y - x\right) \cdot \frac{2}{3}\right) + 6 \cdot \left(\left(y - x\right) \cdot \left(-z\right)\right)\right)} + x\]
  7. Simplified0.2

    \[\leadsto \left(\color{blue}{\left(6 \cdot \frac{2}{3}\right) \cdot \left(y - x\right)} + 6 \cdot \left(\left(y - x\right) \cdot \left(-z\right)\right)\right) + x\]
  8. Simplified0.2

    \[\leadsto \left(\left(6 \cdot \frac{2}{3}\right) \cdot \left(y - x\right) + \color{blue}{\left(z \cdot \left(-6\right)\right) \cdot \left(y - x\right)}\right) + x\]
  9. Using strategy rm
  10. Applied distribute-rgt-neg-out0.2

    \[\leadsto \left(\left(6 \cdot \frac{2}{3}\right) \cdot \left(y - x\right) + \color{blue}{\left(-z \cdot 6\right)} \cdot \left(y - x\right)\right) + x\]
  11. Applied distribute-lft-neg-out0.2

    \[\leadsto \left(\left(6 \cdot \frac{2}{3}\right) \cdot \left(y - x\right) + \color{blue}{\left(-\left(z \cdot 6\right) \cdot \left(y - x\right)\right)}\right) + x\]
  12. Applied unsub-neg0.2

    \[\leadsto \color{blue}{\left(\left(6 \cdot \frac{2}{3}\right) \cdot \left(y - x\right) - \left(z \cdot 6\right) \cdot \left(y - x\right)\right)} + x\]
  13. Applied associate-+l-0.2

    \[\leadsto \color{blue}{\left(6 \cdot \frac{2}{3}\right) \cdot \left(y - x\right) - \left(\left(z \cdot 6\right) \cdot \left(y - x\right) - x\right)}\]
  14. Simplified0.2

    \[\leadsto \left(6 \cdot \frac{2}{3}\right) \cdot \left(y - x\right) - \color{blue}{\left(\left(6 \cdot z\right) \cdot \left(y - x\right) - x\right)}\]
  15. Using strategy rm
  16. Applied sub-neg0.2

    \[\leadsto \left(6 \cdot \frac{2}{3}\right) \cdot \left(y - x\right) - \left(\left(6 \cdot z\right) \cdot \color{blue}{\left(y + \left(-x\right)\right)} - x\right)\]
  17. Applied distribute-lft-in0.2

    \[\leadsto \left(6 \cdot \frac{2}{3}\right) \cdot \left(y - x\right) - \left(\color{blue}{\left(\left(6 \cdot z\right) \cdot y + \left(6 \cdot z\right) \cdot \left(-x\right)\right)} - x\right)\]
  18. Simplified0.2

    \[\leadsto \left(6 \cdot \frac{2}{3}\right) \cdot \left(y - x\right) - \left(\left(\color{blue}{y \cdot \left(6 \cdot z\right)} + \left(6 \cdot z\right) \cdot \left(-x\right)\right) - x\right)\]
  19. Using strategy rm
  20. Applied pow10.2

    \[\leadsto \left(6 \cdot \frac{2}{3}\right) \cdot \left(y - x\right) - \left(\left(y \cdot \left(6 \cdot \color{blue}{{z}^{1}}\right) + \left(6 \cdot z\right) \cdot \left(-x\right)\right) - x\right)\]
  21. Applied pow10.2

    \[\leadsto \left(6 \cdot \frac{2}{3}\right) \cdot \left(y - x\right) - \left(\left(y \cdot \left(\color{blue}{{6}^{1}} \cdot {z}^{1}\right) + \left(6 \cdot z\right) \cdot \left(-x\right)\right) - x\right)\]
  22. Applied pow-prod-down0.2

    \[\leadsto \left(6 \cdot \frac{2}{3}\right) \cdot \left(y - x\right) - \left(\left(y \cdot \color{blue}{{\left(6 \cdot z\right)}^{1}} + \left(6 \cdot z\right) \cdot \left(-x\right)\right) - x\right)\]
  23. Applied pow10.2

    \[\leadsto \left(6 \cdot \frac{2}{3}\right) \cdot \left(y - x\right) - \left(\left(\color{blue}{{y}^{1}} \cdot {\left(6 \cdot z\right)}^{1} + \left(6 \cdot z\right) \cdot \left(-x\right)\right) - x\right)\]
  24. Applied pow-prod-down0.2

    \[\leadsto \left(6 \cdot \frac{2}{3}\right) \cdot \left(y - x\right) - \left(\left(\color{blue}{{\left(y \cdot \left(6 \cdot z\right)\right)}^{1}} + \left(6 \cdot z\right) \cdot \left(-x\right)\right) - x\right)\]
  25. Simplified0.2

    \[\leadsto \left(6 \cdot \frac{2}{3}\right) \cdot \left(y - x\right) - \left(\left({\color{blue}{\left(\left(y \cdot z\right) \cdot 6\right)}}^{1} + \left(6 \cdot z\right) \cdot \left(-x\right)\right) - x\right)\]
  26. Final simplification0.2

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

Reproduce

herbie shell --seed 2019195 
(FPCore (x y z)
  :name "Data.Colour.RGBSpace.HSL:hsl from colour-2.3.3, D"
  (+ x (* (* (- y x) 6.0) (- (/ 2.0 3.0) z))))