x + \left(\left(y - x\right) \cdot 6\right) \cdot \left(\frac{2}{3} - z\right)x + \left(y - x\right) \cdot \left(6 \cdot \left(\frac{2}{3} - z\right)\right)double f(double x, double y, double z) {
double r334888 = x;
double r334889 = y;
double r334890 = r334889 - r334888;
double r334891 = 6.0;
double r334892 = r334890 * r334891;
double r334893 = 2.0;
double r334894 = 3.0;
double r334895 = r334893 / r334894;
double r334896 = z;
double r334897 = r334895 - r334896;
double r334898 = r334892 * r334897;
double r334899 = r334888 + r334898;
return r334899;
}
double f(double x, double y, double z) {
double r334900 = x;
double r334901 = y;
double r334902 = r334901 - r334900;
double r334903 = 6.0;
double r334904 = 2.0;
double r334905 = 3.0;
double r334906 = r334904 / r334905;
double r334907 = z;
double r334908 = r334906 - r334907;
double r334909 = r334903 * r334908;
double r334910 = r334902 * r334909;
double r334911 = r334900 + r334910;
return r334911;
}



Bits error versus x



Bits error versus y



Bits error versus z
Results
Initial program 0.4
rmApplied associate-*l*0.3
Final simplification0.3
herbie shell --seed 2020065
(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))))