[1, 2, 3].intersection([2, 3, 4]).intersection([0, 2, 6]) # => [2] [1, 2, 3].intersection([2, 3, 4], [0, 2, 6]) # => [2] [1, 2, 3] & [2, 3, 4] & [0, 2, 6] # => [2]x = [1, 1, 2, 4] y = [1, 2, 2, 2] # intersection x & y # => [1, 2] # union x | y # => [1, 2, 4] # difference x - y # => [4]