Solution (source code)

= Solution

For an additive length function $\lambda$ finite on the graded pieces, define the <Poincare series of a graded module>
$$
P(M,t)=\sum_{n\in\mathbb Z}\lambda(M_n)t^n.
$$
The <Hilbert-Serre theorem> states that
$$
\boxed{P(M,t)=\frac{f(t)}
{\prod_{i=1}^s(1-t^{k_i})}}
$$
for a Laurent polynomial $f(t)\in\mathbb Z[t,t^{-1}]$.

Induct on $s$. For the last generator $x_s$ of degree $k_s$, multiplication gives an exact sequence whose kernel is the $x_s$-torsion and whose cokernel is $M/x_sM$. Additivity of $\lambda$ yields
$$
(1-t^{k_s})P(M,t)=P(M/x_sM,t)-t^{k_s}P(0:_Mx_s,t).
$$
Both modules on the right are finite graded modules over the algebra generated by $x_1,\ldots,x_{s-1}$. The induction hypothesis gives the asserted denominator. The case $s=0$ is a finite Laurent polynomial because $M$ is finitely generated over $A_0$.