this monoid rolls over when you do: Int.MaxValue + 1 == Int.MinValue.  Is that what Redis does?