iterate over the power set of a set or list
set or list of elements
The function subsets is an iterator for generating the power set of a set one set at a time. It returns a table with two entries: finished and nextvalue.
The finished entry will be either true or false, depending on whether the end of the set has been reached. It is initially set to false.
The nextvalue entry is a procedure that traverses the power set. The result of a call to nextvalue will be the next set in the power set. When the entire set has been traversed, nextvalue will set the value of finished to true.
If the input L is a set, the subsets are returned as sets. If the input is a list, the subsets are returned as lists. Otherwise the only difference is in the order in which the subsets are generated.
The command with(combinat,subsets) allows the use of the abbreviated form of this command.
S ≔ subsets⁡1,2:
Download Help Document