The module modular.modsym.manin_symbols defines the following classes:
ManinSymbolList_character(character, weight): INPUT: character - a dirichlet character weight - integer weight >= 2 EXAMPLE:
sage: eps = DirichletGroup(4).gen(0) sage: m = ManinSymbolList_character(eps,2); m Manin Symbol List of weight 2 for Gamma1(4) with character [-1] sage: m.manin_symbol_list() [(0,1), (1,0), (1,1), (1,2), (1,3), (2,1)]
ManinSymbolList_gamma0(level, weight): INPUT: level - integer level weight - integer weight >= 2
EXAMPLE:
sage: m = ManinSymbolList_gamma0(5,2); m Manin Symbol List of weight 2 for Gamma0(5) sage: m.manin_symbol_list() [(0,1), (1,0), (1,1), (1,2), (1,3), (1,4)] sage: m = ManinSymbolList_gamma0(6,4); m Manin Symbol List of weight 4 for Gamma0(6) sage: len(m) 36
EXAMPLE:
sage: m = ManinSymbolList_gamma0(5,2); m Manin Symbol List of weight 2 for Gamma0(5) sage: m.manin_symbol_list() [(0,1), (1,0), (1,1), (1,2), (1,3), (1,4)] sage: m = ManinSymbolList_gamma0(6,4); m Manin Symbol List of weight 4 for Gamma0(6) sage: len(m) 36
The module modular.modsym.manin_symbols defines the following functions:
i, j, a, b, c, d) |
Returns a list of the coefficients of
where
One should think of
as being
for the application to
modular symbols.
INPUT: i, j, a, b, c, d -- all ints OUTPUT: list of ints, which are the coefficients of Y^j, Y^(j-1)*X, ..., X^j, respectively.
EXAMPLE:
We compute that
.
sage: apply_to_monomial(2, 3, 1,1,1,-1) [-1, -1, 1, 1] sage: apply_to_monomial(5, 8, 1,2,3,4) [2048, 9728, 20096, 23584, 17200, 7984, 2304, 378, 27] sage: apply_to_monomial(6,12, 1,1,1,-1) [1, 0, -6, 0, 15, 0, -20, 0, 15, 0, -6, 0, 1]