1

Product Principle for Generating Functions

I am inquiring about the Product Principle for Generating Functions as applied in combinatorial counting problems.

First, let me state the principle: Consider a two-phase process $\mathcal{C}$. Pick an integer $0 \leq k \leq n$ and split $[n]$ into subintervals $\{1,2, \ldots, k\}$ and $\{k+1, k+2, \ldots, n\}$. Perform task $\mathcal{A}$ on the first interval and perform task $\mathcal{B}$ on the second interval. Let

  • $A(x)=$ the generating function for task $\mathcal{A}$
  • $B(x)=$ the generating function for task $\mathcal{B}$

Then the generating function for process $\mathcal{C}$ is $$ C(x)=A(x) B(x) $$ The source is here: https://www.youtube.com/watch?v=k0n7y3eEf64&list=PLlWULwPzrppVYesREEHJDeYftNLqajvzs&index=14

and many other documents also describe it similarly.

I think it is not correct. Let me give an example:

Problem 1: I have $100$ balls, and I need to select a few balls and color them either blue or red (each ball one color). The remaining balls are to be colored white or yellow. Okay, the above principle works well.

Problem 2: I have $100$ balls, and I need to select a few balls and color them either blue or red (each ball one color). The remaining balls are to be colored blue or yellow. Clearly, the principle cannot be applied here, as some methods will be counted twice.

I want to ask what the correct principle, with full conditions, is and any related documents. Thank you!

Math_fun2006
  • 1,119
  • 2
    Generally, what one counts in combinatorics is some kind of configurations (like assignments of colours to balls), not tasks or processes. If you are counting the configurations by counting the number of ways a certain procedure that produces a configuration can be executed, then this is only valid if every configuration can be obtained in one and only one way by this procedure. In other words, given any configuration one can trace back a unique way in which the procedure produces it. So the product principle can only be valid if any configuration imposes just one splitting of the interval. – Marc van Leeuwen Jun 10 '24 at 08:50

1 Answers1

1

First of all, we should clarify the mathematical meaning of the phrase "$A(x)$ is the generating function for task $\newcommand{\c}{\mathcal}\c A$". Typically, we think of $\c A$ as a set (the set of ways to perform the action), and that there is a function $|\cdot |_{\c A}:\c A\to \mathbb N$ which specifies the "size" of each element of $\c A$. Then, $A(x)$ is the generating function for $\c A$ means that $$ A(x)=\sum_{a\in \c A}x^{|a|_{\c A}}=\sum_{n=0}^\infty (\#\{a\in \c A:|a|_{\c A}=n\})x^n $$ Now, given two actions $\c A$ and $\c B$, we can consider the Cartesian product $\c A\times \c B$. The product set inherits a size function from the size functions of $\c A$ and $\c B$, via $$ |(a,b)|_{\c A\times \c B}=|a|_{\c A}+|b|_{\c B} $$ You can then prove, using this definition that the generating function for $\c A\times \c B$ is equal to $A(x)B(x)$, where $A(x)$ is the generating function for $\c A$ and $B(x)$ is the g.f. for $\c B$.

Now, to apply this to an actual problem, you need to find a bijective correspondence between the Cartesian product $\c A\times \c B$ and the thing you want to count. In Problem 1, you can find a bijection, but in Problem 2, you cannot.

Mike Earnest
  • 84,902
  • What about the multiplication principle with exponential generating functions? – Math_fun2006 Jun 11 '24 at 01:21
  • 1
    For egf’s, the product principle is different, and it accounts for labeled objects. The product of an A-structure and a B-structure is the following procedure; you partition the given labeled set into two disjoint subsets, then put an A-structure on the first, and a B-structure on the second. I said it in more detail in this answer, comparing OGFs to EGFs. – Mike Earnest Jun 12 '24 at 17:45
  • In the book A Walk Through Combinatorics: An Introduction to Enumeration and Graph Theory, Fourth Edition (page 170), mathematician Miklós Bóna states:

    Theorem 8.5 (The Product formula). Let (a_n) be the number of ways to build a certain structure on an n-element set, and let (b_n) be the number of ways to build another structure on an n-element set.

    – Math_fun2006 Jul 19 '24 at 03:36
  • Let $c_n$ be the number of ways to separate the set $[n]$ into the intervals $S={1,2, \cdots, i}$ and $T={i+1, i+2, \cdots, n}$, (the intervals $S$ and $T$ are allowed to be empty), and then to build a structure of the first kind on $S$, and a structure of the second kind on $T$. Let $A(x), B(x)$, and $C(x)$ be the respective generating functions of the sequences $\left{a_n\right},\left{b_n\right}$, and $\left{c_n\right}$. Then $$ A(x) B(x)=C(x) $$ – Math_fun2006 Jul 19 '24 at 03:36
  • I think the theorem, when stated as "structure," is very clear and simple, without needing to use the concept of a combinatorial class. In Problem 2, the theorem still works because it counts the number of ways to create a structure. Am I understanding this correctly? – Math_fun2006 Jul 19 '24 at 03:40