6 7 8 9 10 11 12 13 14
# File 'lib/standard/facets/set.rb', line 6 def power_set if empty? Set[ self ] else any_value = [to_a.first] subsubs = (self - any_value).power_set subsubs + subsubs.map{ |subset| subset + any_value } end end