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 r221312 = x;
double r221313 = y;
double r221314 = r221313 - r221312;
double r221315 = 6.0;
double r221316 = r221314 * r221315;
double r221317 = 2.0;
double r221318 = 3.0;
double r221319 = r221317 / r221318;
double r221320 = z;
double r221321 = r221319 - r221320;
double r221322 = r221316 * r221321;
double r221323 = r221312 + r221322;
return r221323;
}
double f(double x, double y, double z) {
double r221324 = x;
double r221325 = y;
double r221326 = r221325 - r221324;
double r221327 = 2.0;
double r221328 = 3.0;
double r221329 = r221327 / r221328;
double r221330 = z;
double r221331 = r221329 - r221330;
double r221332 = 6.0;
double r221333 = r221331 * r221332;
double r221334 = r221326 * r221333;
double r221335 = r221324 + r221334;
return r221335;
}



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 2019305
(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))))