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 r261203 = x;
double r261204 = y;
double r261205 = r261204 - r261203;
double r261206 = 6.0;
double r261207 = r261205 * r261206;
double r261208 = 2.0;
double r261209 = 3.0;
double r261210 = r261208 / r261209;
double r261211 = z;
double r261212 = r261210 - r261211;
double r261213 = r261207 * r261212;
double r261214 = r261203 + r261213;
return r261214;
}
double f(double x, double y, double z) {
double r261215 = x;
double r261216 = y;
double r261217 = r261216 - r261215;
double r261218 = 6.0;
double r261219 = 2.0;
double r261220 = 3.0;
double r261221 = r261219 / r261220;
double r261222 = z;
double r261223 = r261221 - r261222;
double r261224 = r261218 * r261223;
double r261225 = r261217 * r261224;
double r261226 = r261215 + r261225;
return r261226;
}



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