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 r244238 = x;
double r244239 = y;
double r244240 = r244239 - r244238;
double r244241 = 6.0;
double r244242 = r244240 * r244241;
double r244243 = 2.0;
double r244244 = 3.0;
double r244245 = r244243 / r244244;
double r244246 = z;
double r244247 = r244245 - r244246;
double r244248 = r244242 * r244247;
double r244249 = r244238 + r244248;
return r244249;
}
double f(double x, double y, double z) {
double r244250 = x;
double r244251 = y;
double r244252 = r244251 - r244250;
double r244253 = 2.0;
double r244254 = 3.0;
double r244255 = r244253 / r244254;
double r244256 = z;
double r244257 = r244255 - r244256;
double r244258 = 6.0;
double r244259 = r244257 * r244258;
double r244260 = r244252 * r244259;
double r244261 = r244250 + r244260;
return r244261;
}



Bits error versus x



Bits error versus y



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