Raise a NameError instead.
Test for ::Generator first, to prevent warnings on JRuby.
Include Permute::Mixin into Set.
Put all monkey patches in extensions/ directories.
"k" local variable is more appropriate here.
Added a @author tag.
Don't call choose() repeatively, since it has to call self.to_a.
Removed aliases from Choose::Mixin and Permute::Mixin.
Use better @see tags.
Improved the @example for choose.
Improved the @example for permute.
Make sure choose filters out repeated elements.
No need for zero?, 0.0 == 0.
Removed empty? checks.
Cleaned up the powerset @example.
Removed old examples.
Changed Combinatorics::PowerSet::Mixin to use Choose::Mixin.
Changed choose to always return Sets.
Alias choose to combinations.
Inspect self in the exception.
Corrected an @example.
Reference the cartesian_product method.
Filled in an @example.
Added @since tags.