Array#&で集合の積
配列同士の & をとると、集合の積になります。refe "Array#&" 参照。
以下では2の倍数twosと3の倍数threesの積をとって、6の倍数を得ています。
twos = [] threes = [] (0..10).each do |k| twos << 2 * k threes << 3 * k end p twos #=> [0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20] p threes #=> [0, 3, 6, 9, 12, 15, 18, 21, 24, 27, 30] p twos & threes #=> [0, 6, 12, 18]