bump semigroup