Twelvefold way

In combinatorics, the twelvefold way is a systematic classification of 12 related enumerative problems concerning two finite sets, which include the classical problems of counting permutations, combinations, multisets, and partitions either of a set or of a number. The idea of the classification is credited to Gian-Carlo Rota, and the name was suggested by Joel Spencer.
Overview.
Let and be finite sets. Let formula_1 and formula_2 be the cardinality of the sets. Thus is an -set, and is an -set.
The general problem we consider is the enumeration of equivalence classes of functions formula_3.
The functions are subject to one of the three following restrictions:
There are four different equivalence relations which may be defined on the set of functions from to :
The three conditions on the functions and the four equivalence relations can be paired in ways.
The twelve problems of counting equivalence classes of functions do not involve the same difficulties, and there is not one systematic method for solving them. Two of the problems are trivial (the number of equivalence classes is 0 or 1), five problems have an answer in terms of a multiplicative formula of "n" and "x", and the remaining five problems have an answer in terms of combinatorial functions (Stirling numbers and the partition function for a given number of parts).
The incorporation of classical enumeration problems into this setting is as follows.
Viewpoints.
The various problems in the twelvefold way may be considered from different points of view.
Balls and boxes.
Traditionally many of the problems in the twelvefold way have been formulated in terms of placing balls in boxes (or some similar visualization) instead of defining functions. The set "N" can be identified with a set of balls, and "X" with a set of boxes; the function "ƒ" : then describes a way to distribute the balls into the boxes, namely by putting each ball "a" into box "ƒ"("a"). A function ascribes a unique image to each value in its domain; this property is reflected by the property that any ball can go into only one box (together with the requirement that no ball should remain outside of the boxes), whereas any box can accommodate (in principle) an arbitrary number of balls. Requiring in addition "ƒ" to be injective means forbidding to put more than one ball in any one box, while requiring "ƒ" to be surjective means insisting that every box contain at least one ball.
Counting modulo permutations of "N" or "X" (or both) is reflected by calling the balls or the boxes, respectively, "indistinguishable". This is an imprecise formulation (in practice individual balls and boxes can always be distinguished by their location, and one could not assign different balls to different boxes without distinguishing them), intended to indicate that different configurations are not to be counted separately if one can be transformed into the other by some interchange of balls or of boxes. This possibility of transformation is formalized by the action by permutations.
Sampling.
Another way to think of some of the cases is in terms of sampling, in statistics. Imagine a population of "X" items (or people), of which we choose "N". Two different schemes are normally described, known as "sampling with replacement" and "sampling without replacement". In the former case (sampling with replacement), once we've chosen an item, we put it back in the population, so that we might choose it again. The result is that each choice is independent of all the other choices, and the set of samples is technically referred to as independent identically distributed. In the latter case, however, once we've chosen an item, we put it aside so that we can't choose it again. This means that the act of choosing an item has an effect on all the following choices (the particular item can't be seen again), so our choices are dependent on one another.
A second distinction among sampling schemes is whether ordering matters. For example, if we have ten items, of which we choose two, then the choice (4,7) is different from (7,4) if ordering matters; on the other hand, if ordering does not matter, then the choices (4,7) and (7,4) are equivalent. (Another way to think of this is to sort each choice by the item number, and throw out any duplicates that result.) 
The first two rows and columns of the table below correspond to sampling with and without replacement, with and without consideration of order. The cases of sampling with replacement are found in the column labeled "Any "f"", while the cases of sampling without replacement are found in the column labeled "Injective "f"". The cases where ordering matters are found in the row labeled "Distinct," and the cases where ordering does not matter are found in the row labeled "S"n" orbits". Each table entry indicates how many different sets of choices there are, in a particular sampling scheme. Three of these table entries also correspond to probability distributions. Sampling with replacement where ordering matters is comparable to describing the joint distribution of "N" separate random variables, each with an "X"-fold categorical distribution. Sampling with replacement where ordering doesn't matter, however, is comparable to describing a single multinomial distribution of "N" draws from an "X"-fold category, where only the number seen of each category matters. Sampling without replacement where ordering doesn't matter is comparable to a single multivariate hypergeometric distribution. Sampling without replacement where order does matter does not seem to correspond to a probability distribution. Note that in all the "injective" cases (i.e. sampling without replacement), the number of sets of choices is zero unless . ("Comparable" in the above cases means that each element of the sample space of the corresponding distribution corresponds to a separate set of choices, and hence the number in the appropriate box indicates the size of the sample space for the given distribution.)
From the perspective of sampling, the column labeled "Surjective "f"" is somewhat strange: Essentially, we keep sampling with replacement until we've chosen each item at least once. Then, we count how many choices we've made, and if it's not equal to "N", throw out the entire set and repeat. This is vaguely comparable to the coupon collector's problem, where the process involves "collecting" (by sampling with replacement) a set of "X" coupons until each coupon has been seen at least once. Note that in all "surjective" cases, the number of sets of choices is zero unless .
Labelling, selection, grouping.
A function "ƒ" : can be considered from the perspective of "X" or of "N". This leads to different views:
These points of view are not equally suited to all cases. The labelling and selection points of view are not well compatible with permutation of the elements of "X", since this changes the labels or the selection; on the other hand the grouping point of view does not give complete information about the configuration "unless" the elements of "X" may be freely permuted. The labelling and selection points of view are more or less equivalent when "N" is not permuted, but when it is, the selection point of view is more suited. The selection can then be viewed as an unordered selection: a single choice of a (multi-)set of "n" elements from "X" is made.
Labelling and selection with or without repetition.
When viewing "ƒ" as a labelling of the elements of "N", the latter may be thought of as arranged in a sequence, and the labels from "X" as being successively assigned to them. A requirement that "ƒ" be injective means that no label can be used a second time; the result is a sequence of labels "without repetition". In the absence of such a requirement, the terminology "sequences with repetition" is used, meaning that labels may be used more than once (although sequences that happen to be without repetition are also allowed).
When viewing "ƒ" as an unordered selection of the elements of "X", the same kind of distinction applies. If "ƒ" must be injective, then the selection must involve "n" distinct elements of "X", so it is a subset of "X" of size "n", also called an "n"-combination. Without the requirement, one and the same element of "X" may occur multiple times in the selection, and the result is a multiset of size "n" of elements from "X", also called an "n"-multicombination or "n"-combination with repetition.
The requirement that "ƒ" be surjective, from the viewpoint of labelling elements of "N", means that every label is to be used at least once; from the viewpoint of selection from "X", it means that every element of "X" must be included in the selection at least once. Labelling with surjection is equivalent to a grouping of elements of "N" followed by labeling each group by an element of "X", and is accordingly somewhat more complicated to describe mathematically.
Partitions of sets and numbers.
When viewing "ƒ" as a grouping of the elements of "N" (which assumes one identifies under permutations of "X"), requiring "ƒ" to be surjective means the number of groups must be exactly "x". Without this requirement the number of groups can be at most "x". The requirement of injective "ƒ" means each element of "N" must be a group in itself, which leaves at most one valid grouping and therefore gives a rather uninteresting counting problem.
When in addition one identifies under permutations of "N", this amounts to forgetting the groups themselves but retaining only their sizes. These sizes moreover do not come in any definite order, while the same size may occur more than once; one may choose to arrange them into a weakly decreasing list of numbers, whose sum is the number "n". This gives the combinatorial notion of a partition of the number "n", into exactly "x" (for surjective "ƒ") or at most "x" (for arbitrary "ƒ") parts.
Formulas.
Formulas for the different cases of the twelvefold way are summarized in the following table; each table entry links to a subsection below explaining the formula.