### Navigation

- index
- modules |
- next |
- previous |
- Modular Symbols »

# Modular symbols {alpha, beta}

The ModularSymbol class represents a single modular symbol \(X^i Y^{k-2-i} \{\alpha, \beta\}\).

AUTHOR:

- William Stein (2005, 2009)

TESTS:

    sage: s = ModularSymbols(11).2.modular_symbol_rep()[0][1]; s
    {-1/9, 0}
    sage: loads(dumps(s)) == s
    True

class `sage.modular.modsym.modular_symbols.``ModularSymbol`(space, i, alpha, beta)

  Bases: `sage.structure.sage_object.SageObject`

  The modular symbol \(X^i\cdot Y^{k-2-i}\cdot \{\alpha, \beta\}\).

  `alpha`()

    For a symbol of the form \(X^i Y^{k-2-i}\{\alpha, \beta\}\), return \(\alpha\).

    EXAMPLES:

        sage: s = ModularSymbols(11,4).1.modular_symbol_rep()[0][1]; s
        X^2*{-1/6, 0}
        sage: s.alpha()
        -1/6
        sage: type(s.alpha())
        <class 'sage.modular.cusps.Cusp'>

  `apply`(g)

    Act on this symbol by the element \(g \in {\rm GL}_2(\QQ)\).

    INPUT:

    - `g` – a list `[a,b,c,d]`, corresponding to the 2x2 matrix \(\begin{pmatrix} a & b \\ c & d \end{pmatrix} \in {\rm GL}_2(\QQ)\).

    OUTPUT:

    - `FormalSum` – a formal sum \(\sum_i c_i x_i\), where \(c_i\) are scalars and \(x_i\) are ModularSymbol objects, such that the sum \(\sum_i c_i x_i\) is the image of this symbol under the action of g. No reduction is performed modulo the relations that hold in self.space().

    The action of \(g\) on symbols is by

    \[P(X,Y)\{\alpha, \beta\} \mapsto P(dX-bY, -cx+aY) \{g(\alpha), g(\beta)\}.\]

    Note that for us we have \(P=X^i Y^{k-2-i}\), which simplifies computation of the polynomial part slightly.

    EXAMPLES:

        sage: s = ModularSymbols(11,2).1.modular_symbol_rep()[0][1]; s
        {-1/8, 0}
        sage: a=1;b=2;c=3;d=4; s.apply([a,b,c,d])
        {15/29, 1/2}
        sage: x = -1/8;  (a*x+b)/(c*x+d)
        15/29
        sage: x = 0;  (a*x+b)/(c*x+d)
        1/2
        sage: s = ModularSymbols(11,4).1.modular_symbol_rep()[0][1]; s
        X^2*{-1/6, 0}
        sage: s.apply([a,b,c,d])
        16*X^2*{11/21, 1/2} - 16*X*Y*{11/21, 1/2} + 4*Y^2*{11/21, 1/2}
        sage: P = s.polynomial_part()
        sage: X,Y = P.parent().gens()
        sage: P(d*X-b*Y, -c*X+a*Y)
        16*X^2 - 16*X*Y + 4*Y^2
        sage: x=-1/6; (a*x+b)/(c*x+d)
        11/21
        sage: x=0; (a*x+b)/(c*x+d)
        1/2
        sage: type(s.apply([a,b,c,d]))
        <class 'sage.structure.formal_sum.FormalSum'>

  `beta`()

    For a symbol of the form \(X^i Y^{k-2-i}\{\alpha, \beta\}\), return \(\beta\).

    EXAMPLES:

        sage: s = ModularSymbols(11,4).1.modular_symbol_rep()[0][1]; s
        X^2*{-1/6, 0}
        sage: s.beta()
        0
        sage: type(s.beta())
        <class 'sage.modular.cusps.Cusp'>

  `i`()

    For a symbol of the form \(X^i Y^{k-2-i}\{\alpha, \beta\}\), return \(i\).

    EXAMPLES:

        sage: s = ModularSymbols(11).2.modular_symbol_rep()[0][1]
        sage: s.i()
        0
        sage: s = ModularSymbols(1,28).0.modular_symbol_rep()[0][1]; s
        X^22*Y^4*{0, Infinity}
        sage: s.i()
        22

  `manin_symbol_rep`()

    Returns a representation of self as a formal sum of Manin symbols. (The result is not cached.)

    EXAMPLES:

        sage: M = ModularSymbols(11,4)
        sage: s = M.1.modular_symbol_rep()[0][1]; s
        X^2*{-1/6, 0}
        sage: s.manin_symbol_rep()
        -[Y^2,(1,1)] - 2*[X*Y,(-1,0)] - [X^2,(-6,1)] - [X^2,(-1,0)]
        sage: M(s.manin_symbol_rep()) == M([2,-1/6,0])
        True

  `polynomial_part`()

    Return the polynomial part of this symbol, i.e. for a symbol of the form \(X^i Y^{k-2-i}\{\alpha, \beta\}\), return \(X^i Y^{k-2-i}\).

    EXAMPLES:

        sage: s = ModularSymbols(11).2.modular_symbol_rep()[0][1]
        sage: s.polynomial_part()
        1
        sage: s = ModularSymbols(1,28).0.modular_symbol_rep()[0][1]; s
        X^22*Y^4*{0, Infinity}
        sage: s.polynomial_part()
        X^22*Y^4

  `space`()

    The list of Manin symbols to which this symbol belongs.

    EXAMPLES:

        sage: s = ModularSymbols(11).2.modular_symbol_rep()[0][1]
        sage: s.space()
        Manin Symbol List of weight 2 for Gamma0(11)

  `weight`()

    Return the weight of the modular symbols space to which this symbol belongs; i.e. for a symbol of the form \(X^i Y^{k-2-i}\{\alpha, \beta\}\), return \(k\).

    EXAMPLES:

        sage: s = ModularSymbols(1,28).0.modular_symbol_rep()[0][1]
        sage: s.weight()
        28

### Navigation

- index
- modules |
- next |
- previous |
- Modular Symbols »