[Next][Prev] [Right] [Left] [Up] [Index] [Root]

Associated Vector Space

The functions VectorSpace, DualVectorSpace, and Lattice return the underlying vector space, dual vector space, and lattice associated to a space of modular symbols. A space of modular symbols is represented internally as a subspace of a vector space, and a subspace of the linear dual of the vector space. To carry along the subspace of the linear dual is useful in many computations; one example is efficient computation of Hecke operators. When the base field is Q, the lattice comes from the natural integral structure on modular symbols.

VectorSpace(M) : ModSym -> ModTupFld, Map, Map
The vector space V underlying M, the map V -> M, and the map M -> V.
DualVectorSpace(M) : ModSym -> ModTupFld
The subspace of the linear dual of VectorSpace(AmbientSpace(M)) that is isomorphic to M as a module over the Hecke algebra.
Lattice(M) : ModSym -> Lat
The lattice generated by the integral modular symbols in the vector space representation of M. This is the lattice generated by all modular symbols X^iY^(k - 2 - i){a, b}. The base field of M must be RationalField().

Example ModSym_Representation (H88E9)

> M := ModularSymbols(DirichletGroup(11).1,3); M;
Full Modular symbols space of level 11, weight 3, character $.1, 
and dimension 4
> VectorSpace(M);
Full Vector space of degree 4 over Rational Field
Mapping from: Full Vector space of degree 4 over Rational Field
to ModSym: M given by a rule [no inverse]
Mapping from: ModSym: M to Full Vector space of degree 4 over
Rational Field given by a rule [no inverse]
> Basis(VectorSpace(CuspidalSubspace(M)));
[
    ( 0  1  0 -1),
    ( 0  0  1 -1)
]
> Basis(VectorSpace(EisensteinSubspace(M)));
[
    (   1    0 -2/3 -1/3),
    ( 0  1 -5 -2)
]
> Lattice(CuspidalSubspace(M));
Lattice of rank 2 and degree 4
Basis:
( 0  1 -1  0)
( 0  1  1 -2)
Basis Denominator: 2
Mapping from: Lattice of rank 2 and degree 4 to Modular symbols
space of level 11, weight 3, character $.1, and dimension 2 given
by a rule [no inverse]
> Basis(Lattice(EisensteinSubspace(M)));
[
    (   0  1/2 -5/2   -1),
    (   3 -1/2  1/2    0)
]

 [Next][Prev] [Right] [Left] [Up] [Index] [Root]