x + \left(\left(y - x\right) \cdot 6.0\right) \cdot \left(\frac{2.0}{3.0} - z\right)\left(\frac{2.0}{3.0} \cdot \left(\left(y - x\right) \cdot 6.0\right) + \left(\left(y - x\right) \cdot 6.0\right) \cdot \left(-z\right)\right) + xdouble f(double x, double y, double z) {
double r17621774 = x;
double r17621775 = y;
double r17621776 = r17621775 - r17621774;
double r17621777 = 6.0;
double r17621778 = r17621776 * r17621777;
double r17621779 = 2.0;
double r17621780 = 3.0;
double r17621781 = r17621779 / r17621780;
double r17621782 = z;
double r17621783 = r17621781 - r17621782;
double r17621784 = r17621778 * r17621783;
double r17621785 = r17621774 + r17621784;
return r17621785;
}
double f(double x, double y, double z) {
double r17621786 = 2.0;
double r17621787 = 3.0;
double r17621788 = r17621786 / r17621787;
double r17621789 = y;
double r17621790 = x;
double r17621791 = r17621789 - r17621790;
double r17621792 = 6.0;
double r17621793 = r17621791 * r17621792;
double r17621794 = r17621788 * r17621793;
double r17621795 = z;
double r17621796 = -r17621795;
double r17621797 = r17621793 * r17621796;
double r17621798 = r17621794 + r17621797;
double r17621799 = r17621798 + r17621790;
return r17621799;
}



Bits error versus x



Bits error versus y



Bits error versus z
Results
Initial program 0.4
rmApplied sub-neg0.4
Applied distribute-rgt-in0.4
Final simplification0.4
herbie shell --seed 2019165
(FPCore (x y z)
:name "Data.Colour.RGBSpace.HSL:hsl from colour-2.3.3, D"
(+ x (* (* (- y x) 6.0) (- (/ 2.0 3.0) z))))