The field on which the space M was defined.
The weight of the space M.
The central character of the weight representation defining the space M of Hilbert modular forms. This is of significance only for higher weight spaces (not parallel weight 2).
The level of the space M.
The nebentypus of the space M of Hilbert modular forms.
This is true if the space M was created as (a subspace of) a space of cusp forms. In the current implementation this is always true.
This is true if the space M was created as (a subspace of) a new space, for instance using NewSubspace or NewformDecomposition, or if the space is known to satisfy NewLevel(M) = Level(M).
This returns the level at which M is known to be new. (See NewSubspace.)
UseFormula: BoolElt Default: true
This computes the dimension of the space M of Hilbert modular forms.The dimension is determined either by using "dimension formulae" or else by explicitly constructing the space. By default, formulae are used when available and when considered cheap to evaluate. The optional argument UseFormula can be set true or false to override the default.
Dimension formulae are implemented for spaces of parallel weight 2. These formulae are sums over certain cyclotomic extensions of the base field of F.
The results by formula are guaranteed only under GRH, since they may involve class numbers that are calculated conditionally. If at some later point, the space is explicitly computed, the dimension is will then be verified unconditionally.
This returns the quaternion order that is used internally to compute the space M of Hilbert modular forms.
This indicates which of the two algorithms is used to compute the space M of Hilbert modular forms. It is equivalent to IsDefinite(Algebra(QuaternionOrder(M))). Note that calling this causes a QuaternionOrder for M to be chosen (if it has not been set already).
> _<x> := PolynomialRing(Rationals()); > F := NumberField(x^2-85); > OF := Integers(F); > H := HilbertCuspForms(F, 1*OF); > Norm(Level(H)); 1 > Weight(H); [ 2, 2 ] > time Dimension(H); 6 Time: 2.580 > IsDefinite(H); trueThis indicates that Algorithm I (described in the introduction) was used to compute the dimension.
> level := Factorization(3*OF)[1][1]; > H3 := HilbertCuspForms(F, level); > Level(H3); Prime Ideal of OF Two element generators: [3, 0] [2, 2] > time Dimension(H3); 14 Time: 2.370 > H3 := HilbertCuspForms(F, level : QuaternionOrder:=QuaternionOrder(H) ); > time Dimension(H3); 14 Time: 0.270It is much faster when we recycle the same quaternion order used for the space of level 1. This is because the harder computations involved depend only on the quaternion order, not on the level.