Modular forms over a non-minimal base ring¶
- class sage.modular.modform.ambient_R.ModularFormsAmbient_R(M, base_ring)[source]¶
Bases:
ModularFormsAmbient
Ambient space of modular forms over a ring other than QQ.
EXAMPLES:
sage: M = ModularForms(23, 2, base_ring=GF(7)) # indirect doctest sage: M Modular Forms space of dimension 3 for Congruence Subgroup Gamma0(23) of weight 2 over Finite Field of size 7 sage: M == loads(dumps(M)) True
>>> from sage.all import * >>> M = ModularForms(Integer(23), Integer(2), base_ring=GF(Integer(7))) # indirect doctest >>> M Modular Forms space of dimension 3 for Congruence Subgroup Gamma0(23) of weight 2 over Finite Field of size 7 >>> M == loads(dumps(M)) True
M = ModularForms(23, 2, base_ring=GF(7)) # indirect doctest M M == loads(dumps(M))
- change_ring(R)[source]¶
Return this modular forms space with the base ring changed to the ring R.
EXAMPLES:
sage: # needs sage.rings.number_field sage: chi = DirichletGroup(109, CyclotomicField(3)).0 sage: M9 = ModularForms(chi, 2, base_ring = CyclotomicField(9)) sage: M9.change_ring(CyclotomicField(15)) Modular Forms space of dimension 10, character [zeta3 + 1] and weight 2 over Cyclotomic Field of order 15 and degree 8 sage: M9.change_ring(QQ) Traceback (most recent call last): ... ValueError: Space cannot be defined over Rational Field
>>> from sage.all import * >>> # needs sage.rings.number_field >>> chi = DirichletGroup(Integer(109), CyclotomicField(Integer(3))).gen(0) >>> M9 = ModularForms(chi, Integer(2), base_ring = CyclotomicField(Integer(9))) >>> M9.change_ring(CyclotomicField(Integer(15))) Modular Forms space of dimension 10, character [zeta3 + 1] and weight 2 over Cyclotomic Field of order 15 and degree 8 >>> M9.change_ring(QQ) Traceback (most recent call last): ... ValueError: Space cannot be defined over Rational Field
# needs sage.rings.number_field chi = DirichletGroup(109, CyclotomicField(3)).0 M9 = ModularForms(chi, 2, base_ring = CyclotomicField(9)) M9.change_ring(CyclotomicField(15)) M9.change_ring(QQ)
- cuspidal_submodule()[source]¶
Return the cuspidal subspace of this space.
EXAMPLES:
sage: # needs sage.rings.number_field sage: C = CuspForms(7, 4, base_ring=CyclotomicField(5)) # indirect doctest sage: type(C) <class 'sage.modular.modform.cuspidal_submodule.CuspidalSubmodule_R_with_category'>
>>> from sage.all import * >>> # needs sage.rings.number_field >>> C = CuspForms(Integer(7), Integer(4), base_ring=CyclotomicField(Integer(5))) # indirect doctest >>> type(C) <class 'sage.modular.modform.cuspidal_submodule.CuspidalSubmodule_R_with_category'>
# needs sage.rings.number_field C = CuspForms(7, 4, base_ring=CyclotomicField(5)) # indirect doctest type(C)