1
$\begingroup$

Example for n=3:

We have the set of length $3^2$=9: {1,2,3,4,5,6,7,8,9}

We partition it into 3 sets each of length 3, for example {{1,2,3},{4,5,6},{7,8,9}}. How many distinct partitions there exist (order of elements is irrelevant)? I brute-forced it:

{{{1,2,3},{4,5,6},{7,8,9}},{{1,2,3},{4,5,7},{6,8,9}},{{1,2,3},{4,5,8},{6,7,9}},{{1,2,3},{4,5,9},{6,7,8}},{{1,2,3},{4,6,7},{5,8,9}},{{1,2,3},{4,6,8},{5,7,9}},{{1,2,3},{4,6,9},{5,7,8}},{{1,2,3},{4,7,8},{5,6,9}},{{1,2,3},{4,7,9},{5,6,8}},{{1,2,3},{4,8,9},{5,6,7}},{{1,2,4},{3,5,6},{7,8,9}},{{1,2,4},{3,5,7},{6,8,9}},{{1,2,4},{3,5,8},{6,7,9}},{{1,2,4},{3,5,9},{6,7,8}},{{1,2,4},{3,6,7},{5,8,9}},{{1,2,4},{3,6,8},{5,7,9}},{{1,2,4},{3,6,9},{5,7,8}},{{1,2,4},{3,7,8},{5,6,9}},{{1,2,4},{3,7,9},{5,6,8}},{{1,2,4},{3,8,9},{5,6,7}},{{1,2,5},{3,4,6},{7,8,9}},{{1,2,5},{3,4,7},{6,8,9}},{{1,2,5},{3,4,8},{6,7,9}},{{1,2,5},{3,4,9},{6,7,8}},{{1,2,5},{3,6,7},{4,8,9}},{{1,2,5},{3,6,8},{4,7,9}},{{1,2,5},{3,6,9},{4,7,8}},{{1,2,5},{3,7,8},{4,6,9}},{{1,2,5},{3,7,9},{4,6,8}},{{1,2,5},{3,8,9},{4,6,7}},{{1,2,6},{3,4,5},{7,8,9}},{{1,2,6},{3,4,7},{5,8,9}},{{1,2,6},{3,4,8},{5,7,9}},{{1,2,6},{3,4,9},{5,7,8}},{{1,2,6},{3,5,7},{4,8,9}},{{1,2,6},{3,5,8},{4,7,9}},{{1,2,6},{3,5,9},{4,7,8}},{{1,2,6},{3,7,8},{4,5,9}},{{1,2,6},{3,7,9},{4,5,8}},{{1,2,6},{3,8,9},{4,5,7}},{{1,2,7},{3,4,5},{6,8,9}},{{1,2,7},{3,4,6},{5,8,9}},{{1,2,7},{3,4,8},{5,6,9}},{{1,2,7},{3,4,9},{5,6,8}},{{1,2,7},{3,5,6},{4,8,9}},{{1,2,7},{3,5,8},{4,6,9}},{{1,2,7},{3,5,9},{4,6,8}},{{1,2,7},{3,6,8},{4,5,9}},{{1,2,7},{3,6,9},{4,5,8}},{{1,2,7},{3,8,9},{4,5,6}},{{1,2,8},{3,4,5},{6,7,9}},{{1,2,8},{3,4,6},{5,7,9}},{{1,2,8},{3,4,7},{5,6,9}},{{1,2,8},{3,4,9},{5,6,7}},{{1,2,8},{3,5,6},{4,7,9}},{{1,2,8},{3,5,7},{4,6,9}},{{1,2,8},{3,5,9},{4,6,7}},{{1,2,8},{3,6,7},{4,5,9}},{{1,2,8},{3,6,9},{4,5,7}},{{1,2,8},{3,7,9},{4,5,6}},{{1,2,9},{3,4,5},{6,7,8}},{{1,2,9},{3,4,6},{5,7,8}},{{1,2,9},{3,4,7},{5,6,8}},{{1,2,9},{3,4,8},{5,6,7}},{{1,2,9},{3,5,6},{4,7,8}},{{1,2,9},{3,5,7},{4,6,8}},{{1,2,9},{3,5,8},{4,6,7}},{{1,2,9},{3,6,7},{4,5,8}},{{1,2,9},{3,6,8},{4,5,7}},{{1,2,9},{3,7,8},{4,5,6}},{{1,3,4},{2,5,6},{7,8,9}},{{1,3,4},{2,5,7},{6,8,9}},{{1,3,4},{2,5,8},{6,7,9}},{{1,3,4},{2,5,9},{6,7,8}},{{1,3,4},{2,6,7},{5,8,9}},{{1,3,4},{2,6,8},{5,7,9}},{{1,3,4},{2,6,9},{5,7,8}},{{1,3,4},{2,7,8},{5,6,9}},{{1,3,4},{2,7,9},{5,6,8}},{{1,3,4},{2,8,9},{5,6,7}},{{1,3,5},{2,4,6},{7,8,9}},{{1,3,5},{2,4,7},{6,8,9}},{{1,3,5},{2,4,8},{6,7,9}},{{1,3,5},{2,4,9},{6,7,8}},{{1,3,5},{2,6,7},{4,8,9}},{{1,3,5},{2,6,8},{4,7,9}},{{1,3,5},{2,6,9},{4,7,8}},{{1,3,5},{2,7,8},{4,6,9}},{{1,3,5},{2,7,9},{4,6,8}},{{1,3,5},{2,8,9},{4,6,7}},{{1,3,6},{2,4,5},{7,8,9}},{{1,3,6},{2,4,7},{5,8,9}},{{1,3,6},{2,4,8},{5,7,9}},{{1,3,6},{2,4,9},{5,7,8}},{{1,3,6},{2,5,7},{4,8,9}},{{1,3,6},{2,5,8},{4,7,9}},{{1,3,6},{2,5,9},{4,7,8}},{{1,3,6},{2,7,8},{4,5,9}},{{1,3,6},{2,7,9},{4,5,8}},{{1,3,6},{2,8,9},{4,5,7}},{{1,3,7},{2,4,5},{6,8,9}},{{1,3,7},{2,4,6},{5,8,9}},{{1,3,7},{2,4,8},{5,6,9}},{{1,3,7},{2,4,9},{5,6,8}},{{1,3,7},{2,5,6},{4,8,9}},{{1,3,7},{2,5,8},{4,6,9}},{{1,3,7},{2,5,9},{4,6,8}},{{1,3,7},{2,6,8},{4,5,9}},{{1,3,7},{2,6,9},{4,5,8}},{{1,3,7},{2,8,9},{4,5,6}},{{1,3,8},{2,4,5},{6,7,9}},{{1,3,8},{2,4,6},{5,7,9}},{{1,3,8},{2,4,7},{5,6,9}},{{1,3,8},{2,4,9},{5,6,7}},{{1,3,8},{2,5,6},{4,7,9}},{{1,3,8},{2,5,7},{4,6,9}},{{1,3,8},{2,5,9},{4,6,7}},{{1,3,8},{2,6,7},{4,5,9}},{{1,3,8},{2,6,9},{4,5,7}},{{1,3,8},{2,7,9},{4,5,6}},{{1,3,9},{2,4,5},{6,7,8}},{{1,3,9},{2,4,6},{5,7,8}},{{1,3,9},{2,4,7},{5,6,8}},{{1,3,9},{2,4,8},{5,6,7}},{{1,3,9},{2,5,6},{4,7,8}},{{1,3,9},{2,5,7},{4,6,8}},{{1,3,9},{2,5,8},{4,6,7}},{{1,3,9},{2,6,7},{4,5,8}},{{1,3,9},{2,6,8},{4,5,7}},{{1,3,9},{2,7,8},{4,5,6}},{{1,4,5},{2,3,6},{7,8,9}},{{1,4,5},{2,3,7},{6,8,9}},{{1,4,5},{2,3,8},{6,7,9}},{{1,4,5},{2,3,9},{6,7,8}},{{1,4,5},{2,6,7},{3,8,9}},{{1,4,5},{2,6,8},{3,7,9}},{{1,4,5},{2,6,9},{3,7,8}},{{1,4,5},{2,7,8},{3,6,9}},{{1,4,5},{2,7,9},{3,6,8}},{{1,4,5},{2,8,9},{3,6,7}},{{1,4,6},{2,3,5},{7,8,9}},{{1,4,6},{2,3,7},{5,8,9}},{{1,4,6},{2,3,8},{5,7,9}},{{1,4,6},{2,3,9},{5,7,8}},{{1,4,6},{2,5,7},{3,8,9}},{{1,4,6},{2,5,8},{3,7,9}},{{1,4,6},{2,5,9},{3,7,8}},{{1,4,6},{2,7,8},{3,5,9}},{{1,4,6},{2,7,9},{3,5,8}},{{1,4,6},{2,8,9},{3,5,7}},{{1,4,7},{2,3,5},{6,8,9}},{{1,4,7},{2,3,6},{5,8,9}},{{1,4,7},{2,3,8},{5,6,9}},{{1,4,7},{2,3,9},{5,6,8}},{{1,4,7},{2,5,6},{3,8,9}},{{1,4,7},{2,5,8},{3,6,9}},{{1,4,7},{2,5,9},{3,6,8}},{{1,4,7},{2,6,8},{3,5,9}},{{1,4,7},{2,6,9},{3,5,8}},{{1,4,7},{2,8,9},{3,5,6}},{{1,4,8},{2,3,5},{6,7,9}},{{1,4,8},{2,3,6},{5,7,9}},{{1,4,8},{2,3,7},{5,6,9}},{{1,4,8},{2,3,9},{5,6,7}},{{1,4,8},{2,5,6},{3,7,9}},{{1,4,8},{2,5,7},{3,6,9}},{{1,4,8},{2,5,9},{3,6,7}},{{1,4,8},{2,6,7},{3,5,9}},{{1,4,8},{2,6,9},{3,5,7}},{{1,4,8},{2,7,9},{3,5,6}},{{1,4,9},{2,3,5},{6,7,8}},{{1,4,9},{2,3,6},{5,7,8}},{{1,4,9},{2,3,7},{5,6,8}},{{1,4,9},{2,3,8},{5,6,7}},{{1,4,9},{2,5,6},{3,7,8}},{{1,4,9},{2,5,7},{3,6,8}},{{1,4,9},{2,5,8},{3,6,7}},{{1,4,9},{2,6,7},{3,5,8}},{{1,4,9},{2,6,8},{3,5,7}},{{1,4,9},{2,7,8},{3,5,6}},{{1,5,6},{2,3,4},{7,8,9}},{{1,5,6},{2,3,7},{4,8,9}},{{1,5,6},{2,3,8},{4,7,9}},{{1,5,6},{2,3,9},{4,7,8}},{{1,5,6},{2,4,7},{3,8,9}},{{1,5,6},{2,4,8},{3,7,9}},{{1,5,6},{2,4,9},{3,7,8}},{{1,5,6},{2,7,8},{3,4,9}},{{1,5,6},{2,7,9},{3,4,8}},{{1,5,6},{2,8,9},{3,4,7}},{{1,5,7},{2,3,4},{6,8,9}},{{1,5,7},{2,3,6},{4,8,9}},{{1,5,7},{2,3,8},{4,6,9}},{{1,5,7},{2,3,9},{4,6,8}},{{1,5,7},{2,4,6},{3,8,9}},{{1,5,7},{2,4,8},{3,6,9}},{{1,5,7},{2,4,9},{3,6,8}},{{1,5,7},{2,6,8},{3,4,9}},{{1,5,7},{2,6,9},{3,4,8}},{{1,5,7},{2,8,9},{3,4,6}},{{1,5,8},{2,3,4},{6,7,9}},{{1,5,8},{2,3,6},{4,7,9}},{{1,5,8},{2,3,7},{4,6,9}},{{1,5,8},{2,3,9},{4,6,7}},{{1,5,8},{2,4,6},{3,7,9}},{{1,5,8},{2,4,7},{3,6,9}},{{1,5,8},{2,4,9},{3,6,7}},{{1,5,8},{2,6,7},{3,4,9}},{{1,5,8},{2,6,9},{3,4,7}},{{1,5,8},{2,7,9},{3,4,6}},{{1,5,9},{2,3,4},{6,7,8}},{{1,5,9},{2,3,6},{4,7,8}},{{1,5,9},{2,3,7},{4,6,8}},{{1,5,9},{2,3,8},{4,6,7}},{{1,5,9},{2,4,6},{3,7,8}},{{1,5,9},{2,4,7},{3,6,8}},{{1,5,9},{2,4,8},{3,6,7}},{{1,5,9},{2,6,7},{3,4,8}},{{1,5,9},{2,6,8},{3,4,7}},{{1,5,9},{2,7,8},{3,4,6}},{{1,6,7},{2,3,4},{5,8,9}},{{1,6,7},{2,3,5},{4,8,9}},{{1,6,7},{2,3,8},{4,5,9}},{{1,6,7},{2,3,9},{4,5,8}},{{1,6,7},{2,4,5},{3,8,9}},{{1,6,7},{2,4,8},{3,5,9}},{{1,6,7},{2,4,9},{3,5,8}},{{1,6,7},{2,5,8},{3,4,9}},{{1,6,7},{2,5,9},{3,4,8}},{{1,6,7},{2,8,9},{3,4,5}},{{1,6,8},{2,3,4},{5,7,9}},{{1,6,8},{2,3,5},{4,7,9}},{{1,6,8},{2,3,7},{4,5,9}},{{1,6,8},{2,3,9},{4,5,7}},{{1,6,8},{2,4,5},{3,7,9}},{{1,6,8},{2,4,7},{3,5,9}},{{1,6,8},{2,4,9},{3,5,7}},{{1,6,8},{2,5,7},{3,4,9}},{{1,6,8},{2,5,9},{3,4,7}},{{1,6,8},{2,7,9},{3,4,5}},{{1,6,9},{2,3,4},{5,7,8}},{{1,6,9},{2,3,5},{4,7,8}},{{1,6,9},{2,3,7},{4,5,8}},{{1,6,9},{2,3,8},{4,5,7}},{{1,6,9},{2,4,5},{3,7,8}},{{1,6,9},{2,4,7},{3,5,8}},{{1,6,9},{2,4,8},{3,5,7}},{{1,6,9},{2,5,7},{3,4,8}},{{1,6,9},{2,5,8},{3,4,7}},{{1,6,9},{2,7,8},{3,4,5}},{{1,7,8},{2,3,4},{5,6,9}},{{1,7,8},{2,3,5},{4,6,9}},{{1,7,8},{2,3,6},{4,5,9}},{{1,7,8},{2,3,9},{4,5,6}},{{1,7,8},{2,4,5},{3,6,9}},{{1,7,8},{2,4,6},{3,5,9}},{{1,7,8},{2,4,9},{3,5,6}},{{1,7,8},{2,5,6},{3,4,9}},{{1,7,8},{2,5,9},{3,4,6}},{{1,7,8},{2,6,9},{3,4,5}},{{1,7,9},{2,3,4},{5,6,8}},{{1,7,9},{2,3,5},{4,6,8}},{{1,7,9},{2,3,6},{4,5,8}},{{1,7,9},{2,3,8},{4,5,6}},{{1,7,9},{2,4,5},{3,6,8}},{{1,7,9},{2,4,6},{3,5,8}},{{1,7,9},{2,4,8},{3,5,6}},{{1,7,9},{2,5,6},{3,4,8}},{{1,7,9},{2,5,8},{3,4,6}},{{1,7,9},{2,6,8},{3,4,5}},{{1,8,9},{2,3,4},{5,6,7}},{{1,8,9},{2,3,5},{4,6,7}},{{1,8,9},{2,3,6},{4,5,7}},{{1,8,9},{2,3,7},{4,5,6}},{{1,8,9},{2,4,5},{3,6,7}},{{1,8,9},{2,4,6},{3,5,7}},{{1,8,9},{2,4,7},{3,5,6}},{{1,8,9},{2,5,6},{3,4,7}},{{1,8,9},{2,5,7},{3,4,6}},{{1,8,9},{2,6,7},{3,4,5}}}

The number of them is 280. Is there a formula for any n? What is an efficient algorithm to generate all partitions one by one for any n? Has mathematica already implemented such algorithm?

  • 0
    And you shared your brute force with us. How quaint...2017-02-28

1 Answers 1

2

Using the multinomial coefficient we have that the way to choose $n$ non-intersecting subsets with $n$ elements out of $n^2$ elements is given by $\frac{(n^2)!}{(n!)^n}$. Now as the order of the subsets in our partition doesn't matter we need to divide by $n!$ again and hence the wanted number is:

$$\frac{(n^2)!}{(n!)^{n+1}}$$

  • 0
    Thank you. Is there any chance for an efficient algorithm that would give me k-th partition from ordered set of all partitions? Say for n=3 and k=10 it would give {{1,2,3},{4,8,9},{5,6,7}}, which is 10-th partition from the above list for n=3.2017-02-28
  • 0
    @azerbajdzan Hmmm... I don't know how I can help you with that question. Also I doubt there will be any such algorithm.2017-02-28