The relations of degree d satisfied by the q-expansions of in the
space M of modular forms. The q-expansions are computed to
precision prec. If prec is too small, this intrinsic might
return relations that are not really satisfied by the modular forms.
To be sure of your result, prec must be at least as large
as PrecisionBound(M2), where M2 has the same
level as M and weight d times the weight of M.
We compute an equation that defines the canonical embedding
of X
0(34).
> S := CuspidalSubspace(ModularForms(Gamma0(34)));
> Relations(S, 4, 20);
[
a^3*c - a^2*b^2 - 3*a^2*c^2 + 2*a*b^3 + 3*a*b^2*c - 3*a*b*c^2 +
4*a*c^3 - b^4 + 4*b^3*c - 6*b^2*c^2 + 4*b*c^3 - 2*c^4
]
[
(0 0 1 -1 0 -3 2 3 -3 4 -1 4 -6 4 -2)
]
> // a, b, and c correspond to the cusp forms S.1, S.2 and S.3:
> S.1;
q - 2*q^4 - 2*q^5 + 4*q^7 + O(q^8)
> S.2;
q^2 - q^4 + O(q^8)
> S.3;
q^3 - 2*q^4 - q^5 + q^6 + 4*q^7 + O(q^8)
Next we compute the canonical embedding of X
0(75).
> S := CuspidalSubspace(ModularForms(Gamma0(75)));
> R := Relations(S, 2, 20); R;
[
a*c - b^2 - d^2 - 4*e^2,
a*d - b*c + b*e + d*e - 3*e^2,
a*e - b*d - c*e
]
> // NOTE: It is much faster to compute in the power
> // series ring than the ring of modular forms!
> a, b, c, d, e := Explode([PowerSeries(f,20) : f in Basis(S)]);
> a*c - b^2 - d^2 - 4*e^2;
O(q^21)
The connection between the above computations and models for modular curves
is discussed in Steven Galbraith's Oxford Ph.D. thesis.
V2.28, 13 July 2023