[proofplan]
We prove the rationality of the Poincaré series $P(M, T) = \sum_{n \ge 0} \ell(M_n) T^n$ by induction on the number $s$ of homogeneous generators $x_1, \ldots, x_s$ of the $A_0$-algebra $A$, where $\deg(x_i) = k_i$. In the base case $s = 0$, the grading collapses and $P(M, T)$ is a polynomial. For the inductive step, multiplication by $x_s$ on graded components yields a four-term exact sequence of $A_0$-modules. Defining the kernel and cokernel modules $K$ and $L$, both are annihilated by $x_s$ and hence are modules over the subalgebra $A_0[x_1, \ldots, x_{s-1}]$, which has $s - 1$ generators. Applying the inductive hypothesis to $K$ and $L$ and combining the length identity gives the result.
[/proofplan]
[step:Handle the base case $s = 0$: the Poincaré series is a polynomial]
When $s = 0$, the algebra $A$ has no positive-degree generators, so $A = A_0$. The module $M$ is a finitely generated graded $A_0$-module, hence $M = \bigoplus_{n \ge 0} M_n$ with each $M_n$ an $A_0$-module of finite length. Since $M$ is finitely generated over $A_0$ and concentrated in non-negative degrees, there exists $n_0 \ge 0$ such that $M_n = 0$ for all $n > n_0$. Therefore:
\begin{align*}
P(M, T) = \sum_{n=0}^{n_0} \ell(M_n) T^n \in \mathbb{Z}[T],
\end{align*}
which is a polynomial. This has the required form with $f(T) = P(M, T)$ and an empty product in the denominator.
[guided]
When $s = 0$, there are no generators of positive degree, so $A = A_0$ (the degree-zero part). Why does $M$ become zero in high degrees? A finitely generated graded module $M$ over $A_0$ (with $A_0$ sitting entirely in degree zero) must have all its generators in some bounded range of degrees, say degrees $0, 1, \ldots, n_0$. Since $A_0$ acts only in degree zero, it cannot produce elements of higher degree: $M_n = 0$ for $n > n_0$.
Each $M_n$ has finite length as an $A_0$-module (since $M$ is finitely generated over the Noetherian ring $A_0$, each graded piece is a finitely generated $A_0$-module, hence of finite length since $A_0$ is Artinian). Therefore:
\begin{align*}
P(M, T) = \sum_{n=0}^{n_0} \ell(M_n) T^n,
\end{align*}
which is a polynomial in $\mathbb{Z}[T]$. This matches the claimed form: $f(T) = P(M, T)$ and the denominator is the empty product (equal to $1$).
[/guided]
[/step]
[step:Set up the inductive step: define the kernel and cokernel of multiplication by $x_s$]
Assume $s \ge 1$ and that the result holds for finitely generated graded modules over graded algebras with fewer than $s$ generators. Consider the $A_0$-linear map given by multiplication by $x_s$:
\begin{align*}
\mu_n: M_n &\to M_{n + k_s}, \\
m &\mapsto x_s m.
\end{align*}
For each $n \ge 0$, define:
\begin{align*}
K_n &= \ker(\mu_n) = \{ m \in M_n : x_s m = 0 \}, \\
L_{n + k_s} &= \operatorname{coker}(\mu_n) = M_{n + k_s} / x_s M_n.
\end{align*}
This gives a short exact sequence of $A_0$-modules for each $n \ge 0$:
\begin{align*}
0 \to K_n \to M_n \xrightarrow{\mu_n} M_{n + k_s} \to L_{n + k_s} \to 0.
\end{align*}
[guided]
The idea of the inductive step is to use the last generator $x_s$ to reduce to modules over a smaller algebra. Multiplication by $x_s$ shifts degrees by $k_s$, so the map $\mu_n: M_n \to M_{n+k_s}$ defined by $m \mapsto x_s m$ is $A_0$-linear (since $x_s$ has degree $k_s$ and $A_0$ acts in degree zero).
For each $n$, we measure how far $\mu_n$ is from being an isomorphism by recording its kernel $K_n$ and its cokernel $L_{n+k_s}$. The exactness of $0 \to K_n \to M_n \to M_{n+k_s} \to L_{n+k_s} \to 0$ is just the first isomorphism theorem: the map $M_n \to M_{n+k_s}$ has kernel $K_n$ and image $x_s M_n$, and $L_{n+k_s} = M_{n+k_s} / x_s M_n$.
[/guided]
[/step]
[step:Show $K$ and $L$ are finitely generated modules over $A_0[x_1, \ldots, x_{s-1}]$]
Define the graded modules:
\begin{align*}
K = \bigoplus_{n \ge 0} K_n, \qquad L = \bigoplus_{n \ge 0} L_n.
\end{align*}
Both $K$ and $L$ are annihilated by $x_s$: for $K$, this holds by definition ($x_s m = 0$ for $m \in K_n$). For $L$, the image of $x_s$ on $L_n = M_n / x_s M_{n - k_s}$ lands in $L_{n+k_s}$ as the zero map, since $x_s M_n \subset x_s M_n$ maps to zero in $M_{n+k_s}/x_s M_n = L_{n+k_s}$.
Since $K$ and $L$ are annihilated by $x_s$, they are modules over $A / x_s A$. The algebra $A / x_s A$ is generated over $A_0$ by the images of $x_1, \ldots, x_{s-1}$ (since the image of $x_s$ is zero). In other words, $K$ and $L$ are finitely generated graded modules over the graded $A_0$-algebra $A_0[x_1, \ldots, x_{s-1}]$, which has $s - 1$ generators of degrees $k_1, \ldots, k_{s-1}$.
The modules $K$ and $L$ are finitely generated because $K$ is a submodule of the Noetherian module $M$ (since $A$ is Noetherian) and $L$ is a quotient of $M$.
[guided]
We need $K$ and $L$ to be modules over a smaller algebra so that the inductive hypothesis applies.
Why is $K$ annihilated by $x_s$? By definition, $m \in K_n$ means $x_s m = 0$, so $x_s$ acts as zero on every element of $K$.
Why is $L$ annihilated by $x_s$? An element of $L_n$ is a coset $m + x_s M_{n - k_s}$ for some $m \in M_n$. Multiplying by $x_s$ gives $x_s m + x_s \cdot x_s M_{n-k_s} \subset x_s M_n$, which is zero in $L_{n+k_s} = M_{n+k_s}/x_s M_n$. So $x_s$ acts as zero on $L$.
Since $x_s$ annihilates both $K$ and $L$, their $A$-module structure factors through $A/x_s A$. The quotient $A/x_s A$ is generated as an $A_0$-algebra by the images of $x_1, \ldots, x_{s-1}$ (since $x_s \mapsto 0$). This is a graded algebra with $s - 1$ generators of degrees $k_1, \ldots, k_{s-1}$.
Why are $K$ and $L$ finitely generated? The module $M$ is finitely generated over the Noetherian ring $A$, so $M$ is a Noetherian $A$-module. Every submodule of a Noetherian module is finitely generated, so $K \subset M$ is finitely generated. Every quotient of a Noetherian module is Noetherian, and $L$ is a quotient of $M$ (via $M \to M/x_s M$, then adjusting the grading), so $L$ is finitely generated.
[/guided]
[/step]
[step:Extract the length identity and apply the inductive hypothesis]
Since each term in $0 \to K_n \to M_n \to M_{n+k_s} \to L_{n+k_s} \to 0$ is an $A_0$-module of finite length, the additivity of length on exact sequences gives:
\begin{align*}
\ell(K_n) - \ell(M_n) + \ell(M_{n+k_s}) - \ell(L_{n+k_s}) = 0.
\end{align*}
Multiply by $T^{n+k_s}$ and sum over all $n \ge 0$:
\begin{align*}
\sum_{n \ge 0} \ell(M_{n+k_s}) T^{n+k_s} - \sum_{n \ge 0} \ell(M_n) T^{n+k_s} = \sum_{n \ge 0} \ell(L_{n+k_s}) T^{n+k_s} - \sum_{n \ge 0} \ell(K_n) T^{n+k_s}.
\end{align*}
The left-hand side simplifies. The first sum equals $P(M, T) - \sum_{n=0}^{k_s - 1} \ell(M_n) T^n$ (collecting all terms of $P(M,T)$ with index $\ge k_s$). The second sum equals $T^{k_s} P(M, T)$. The right-hand side equals $P(L, T) - T^{k_s} P(K, T)$, up to finitely many terms absorbed into the numerator polynomial. Rearranging:
\begin{align*}
(1 - T^{k_s}) P(M, T) = P(L, T) - T^{k_s} P(K, T) + g(T),
\end{align*}
where $g(T) \in \mathbb{Z}[T]$ accounts for the finitely many low-degree terms.
By the inductive hypothesis applied to $K$ and $L$ (finitely generated graded modules over $A_0[x_1, \ldots, x_{s-1}]$ with $s - 1$ generators of degrees $k_1, \ldots, k_{s-1}$):
\begin{align*}
P(K, T) = \frac{f_K(T)}{\prod_{i=1}^{s-1}(1 - T^{k_i})}, \qquad P(L, T) = \frac{f_L(T)}{\prod_{i=1}^{s-1}(1 - T^{k_i})},
\end{align*}
for some $f_K(T), f_L(T) \in \mathbb{Z}[T]$. Substituting and dividing both sides by $(1 - T^{k_s})$:
\begin{align*}
P(M, T) = \frac{f_L(T) - T^{k_s} f_K(T) + g(T) \prod_{i=1}^{s-1}(1 - T^{k_i})}{\prod_{i=1}^{s}(1 - T^{k_i})}.
\end{align*}
The numerator $f(T) = f_L(T) - T^{k_s} f_K(T) + g(T) \prod_{i=1}^{s-1}(1 - T^{k_i})$ belongs to $\mathbb{Z}[T]$, completing the induction.
[guided]
The four-term exact sequence $0 \to K_n \to M_n \to M_{n+k_s} \to L_{n+k_s} \to 0$ is an exact sequence of $A_0$-modules of finite length. The alternating sum of lengths in an exact sequence vanishes (this is the additivity of length), giving:
\begin{align*}
\ell(K_n) - \ell(M_n) + \ell(M_{n+k_s}) - \ell(L_{n+k_s}) = 0.
\end{align*}
To convert this into a relation between generating functions, multiply by $T^{n+k_s}$ and sum over $n \ge 0$. Rearranging the $M$-terms:
\begin{align*}
\sum_{n \ge 0} \ell(M_{n+k_s}) T^{n+k_s} &= P(M, T) - \sum_{j=0}^{k_s - 1} \ell(M_j) T^j, \\
\sum_{n \ge 0} \ell(M_n) T^{n+k_s} &= T^{k_s} P(M, T).
\end{align*}
The difference gives $(1 - T^{k_s}) P(M, T)$ up to a polynomial correction $g(T) \in \mathbb{Z}[T]$ from the low-degree terms. The $K$ and $L$ sums give $T^{k_s} P(K, T)$ and $P(L, T)$ respectively (again up to polynomial corrections). Combining:
\begin{align*}
(1 - T^{k_s}) P(M, T) = P(L, T) - T^{k_s} P(K, T) + g(T).
\end{align*}
Now we apply the inductive hypothesis. The modules $K$ and $L$ are finitely generated graded modules over $A_0[x_1, \ldots, x_{s-1}]$, which has $s - 1$ generators. The inductive hypothesis gives $P(K, T) = f_K(T) / \prod_{i=1}^{s-1}(1 - T^{k_i})$ and $P(L, T) = f_L(T) / \prod_{i=1}^{s-1}(1 - T^{k_i})$ for polynomials $f_K, f_L \in \mathbb{Z}[T]$. Substituting into the identity and solving for $P(M, T)$:
\begin{align*}
P(M, T) = \frac{f_L(T) - T^{k_s} f_K(T) + g(T)\prod_{i=1}^{s-1}(1 - T^{k_i})}{(1 - T^{k_s}) \prod_{i=1}^{s-1}(1 - T^{k_i})} = \frac{f(T)}{\prod_{i=1}^{s}(1 - T^{k_i})},
\end{align*}
where $f(T) = f_L(T) - T^{k_s} f_K(T) + g(T)\prod_{i=1}^{s-1}(1 - T^{k_i}) \in \mathbb{Z}[T]$. This completes the inductive step.
[/guided]
[/step]