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 r329561 = x;
double r329562 = y;
double r329563 = r329562 - r329561;
double r329564 = 6.0;
double r329565 = r329563 * r329564;
double r329566 = 2.0;
double r329567 = 3.0;
double r329568 = r329566 / r329567;
double r329569 = z;
double r329570 = r329568 - r329569;
double r329571 = r329565 * r329570;
double r329572 = r329561 + r329571;
return r329572;
}
double f(double x, double y, double z) {
double r329573 = x;
double r329574 = y;
double r329575 = r329574 - r329573;
double r329576 = 6.0;
double r329577 = 2.0;
double r329578 = 3.0;
double r329579 = r329577 / r329578;
double r329580 = z;
double r329581 = r329579 - r329580;
double r329582 = r329576 * r329581;
double r329583 = r329575 * r329582;
double r329584 = r329573 + r329583;
return r329584;
}



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