# Dimension Formulas

## `DimensionCuspFormsGamma0(N, k): RngIntElt, RngIntElt -> RngIntElt`

The dimension of the space $S_k(\Gamma_0(N))$ of weight $k$ cusp forms for $\Gamma_0(N)$.

## `DimensionNewCuspFormsGamma0(N, k): RngIntElt, RngIntElt -> RngIntElt`

The dimension of the new subspace of the space $S_k(\Gamma_0(N))$ of weight $k$ cusp forms for $\Gamma_0(N)$.

## `DimensionCuspFormsGamma1(N, k): RngIntElt, RngIntElt -> RngIntElt`

The dimension of the space $S_k(\Gamma_1(N))$ of weight $k$ cusp forms for $\Gamma_1(N)$.

## `DimensionNewCuspFormsGamma1(N, k): RngIntElt, RngIntElt -> RngIntElt`

The dimension of the new subspace of the space $S_k(\Gamma_1(N))$ of weight $k$ cusp forms for $\Gamma_1(N)$.

## `DimensionCuspForms(eps, k): GrpDrchElt, RngIntElt -> RngIntElt`

The dimension of the space $S_k(\Gamma_1(N))(\varepsilon)$ of cusp forms of weight $k$ and Dirichlet character `eps`. The level $N$ is the modulus of `eps`. The dimension is computed using the formula of Cohen and Oesterlè (see [[Cohen and Oesterlé, 1977](../../references.md#cite-cohen-oesterle-dimensions)]).

## `Example: Dimension Formulas (ex-57206a)`

```magma
> DimensionCuspFormsGamma0(11,2);
1
> DimensionCuspFormsGamma0(1,12);
1
> DimensionCuspFormsGamma0(5077,2);
422
> DimensionCuspFormsGamma1(5077,2);
1071460
> G := DirichletGroup(5*7);
> eps := G.1*G.2;
> IsOdd(eps);
true
> DimensionCuspForms(eps,2);
0
> DimensionCuspForms(eps,3);
6

```

The dimension of the space of cuspidal modular symbols is twice the dimension of the space of cusp forms.

```magma
> Dimension(CuspidalSubspace(ModularSymbols(eps,3)));
12

```
