Processing math: 100%

First time here? Check out the FAQ!

Ask Your Question
1

How to compute modular symbols

asked 10 years ago

this post is marked as community wiki

This post is a wiki. Anyone with karma >750 is welcome to improve it.

Let N1 be an integer. I'd like to compute a basis of the homology H1(X0(N),Z) where X0(N) is the classical modular curve for the congruence subgroup Γ0(N). I'd like to have a basis in terms of { α,β } (here α and β are cusps, and { α,β } is the geodesic path with endpoints α and β). More importantly, I'd like to be able to create some element x in H1(X0(N),Z) by summing some elements of the form { α,β }, and then I'd like to apply Hecke operators on x and express the result in terms of a basis of H1(X0(N),Z).

Thanks for help.

Preview: (hide)

2 Answers

Sort by » oldest newest most voted
1

answered 10 years ago

vdelecroix gravatar image

Have a look at FareySymbol. It gives a nice presentation of the surface in the way you want. There is no "ready to use" procedure for getting the homology but it is straightforward.

Vincent

Preview: (hide)
link
1

answered 10 years ago

1571 gravatar image

In fact there is a "ready to use" procedure. M = ModularSymbols(N,2) creates the space of weight 2 modular symbols for Γ0(N) (i.e. a basis of H1(X0(N),Z)). We can create the element { α,β }, of M by putting x=M.modular_symbol([alpha, beta]). The n-th Hecke operator is computed as follow: M.T(n)(x)

Preview: (hide)
link

Your Answer

Please start posting anonymously - your entry will be published after you log in or create a new account.

Add Answer

Question Tools

Stats

Asked: 10 years ago

Seen: 417 times

Last updated: Aug 14 '14