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 r1104 = x;
double r1105 = y;
double r1106 = r1105 - r1104;
double r1107 = 6.0;
double r1108 = r1106 * r1107;
double r1109 = 2.0;
double r1110 = 3.0;
double r1111 = r1109 / r1110;
double r1112 = z;
double r1113 = r1111 - r1112;
double r1114 = r1108 * r1113;
double r1115 = r1104 + r1114;
return r1115;
}
double f(double x, double y, double z) {
double r1116 = x;
double r1117 = y;
double r1118 = r1117 - r1116;
double r1119 = 6.0;
double r1120 = 2.0;
double r1121 = 3.0;
double r1122 = r1120 / r1121;
double r1123 = z;
double r1124 = r1122 - r1123;
double r1125 = r1119 * r1124;
double r1126 = r1118 * r1125;
double r1127 = r1116 + r1126;
return r1127;
}



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