# How to compute modular symbols

Let $N \geq 1$ be an integer. I'd like to compute a basis of the homology $H^1(X_0(N), \mathbb{Z})$ where $X_0(N)$ is the classical modular curve for the congruence subgroup $\Gamma_0(N)$. I'd like to have a basis in terms of { $\alpha, \beta$ } (here $\alpha$ and $\beta$ are cusps, and { $\alpha, \beta$ } is the geodesic path with endpoints $\alpha$ and $\beta$). More importantly, I'd like to be able to create some element $x$ in $H^1(X_0(N), \mathbb{Z})$ by summing some elements of the form { $\alpha, \beta$ }, and then I'd like to apply Hecke operators on $x$ and express the result in terms of a basis of $H^1(X_0(N), \mathbb{Z})$.

Thanks for help.