Differences between revisions 2 and 4 (spanning 2 versions)
 ⇤ ← Revision 2 as of 2009-09-08 20:31:13 → Size: 752 Editor: was Comment: ← Revision 4 as of 2009-09-08 21:16:49 → ⇥ Size: 1200 Editor: was Comment: Deletions are marked like this. Additions are marked like this. Line 30: Line 30: == Cuspidal Subgroup ==Computing the structure of the cuspidal subgroup of J0(N) and J1(N) (say).  * URL: http://wstein.org/Tables/cuspgroup/ * New Sage code:{{{def cuspidal_subgroup_J0(N):    J = J0(N)    I = C.cuspidal_subgroup().invariants()    # maybe pickle J    return I}}}{{{def cuspidal_subgroup_J0(N):    J = J1(N)    I = C.cuspidal_subgroup().invariants()    # maybe pickle J    return I}}}

# Specific Tables

## Component Groups of J0(N)(R) and J1(N)(R)

• New Code:

This function computes the J_0(N) real component groups.

def f(N):
M = ModularSymbols(N).cuspidal_subspace()
d = M.dimension()//2
S = matrix(GF(2),2*d,2*d, M.star_involution().matrix().list()) - 1
return 2^(S.nullity()-d)

For J_1(N) it is:

def f(N):
M = ModularSymbols(Gamma1(N)).cuspidal_subspace()
d = M.dimension()//2
S = matrix(GF(2),2*d,2*d, M.star_involution().matrix().list()) - 1
return 2^(S.nullity()-d)

Future extension: one could replace Gamma1(N) by GammaH(N,...). One could also do the new subspace.

## Cuspidal Subgroup

Computing the structure of the cuspidal subgroup of J0(N) and J1(N) (say).

• New Sage code:

def cuspidal_subgroup_J0(N):
J = J0(N)
I = C.cuspidal_subgroup().invariants()
# maybe pickle J
return I

def cuspidal_subgroup_J0(N):
J = J1(N)
I = C.cuspidal_subgroup().invariants()
# maybe pickle J
return I

days17/projects/presagedays/discussion (last edited 2010-07-12 07:39:51 by was)