x + \left(\left(y - x\right) \cdot 6\right) \cdot \left(\frac{2}{3} - z\right)\left(x + \left(\left(y - x\right) \cdot 6\right) \cdot \frac{2}{3}\right) + \left(\left(y - x\right) \cdot 6\right) \cdot \left(-z\right)double f(double x, double y, double z) {
double r35877746 = x;
double r35877747 = y;
double r35877748 = r35877747 - r35877746;
double r35877749 = 6.0;
double r35877750 = r35877748 * r35877749;
double r35877751 = 2.0;
double r35877752 = 3.0;
double r35877753 = r35877751 / r35877752;
double r35877754 = z;
double r35877755 = r35877753 - r35877754;
double r35877756 = r35877750 * r35877755;
double r35877757 = r35877746 + r35877756;
return r35877757;
}
double f(double x, double y, double z) {
double r35877758 = x;
double r35877759 = y;
double r35877760 = r35877759 - r35877758;
double r35877761 = 6.0;
double r35877762 = r35877760 * r35877761;
double r35877763 = 2.0;
double r35877764 = 3.0;
double r35877765 = r35877763 / r35877764;
double r35877766 = r35877762 * r35877765;
double r35877767 = r35877758 + r35877766;
double r35877768 = z;
double r35877769 = -r35877768;
double r35877770 = r35877762 * r35877769;
double r35877771 = r35877767 + r35877770;
return r35877771;
}



Bits error versus x



Bits error versus y



Bits error versus z
Results
Initial program 0.4
rmApplied sub-neg0.4
Applied distribute-lft-in0.4
Applied associate-+r+0.4
Final simplification0.4
herbie shell --seed 2019173
(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))))