x + \left(\left(y - x\right) \cdot 6\right) \cdot \left(\frac{2}{3} - z\right)\mathsf{fma}\left(y - x, 6 \cdot \left(\frac{2}{3} - z\right), x\right)double f(double x, double y, double z) {
double r261137 = x;
double r261138 = y;
double r261139 = r261138 - r261137;
double r261140 = 6.0;
double r261141 = r261139 * r261140;
double r261142 = 2.0;
double r261143 = 3.0;
double r261144 = r261142 / r261143;
double r261145 = z;
double r261146 = r261144 - r261145;
double r261147 = r261141 * r261146;
double r261148 = r261137 + r261147;
return r261148;
}
double f(double x, double y, double z) {
double r261149 = y;
double r261150 = x;
double r261151 = r261149 - r261150;
double r261152 = 6.0;
double r261153 = 2.0;
double r261154 = 3.0;
double r261155 = r261153 / r261154;
double r261156 = z;
double r261157 = r261155 - r261156;
double r261158 = r261152 * r261157;
double r261159 = fma(r261151, r261158, r261150);
return r261159;
}



Bits error versus x



Bits error versus y



Bits error versus z
Initial program 0.4
Simplified0.2
Final simplification0.2
herbie shell --seed 2020035 +o rules:numerics
(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))))