Partitioning or Classifying a Set
require 'set' p s = Set.new((1..10).collect) # => #<Set: {5, 6, 1, 7, 2, 8, 3, 9, 4, 10}>