# Generators of $M_{2k}(\Gamma_0(p))$, $p$ is prime

We know that $$M_{2k}(SL(2,\mathbb{Z}))$$, the space of holomorphic modular forms of weight $$2k \geq 4$$, is spanned by $$E_4(\tau)^i E_6(\tau)^j$$ so that $$4i+6j=2k$$.

Is there a similar type of result for $$M_{2k}(\Gamma_0(p))$$, if p is prime?

We should clearly include $$E_{4}(p \tau)$$,$$E_6(p \tau)$$ and $$G_{2,p}(\tau):=E_2(\tau)-p E_{2}(p \tau)$$ (they are modular forms on $$\Gamma_0(p)$$). But these, together with $$E_4(\tau)$$ and $$E_6(\tau)$$, do not generate everything in $$M_{2k}(\Gamma_0(p))$$ I think. What additional modular forms are needed (preferably written as Eisenstein series)?

For $$\Gamma_0(p)$$ Eisenstein series are not enough. If $$p \notin \{2,3,5,7,13\}$$, then there will always be some cusp forms in $$S_2(\Gamma_0(p))$$; and those will not be in the subalgebra of $$\bigoplus_{k \ge 0} M_{2k}(\Gamma_0(p))$$ generated by Eisenstein series. One approach to writing down the missing modular forms is via theta-series -- this was worked out by Eichler; you will get lots of relevant literature if you search for "Eichler basis problem". (This method generalises to non-prime levels but only if the level is square-free; for non-square-free levels there are some forms which you will never see with this approach.)
Contemporary computer algebra systems use a different approach. Sage and Magma use modular symbols to compute modular forms of any weight $$\ge 2$$; there is an excellent book, Modular Forms - A Computational Approach, by William Stein (the creator of Sage) which discusses this method in detail.
PARI/GP uses a rather different method, involving going up from $$\Gamma_0(p)$$ level to $$\Gamma(p)$$ level and using weight one Eisenstein series; this relies on the fact that for $$\Gamma(p)$$ levels you can write any modular form of weight 2 in the form $$(\sum_i a_i b_i) / C$$ where $$a_i$$, $$b_i$$ and $$C$$ are weight 1 Eisenstein series.
• Thanks. I changed $\Gamma(p)$ to $\Gamma_0(p)$. Commented Mar 23, 2022 at 17:33