8.5.1.1 ModularSymbolsSubspace Objects

class ModularSymbolsSubspace
Subspace of ambient space of modular symbols
ModularSymbolsSubspace( ambient_space, vector_space)

Instances of class ModularSymbolsSubspace have the following functions (in addition to inherited functions and special functions):

ambient_space,$  $ ambient_vector,$  $ atkin_lehner_operator,$  $ boundary_map,$  $ complement,$  $ cuspidal_subspace,$  $ degeneracy_map,$  $ dimension,$  $ dual_star_involution_matrix,$  $ eisenstein_subspace,$  $ embedded_dual_vector_space,$  $ embedded_vector_space,$  $ hecke_bound,$  $ intersection,$  $ is_ambient,$  $ is_anemic_hecke_module,$  $ is_cuspidal,$  $ is_eisenstein,$  $ is_full_hecke_module,$  $ is_hecke_invariant,$  $ is_new,$  $ is_subspace,$  $ linear_combination_of_basis,$  $ new_subspace,$  $ star_involution

Further documentation:

ambient_vector( v)

Given a vector v in self.vector_space(), return the corresponding element in the vector space of the ambient modular symbols space.

atkin_lehner_operator( d)

Return the Atkin-Lehner operator W_d on this space, where d is a divisor of the level N such that N/d and d are coprime.

boundary_map( )

The boundary map to the corresponding space of boundary modular symbols. (This is the restriction of the map on the ambient space.)

complement( )

Return the largest Hecke-stable complement of this space.

cuspidal_subspace( )

Return the cuspidal subspace of this space of modular symbols.

degeneracy_map( level, [t=1])

The t-th degeneracy map from self to the space of ambient modular symbols of the given level. The level of self must be a divisor or multiple of level, and t must be a divisor of the quotient.

INPUT:
    level -- int, the level of the codomain of the map
(positive int).
    t  -- int, the parameter of the degeneracy map, i.e., the
map is
          related to f(q) |--> f(q^t).
          
OUTPUT:
    A linear function from self to the space of modular symbols
    of given level with the same weight, character, sign,
    etc., as this space.

dual_star_involution_matrix( )

Return the matrix of the dual star involution, which is induced by complex conjugation on the linear dual of modular symbols.

eisenstein_subspace( )

Return the Eisenstein subspace of this space of modular symbols.

embedded_dual_vector_space( )

Compute embedded dual vector space if possible. In general this won't be possible, e.g., if this space is not Hecke equivariant, possibly if it is not cuspidal, or if the characteristic is not 0. In all these cases we raise a RuntimeError exception.

intersection( other)

Returns the intersection of self and other, which must both lie in a common ambient space of modular symbols.

sage: M = ModularSymbols(43, sign=1)
sage: A = M[0] + M[1]
sage: B = M[1] + M[2]
sage: A.dimension(), B.dimension()
(2, 3)

sage: C = A.intersection(B); C.dimension()
1

is_anemic_hecke_module( )

If compute is True (the default), return True if this space is known to be invariant (because of how it was computed) under all Hecke operators of index coprime to the level. If this function returns False, the space still might be an anemic Hecke module, but we have no way of telling.

is_full_hecke_module( [compute=True])

Return True if this space is invariant under all Hecke operators. If compute = False (not the default), only return True if the space is known to be invariant under all Hecke operators because of how it was computed.

is_hecke_invariant( [n=None])

Return True if this space is invariant under the n-th Hecke operator.

INPUT:
    n -- an integer, or None which means "all Hecke operators"
OUTPUT:
    bool

is_subspace( V)

Returns True if and only if self is a subspace of V.

new_subspace( [p=None])

Return the cuspidal subspace of this space of modular symbols.

star_involution( )

Return the star involution on self, which is induced by complex conjugation on modular symbols.

Instances of class ModularSymbolsSubspace also have the following special functions:

__add__,$  $ __call__

Further documentation:

__call__( x, [computed_with_hecke=False])

Coerce x into this modular symbols space (self). The result is either an element of self or a subspace of self.

The allowed inputs are the same as for ambient spaces of modular symbols, except

See About this document... for information on suggesting changes.