Do an in-place intersection like this:
require 'set' s = (1..5).to_set t = (4..8).to_set s.reject! {|x| not t.include? x} # => #<Set: {5, 4}>