# Computing a Basis of Polynomials (As a Vector Space)

Hello everyone! I'm fairly new to sage, so this is probably super simple but I can't quite figure it out.

So $S_n$ acts on the multivariate polynomial ring $M = \mathbb{C} [x_1,x_2,...,x_n,y_1,y_2,...y_n]$ by simply $\sigma*x_i = x_{\sigma(i)}$ (and same for the $y_i$'s). This turns $M$ into a $S_n$-Module, and by extension of linearity a module of the group ring $\mathbb{C}S_n$.

This isn't the important part however; I'm studying submodules of the thing above, and the problem right now is I have a bunch of polynomials (hundreds) of considerable length, but I want a minimal generating set (only additively). Is there a command that does this quickly without having to convert everything into a giant $(n+1)^{n+1}$-dimensional vector space?

Thanks so much in advance!

I ended up spending the weekend implementing it (with my caveman programming skills), so it's not the most elegant thing in the world...but if anyone wants to use what I have, please feel free to contact me!