Note value Semigroup must be commutative