# Compute generators of $\Gamma_0(N)$

I have found in a paper the group $$\Gamma_0(18)$$ can be generated by the following list of matrices:

• $$\displaystyle \left( \begin{array}{rr} 7 & -1 \\ 36 & 5 \end{array} \right)$$

• $$\displaystyle \left( \begin{array}{rr} 13 & -8 \\ 18 & -11 \end{array} \right)$$

• $$\displaystyle \left( \begin{array}{rr} 71 & -15 \\ 90 & -9 \end{array} \right)$$

• $$\displaystyle \left( \begin{array}{rr} 55 & -13 \\ 72 & -17 \end{array} \right)$$
• $$\displaystyle \left( \begin{array}{rr} 7 & -2 \\ 18 & -5 \end{array} \right)$$
• $$\displaystyle \left( \begin{array}{rr} 31 & -25 \\ 36 & -29 \end{array} \right)$$
• $$\displaystyle \left( \begin{array}{rr} 1 & 1 \\ 0 & 1 \end{array} \right)$$
• $$\displaystyle \left( \begin{array}{rr} -1 & 0 \\ 0 & -1 \end{array} \right)$$

E.g. $$31 \times (-29) - 36 \times (-25) = -899+900=1$$ In fact, $$36, 18, 19 \equiv 0 \pmod {18}$$.

These generators look arbitrary. Is there a list of generators of $$\Gamma_0(N)$$ for $$N < 100$$ ?

Is there a computer program or algorithm for finding generators of congruence groups, example using a linear algebra package such as sage ?

sage should have what you need.
Check under the documentation for the modular group. Specifically under generators you can find a couple of working examples for finding the generating set for $$\Gamma_0(3)$$.