x + \left(\left(y - x\right) \cdot 6\right) \cdot \left(\frac{2}{3} - z\right)x + \left(y - x\right) \cdot \left(\left(\frac{2}{3} - z\right) \cdot 6\right)double f(double x, double y, double z) {
double r15971965 = x;
double r15971966 = y;
double r15971967 = r15971966 - r15971965;
double r15971968 = 6.0;
double r15971969 = r15971967 * r15971968;
double r15971970 = 2.0;
double r15971971 = 3.0;
double r15971972 = r15971970 / r15971971;
double r15971973 = z;
double r15971974 = r15971972 - r15971973;
double r15971975 = r15971969 * r15971974;
double r15971976 = r15971965 + r15971975;
return r15971976;
}
double f(double x, double y, double z) {
double r15971977 = x;
double r15971978 = y;
double r15971979 = r15971978 - r15971977;
double r15971980 = 2.0;
double r15971981 = 3.0;
double r15971982 = r15971980 / r15971981;
double r15971983 = z;
double r15971984 = r15971982 - r15971983;
double r15971985 = 6.0;
double r15971986 = r15971984 * r15971985;
double r15971987 = r15971979 * r15971986;
double r15971988 = r15971977 + r15971987;
return r15971988;
}



Bits error versus x



Bits error versus y



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